diff --git a/google-cloud-compute-v1/.owlbot-manifest.json b/google-cloud-compute-v1/.owlbot-manifest.json index 37e2f14e1a8d..afafe01c9d1e 100644 --- a/google-cloud-compute-v1/.owlbot-manifest.json +++ b/google-cloud-compute-v1/.owlbot-manifest.json @@ -162,6 +162,11 @@ "lib/google/cloud/compute/v1/instances/rest.rb", "lib/google/cloud/compute/v1/instances/rest/client.rb", "lib/google/cloud/compute/v1/instances/rest/service_stub.rb", + "lib/google/cloud/compute/v1/instant_snapshot_groups.rb", + "lib/google/cloud/compute/v1/instant_snapshot_groups/credentials.rb", + "lib/google/cloud/compute/v1/instant_snapshot_groups/rest.rb", + "lib/google/cloud/compute/v1/instant_snapshot_groups/rest/client.rb", + "lib/google/cloud/compute/v1/instant_snapshot_groups/rest/service_stub.rb", "lib/google/cloud/compute/v1/instant_snapshots.rb", "lib/google/cloud/compute/v1/instant_snapshots/credentials.rb", "lib/google/cloud/compute/v1/instant_snapshots/rest.rb", @@ -297,6 +302,11 @@ "lib/google/cloud/compute/v1/region_autoscalers/rest.rb", "lib/google/cloud/compute/v1/region_autoscalers/rest/client.rb", "lib/google/cloud/compute/v1/region_autoscalers/rest/service_stub.rb", + "lib/google/cloud/compute/v1/region_backend_buckets.rb", + "lib/google/cloud/compute/v1/region_backend_buckets/credentials.rb", + "lib/google/cloud/compute/v1/region_backend_buckets/rest.rb", + "lib/google/cloud/compute/v1/region_backend_buckets/rest/client.rb", + "lib/google/cloud/compute/v1/region_backend_buckets/rest/service_stub.rb", "lib/google/cloud/compute/v1/region_backend_services.rb", "lib/google/cloud/compute/v1/region_backend_services/credentials.rb", "lib/google/cloud/compute/v1/region_backend_services/rest.rb", @@ -342,6 +352,11 @@ "lib/google/cloud/compute/v1/region_health_sources/rest.rb", "lib/google/cloud/compute/v1/region_health_sources/rest/client.rb", "lib/google/cloud/compute/v1/region_health_sources/rest/service_stub.rb", + "lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests.rb", + "lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/credentials.rb", + "lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest.rb", + "lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest/client.rb", + "lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest/service_stub.rb", "lib/google/cloud/compute/v1/region_instance_group_managers.rb", "lib/google/cloud/compute/v1/region_instance_group_managers/credentials.rb", "lib/google/cloud/compute/v1/region_instance_group_managers/rest.rb", @@ -362,6 +377,11 @@ "lib/google/cloud/compute/v1/region_instances/rest.rb", "lib/google/cloud/compute/v1/region_instances/rest/client.rb", "lib/google/cloud/compute/v1/region_instances/rest/service_stub.rb", + "lib/google/cloud/compute/v1/region_instant_snapshot_groups.rb", + "lib/google/cloud/compute/v1/region_instant_snapshot_groups/credentials.rb", + "lib/google/cloud/compute/v1/region_instant_snapshot_groups/rest.rb", + "lib/google/cloud/compute/v1/region_instant_snapshot_groups/rest/client.rb", + "lib/google/cloud/compute/v1/region_instant_snapshot_groups/rest/service_stub.rb", "lib/google/cloud/compute/v1/region_instant_snapshots.rb", "lib/google/cloud/compute/v1/region_instant_snapshots/credentials.rb", "lib/google/cloud/compute/v1/region_instant_snapshots/rest.rb", @@ -393,6 +413,16 @@ "lib/google/cloud/compute/v1/region_security_policies/rest.rb", "lib/google/cloud/compute/v1/region_security_policies/rest/client.rb", "lib/google/cloud/compute/v1/region_security_policies/rest/service_stub.rb", + "lib/google/cloud/compute/v1/region_snapshot_settings.rb", + "lib/google/cloud/compute/v1/region_snapshot_settings/credentials.rb", + "lib/google/cloud/compute/v1/region_snapshot_settings/rest.rb", + "lib/google/cloud/compute/v1/region_snapshot_settings/rest/client.rb", + "lib/google/cloud/compute/v1/region_snapshot_settings/rest/service_stub.rb", + "lib/google/cloud/compute/v1/region_snapshots.rb", + "lib/google/cloud/compute/v1/region_snapshots/credentials.rb", + "lib/google/cloud/compute/v1/region_snapshots/rest.rb", + "lib/google/cloud/compute/v1/region_snapshots/rest/client.rb", + "lib/google/cloud/compute/v1/region_snapshots/rest/service_stub.rb", "lib/google/cloud/compute/v1/region_ssl_certificates.rb", "lib/google/cloud/compute/v1/region_ssl_certificates/credentials.rb", "lib/google/cloud/compute/v1/region_ssl_certificates/rest.rb", @@ -581,6 +611,11 @@ "lib/google/cloud/compute/v1/zone_operations/rest/client.rb", "lib/google/cloud/compute/v1/zone_operations/rest/nonstandard_lro.rb", "lib/google/cloud/compute/v1/zone_operations/rest/service_stub.rb", + "lib/google/cloud/compute/v1/zone_vm_extension_policies.rb", + "lib/google/cloud/compute/v1/zone_vm_extension_policies/credentials.rb", + "lib/google/cloud/compute/v1/zone_vm_extension_policies/rest.rb", + "lib/google/cloud/compute/v1/zone_vm_extension_policies/rest/client.rb", + "lib/google/cloud/compute/v1/zone_vm_extension_policies/rest/service_stub.rb", "lib/google/cloud/compute/v1/zones.rb", "lib/google/cloud/compute/v1/zones/credentials.rb", "lib/google/cloud/compute/v1/zones/rest.rb", @@ -624,6 +659,7 @@ "test/google/cloud/compute/v1/instance_settings_service_rest_test.rb", "test/google/cloud/compute/v1/instance_templates_rest_test.rb", "test/google/cloud/compute/v1/instances_rest_test.rb", + "test/google/cloud/compute/v1/instant_snapshot_groups_rest_test.rb", "test/google/cloud/compute/v1/instant_snapshots_rest_test.rb", "test/google/cloud/compute/v1/interconnect_attachment_groups_rest_test.rb", "test/google/cloud/compute/v1/interconnect_attachments_rest_test.rb", @@ -651,6 +687,7 @@ "test/google/cloud/compute/v1/public_advertised_prefixes_rest_test.rb", "test/google/cloud/compute/v1/public_delegated_prefixes_rest_test.rb", "test/google/cloud/compute/v1/region_autoscalers_rest_test.rb", + "test/google/cloud/compute/v1/region_backend_buckets_rest_test.rb", "test/google/cloud/compute/v1/region_backend_services_rest_test.rb", "test/google/cloud/compute/v1/region_commitments_rest_test.rb", "test/google/cloud/compute/v1/region_composite_health_checks_rest_test.rb", @@ -660,16 +697,20 @@ "test/google/cloud/compute/v1/region_health_check_services_rest_test.rb", "test/google/cloud/compute/v1/region_health_checks_rest_test.rb", "test/google/cloud/compute/v1/region_health_sources_rest_test.rb", + "test/google/cloud/compute/v1/region_instance_group_manager_resize_requests_rest_test.rb", "test/google/cloud/compute/v1/region_instance_group_managers_rest_test.rb", "test/google/cloud/compute/v1/region_instance_groups_rest_test.rb", "test/google/cloud/compute/v1/region_instance_templates_rest_test.rb", "test/google/cloud/compute/v1/region_instances_rest_test.rb", + "test/google/cloud/compute/v1/region_instant_snapshot_groups_rest_test.rb", "test/google/cloud/compute/v1/region_instant_snapshots_rest_test.rb", "test/google/cloud/compute/v1/region_network_endpoint_groups_rest_test.rb", "test/google/cloud/compute/v1/region_network_firewall_policies_rest_test.rb", "test/google/cloud/compute/v1/region_notification_endpoints_rest_test.rb", "test/google/cloud/compute/v1/region_operations_rest_test.rb", "test/google/cloud/compute/v1/region_security_policies_rest_test.rb", + "test/google/cloud/compute/v1/region_snapshot_settings_rest_test.rb", + "test/google/cloud/compute/v1/region_snapshots_rest_test.rb", "test/google/cloud/compute/v1/region_ssl_certificates_rest_test.rb", "test/google/cloud/compute/v1/region_ssl_policies_rest_test.rb", "test/google/cloud/compute/v1/region_target_http_proxies_rest_test.rb", @@ -707,6 +748,7 @@ "test/google/cloud/compute/v1/vpn_tunnels_rest_test.rb", "test/google/cloud/compute/v1/wire_groups_rest_test.rb", "test/google/cloud/compute/v1/zone_operations_rest_test.rb", + "test/google/cloud/compute/v1/zone_vm_extension_policies_rest_test.rb", "test/google/cloud/compute/v1/zones_rest_test.rb", "test/helper.rb" ], diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1.rb index bf86e5129dad..981d1a8deee0 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1.rb @@ -45,6 +45,7 @@ require "google/cloud/compute/v1/instance_settings_service" require "google/cloud/compute/v1/instance_templates" require "google/cloud/compute/v1/instances" +require "google/cloud/compute/v1/instant_snapshot_groups" require "google/cloud/compute/v1/instant_snapshots" require "google/cloud/compute/v1/interconnect_attachment_groups" require "google/cloud/compute/v1/interconnect_attachments" @@ -72,6 +73,7 @@ require "google/cloud/compute/v1/public_advertised_prefixes" require "google/cloud/compute/v1/public_delegated_prefixes" require "google/cloud/compute/v1/region_autoscalers" +require "google/cloud/compute/v1/region_backend_buckets" require "google/cloud/compute/v1/region_backend_services" require "google/cloud/compute/v1/region_commitments" require "google/cloud/compute/v1/region_composite_health_checks" @@ -81,16 +83,20 @@ require "google/cloud/compute/v1/region_health_check_services" require "google/cloud/compute/v1/region_health_checks" require "google/cloud/compute/v1/region_health_sources" +require "google/cloud/compute/v1/region_instance_group_manager_resize_requests" require "google/cloud/compute/v1/region_instance_group_managers" require "google/cloud/compute/v1/region_instance_groups" require "google/cloud/compute/v1/region_instance_templates" require "google/cloud/compute/v1/region_instances" +require "google/cloud/compute/v1/region_instant_snapshot_groups" require "google/cloud/compute/v1/region_instant_snapshots" require "google/cloud/compute/v1/region_network_endpoint_groups" require "google/cloud/compute/v1/region_network_firewall_policies" require "google/cloud/compute/v1/region_notification_endpoints" require "google/cloud/compute/v1/region_operations" require "google/cloud/compute/v1/region_security_policies" +require "google/cloud/compute/v1/region_snapshot_settings" +require "google/cloud/compute/v1/region_snapshots" require "google/cloud/compute/v1/region_ssl_certificates" require "google/cloud/compute/v1/region_ssl_policies" require "google/cloud/compute/v1/region_target_http_proxies" @@ -128,6 +134,7 @@ require "google/cloud/compute/v1/vpn_tunnels" require "google/cloud/compute/v1/wire_groups" require "google/cloud/compute/v1/zone_operations" +require "google/cloud/compute/v1/zone_vm_extension_policies" require "google/cloud/compute/v1/zones" require "google/cloud/compute/v1/version" diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/backend_buckets/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/backend_buckets/rest/client.rb index ced9a586d0ef..fa8b6df8a15c 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/backend_buckets/rest/client.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/backend_buckets/rest/client.rb @@ -73,6 +73,11 @@ def self.configure default_config.rpcs.add_signed_url_key.timeout = 600.0 + default_config.rpcs.aggregated_list.timeout = 600.0 + default_config.rpcs.aggregated_list.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + default_config.rpcs.delete.timeout = 600.0 default_config.rpcs.delete_signed_url_key.timeout = 600.0 @@ -94,6 +99,11 @@ def self.configure initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] } + default_config.rpcs.list_usable.timeout = 600.0 + default_config.rpcs.list_usable.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + default_config.rpcs.patch.timeout = 600.0 default_config.rpcs.set_edge_security_policy.timeout = 600.0 @@ -329,6 +339,189 @@ def add_signed_url_key request, options = nil raise ::Google::Cloud::Error.from_error(e) end + ## + # Retrieves the list of all BackendBucket resources, regional and global, + # available to the specified project. + # + # To prevent failure, it is recommended that you set the + # `returnPartialSuccess` parameter to `true`. + # + # @overload aggregated_list(request, options = nil) + # Pass arguments to `aggregated_list` via a request object, either of type + # {::Google::Cloud::Compute::V1::AggregatedListBackendBucketsRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::AggregatedListBackendBucketsRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload aggregated_list(filter: nil, include_all_scopes: nil, max_results: nil, order_by: nil, page_token: nil, project: nil, return_partial_success: nil, service_project_number: nil) + # Pass arguments to `aggregated_list` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param filter [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @param include_all_scopes [::Boolean] + # Indicates whether every visible scope for each scope type (zone, region, + # global) should be included in the response. For new resource types added + # after this field, the flag has no effect as new resource types will always + # include every visible scope for each scope type in response. For resource + # types which predate this field, if this flag is omitted or false, only + # scopes of the scope types where the resource type is expected to be found + # will be included. + # @param max_results [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @param order_by [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @param page_token [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @param project [::String] + # Name of the project scoping this request. + # @param return_partial_success [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @param service_project_number [::Integer] + # The Shared VPC service project id or service project number for which + # aggregated list request is invoked for subnetworks list-usable api. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Rest::PagedEnumerable<::String, ::Google::Cloud::Compute::V1::BackendBucketsScopedList>] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Rest::PagedEnumerable<::String, ::Google::Cloud::Compute::V1::BackendBucketsScopedList>] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::BackendBuckets::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::AggregatedListBackendBucketsRequest.new + # + # # Call the aggregated_list method. + # result = client.aggregated_list request + # + # # The returned object is of type Google::Cloud::Compute::V1::BackendBucketAggregatedList. + # p result + # + def aggregated_list request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::AggregatedListBackendBucketsRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.aggregated_list.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.aggregated_list.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.aggregated_list.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @backend_buckets_stub.aggregated_list request, options do |result, operation| + result = ::Gapic::Rest::PagedEnumerable.new @backend_buckets_stub, :aggregated_list, "items", request, result, options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + ## # Deletes the specified BackendBucket resource. # @@ -975,6 +1168,174 @@ def list request, options = nil raise ::Google::Cloud::Error.from_error(e) end + ## + # Retrieves a list of all usable backend buckets in the specified project. + # + # @overload list_usable(request, options = nil) + # Pass arguments to `list_usable` via a request object, either of type + # {::Google::Cloud::Compute::V1::ListUsableBackendBucketsRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::ListUsableBackendBucketsRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload list_usable(filter: nil, max_results: nil, order_by: nil, page_token: nil, project: nil, return_partial_success: nil) + # Pass arguments to `list_usable` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param filter [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @param max_results [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @param order_by [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @param page_token [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @param project [::String] + # Project ID for this request. + # @param return_partial_success [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::BackendBucket>] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::BackendBucket>] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::BackendBuckets::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::ListUsableBackendBucketsRequest.new + # + # # Call the list_usable method. + # result = client.list_usable request + # + # # The returned object is of type Google::Cloud::Compute::V1::BackendBucketListUsable. + # p result + # + def list_usable request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::ListUsableBackendBucketsRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.list_usable.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.list_usable.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.list_usable.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @backend_buckets_stub.list_usable request, options do |result, operation| + result = ::Gapic::Rest::PagedEnumerable.new @backend_buckets_stub, :list_usable, "items", request, result, options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + ## # Updates the specified BackendBucket resource with the data included in the # request. This method supportsPATCH @@ -1612,6 +1973,11 @@ class Rpcs # attr_reader :add_signed_url_key ## + # RPC-specific configuration for `aggregated_list` + # @return [::Gapic::Config::Method] + # + attr_reader :aggregated_list + ## # RPC-specific configuration for `delete` # @return [::Gapic::Config::Method] # @@ -1642,6 +2008,11 @@ class Rpcs # attr_reader :list ## + # RPC-specific configuration for `list_usable` + # @return [::Gapic::Config::Method] + # + attr_reader :list_usable + ## # RPC-specific configuration for `patch` # @return [::Gapic::Config::Method] # @@ -1671,6 +2042,8 @@ class Rpcs def initialize parent_rpcs = nil add_signed_url_key_config = parent_rpcs.add_signed_url_key if parent_rpcs.respond_to? :add_signed_url_key @add_signed_url_key = ::Gapic::Config::Method.new add_signed_url_key_config + aggregated_list_config = parent_rpcs.aggregated_list if parent_rpcs.respond_to? :aggregated_list + @aggregated_list = ::Gapic::Config::Method.new aggregated_list_config delete_config = parent_rpcs.delete if parent_rpcs.respond_to? :delete @delete = ::Gapic::Config::Method.new delete_config delete_signed_url_key_config = parent_rpcs.delete_signed_url_key if parent_rpcs.respond_to? :delete_signed_url_key @@ -1683,6 +2056,8 @@ def initialize parent_rpcs = nil @insert = ::Gapic::Config::Method.new insert_config list_config = parent_rpcs.list if parent_rpcs.respond_to? :list @list = ::Gapic::Config::Method.new list_config + list_usable_config = parent_rpcs.list_usable if parent_rpcs.respond_to? :list_usable + @list_usable = ::Gapic::Config::Method.new list_usable_config patch_config = parent_rpcs.patch if parent_rpcs.respond_to? :patch @patch = ::Gapic::Config::Method.new patch_config set_edge_security_policy_config = parent_rpcs.set_edge_security_policy if parent_rpcs.respond_to? :set_edge_security_policy diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/backend_buckets/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/backend_buckets/rest/service_stub.rb index 739b9efb99ac..86932a3aae56 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/backend_buckets/rest/service_stub.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/backend_buckets/rest/service_stub.rb @@ -113,6 +113,46 @@ def add_signed_url_key request_pb, options = nil end end + ## + # Baseline implementation for the aggregated_list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::AggregatedListBackendBucketsRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::BackendBucketAggregatedList] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::BackendBucketAggregatedList] + # A result object deserialized from the server's reply + def aggregated_list request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_aggregated_list_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "aggregated_list", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::BackendBucketAggregatedList.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + ## # Baseline implementation for the delete REST call # @@ -353,6 +393,46 @@ def list request_pb, options = nil end end + ## + # Baseline implementation for the list_usable REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListUsableBackendBucketsRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::BackendBucketListUsable] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::BackendBucketListUsable] + # A result object deserialized from the server's reply + def list_usable request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_list_usable_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "list_usable", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::BackendBucketListUsable.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + ## # Baseline implementation for the patch REST call # @@ -576,6 +656,27 @@ def self.transcode_add_signed_url_key_request request_pb transcoder.transcode request_pb end + ## + # @private + # + # GRPC transcoding helper method for the aggregated_list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::AggregatedListBackendBucketsRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_aggregated_list_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/aggregated/backendBuckets", + matches: [ + ["project", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + ## # @private # @@ -707,6 +808,27 @@ def self.transcode_list_request request_pb transcoder.transcode request_pb end + ## + # @private + # + # GRPC transcoding helper method for the list_usable REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListUsableBackendBucketsRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_list_usable_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/global/backendBuckets/listUsable", + matches: [ + ["project", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + ## # @private # diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/compute_pb.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/compute_pb.rb index 05b2090c66c1..952bcfdab124 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/compute_pb.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/compute_pb.rb @@ -12,7 +12,7 @@ require 'google/protobuf/any_pb' -descriptor_data = "\n%google/cloud/compute/v1/compute.proto\x12\x17google.cloud.compute.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a&google/cloud/extended_operations.proto\x1a\x19google/protobuf/any.proto\"\xda\x01\n\x0e\x41WSV4Signature\x12\x1b\n\naccess_key\x18\x84\xe2\xcc\xdf\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\raccess_key_id\x18\xb6\xe4\xd9\x8b\x01 \x01(\tH\x01\x88\x01\x01\x12\"\n\x12\x61\x63\x63\x65ss_key_version\x18\x9d\xe1\xa2& \x01(\tH\x02\x88\x01\x01\x12\x1d\n\rorigin_region\x18\xad\xfc\xc0~ \x01(\tH\x03\x88\x01\x01\x42\r\n\x0b_access_keyB\x10\n\x0e_access_key_idB\x15\n\x13_access_key_versionB\x10\n\x0e_origin_region\"\xd5\x02\n+AbandonInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x92\x01\n:instance_group_managers_abandon_instances_request_resource\x18\xf8\xf9\x83\x99\x01 \x01(\x0b\x32\x45.google.cloud.compute.v1.InstanceGroupManagersAbandonInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xec\x02\n1AbandonInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9f\x01\nAregion_instance_group_managers_abandon_instances_request_resource\x18\xa3\xd2\xf7\xe8\x01 \x01(\x0b\x32K.google.cloud.compute.v1.RegionInstanceGroupManagersAbandonInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x84\x01\n\x11\x41\x63\x63\x65leratorConfig\x12\"\n\x11\x61\x63\x63\x65lerator_count\x18\xbb\xb4\xdf\xf0\x01 \x01(\x05H\x00\x88\x01\x01\x12 \n\x10\x61\x63\x63\x65lerator_type\x18\x8e\xe1\xe8\x41 \x01(\tH\x01\x88\x01\x01\x42\x14\n\x12_accelerator_countB\x13\n\x11_accelerator_type\"\x8d\x01\n\x19\x41\x63\x63\x65leratorTopologiesInfo\x12p\n\x1a\x61\x63\x63\x65lerator_topology_infos\x18\x89\xa0\xd2h \x03(\x0b\x32I.google.cloud.compute.v1.AcceleratorTopologiesInfoAcceleratorTopologyInfo\"\xf7\x01\n0AcceleratorTopologiesInfoAcceleratorTopologyInfo\x12%\n\x14\x61\x63\x63\x65lerator_topology\x18\xc3\xb3\xd2\xb9\x01 \x01(\tH\x00\x88\x01\x01\x12\x82\x01\n\x18info_per_topology_states\x18\x9f\xf3\xd0W \x03(\x0b\x32].google.cloud.compute.v1.AcceleratorTopologiesInfoAcceleratorTopologyInfoInfoPerTopologyStateB\x17\n\x15_accelerator_topology\"\x92\x02\nDAcceleratorTopologiesInfoAcceleratorTopologyInfoInfoPerTopologyState\x12\x15\n\x05\x63ount\x18\x8f\xa2\x9d- \x01(\x05H\x00\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x01\x88\x01\x01\"\x87\x01\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x11\n\tAVAILABLE\x10\xa9\xb5\xe6\xd2\x01\x12\x10\n\x08\x44\x45GRADED\x10\xae\xa6\xa0\xbd\x01\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x12!\n\x1aTOPOLOGY_STATE_UNSPECIFIED\x10\xf9\xcc\xe6Y\x12\x11\n\tUNHEALTHY\x10\xc4\xb9\xad\xdc\x01\x42\x08\n\x06_countB\x08\n\x06_state\"\xbd\x03\n\x0f\x41\x63\x63\x65leratorType\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12*\n\x1amaximum_cards_per_instance\x18\xd2\xfa\xe5} \x01(\x05H\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x08\x88\x01\x01\x42\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x1d\n\x1b_maximum_cards_per_instanceB\x07\n\x05_nameB\x0c\n\n_self_linkB\x07\n\x05_zone\"\xce\x03\n\x1d\x41\x63\x63\x65leratorTypeAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12S\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x41.google.cloud.compute.v1.AcceleratorTypeAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.AcceleratorTypesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xaf\x02\n\x13\x41\x63\x63\x65leratorTypeList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.AcceleratorType\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xac\x01\n\x1a\x41\x63\x63\x65leratorTypesScopedList\x12G\n\x11\x61\x63\x63\x65lerator_types\x18\xa5\xc3\xaf\xf8\x01 \x03(\x0b\x32(.google.cloud.compute.v1.AcceleratorType\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x98\x01\n\x0c\x41\x63\x63\x65lerators\x12(\n\x17guest_accelerator_count\x18\x94\xd7\xb8\xe4\x01 \x01(\x05H\x00\x88\x01\x01\x12\'\n\x16guest_accelerator_type\x18\x95\xa0\xdf\x8b\x01 \x01(\tH\x01\x88\x01\x01\x42\x1a\n\x18_guest_accelerator_countB\x19\n\x17_guest_accelerator_type\"\xc6\x05\n\x0c\x41\x63\x63\x65ssConfig\x12\x1e\n\rexternal_ipv6\x18\xdb\xd3\x81\xfe\x01 \x01(\tH\x00\x88\x01\x01\x12,\n\x1b\x65xternal_ipv6_prefix_length\x18\xcf\xfb\xfc\xca\x01 \x01(\x05H\x01\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07nat_i_p\x18\xfc\xeb\x8b\x38 \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x0cnetwork_tier\x18\xd3\xba\xdb\xf6\x01 \x01(\tH\x05\x88\x01\x01\x12\'\n\x16public_ptr_domain_name\x18\xff\xd6\xfb\x96\x01 \x01(\tH\x06\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\x07\x88\x01\x01\x12\x1f\n\x0eset_public_ptr\x18\x95\xc0\xe6\xf9\x01 \x01(\x08H\x08\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\t\x88\x01\x01\"\x8f\x01\n\x0bNetworkTier\x12\x1a\n\x16UNDEFINED_NETWORK_TIER\x10\x00\x12\x16\n\x0e\x46IXED_STANDARD\x10\xc8\x9e\x85\x94\x01\x12\x0f\n\x07PREMIUM\x10\xb7\xb4\xc1\xbe\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x12)\n!STANDARD_OVERRIDES_FIXED_STANDARD\x10\xc2\x87\x91\xde\x01\"E\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x12\n\x0b\x44IRECT_IPV6\x10\x9d\xb1\x8c\x02\x12\x15\n\x0eONE_TO_ONE_NAT\x10\xdd\xba\x8c(B\x10\n\x0e_external_ipv6B\x1e\n\x1c_external_ipv6_prefix_lengthB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_nat_i_pB\x0f\n\r_network_tierB\x19\n\x17_public_ptr_domain_nameB\x12\n\x10_security_policyB\x11\n\x0f_set_public_ptrB\x07\n\x05_type\"\x99\x02\n\x1e\x41\x64\x64\x41\x63\x63\x65ssConfigInstanceRequest\x12N\n\x16\x61\x63\x63\x65ss_config_resource\x18\x90\xff\xf6\xb8\x01 \x01(\x0b\x32%.google.cloud.compute.v1.AccessConfigB\x03\xe0\x41\x02\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11network_interface\x18\xe8\xc0\x9d\xae\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xab\x02\n#AddAssociationFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12h\n$firewall_policy_association_resource\x18\xba\xb8\xe1{ \x01(\x0b\x32\x32.google.cloud.compute.v1.FirewallPolicyAssociationB\x03\xe0\x41\x02\x12,\n\x1creplace_existing_association\x18\xf8\xb0\xf5\x63 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x1f\n\x1d_replace_existing_associationB\r\n\x0b_request_id\"\xd5\x02\n*AddAssociationNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12h\n$firewall_policy_association_resource\x18\xba\xb8\xe1{ \x01(\x0b\x32\x32.google.cloud.compute.v1.FirewallPolicyAssociationB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12,\n\x1creplace_existing_association\x18\xf8\xb0\xf5\x63 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x1f\n\x1d_replace_existing_associationB\r\n\x0b_request_id\"\xb6\x02\n/AddAssociationOrganizationSecurityPolicyRequest\x12,\n\x1creplace_existing_association\x18\xf8\xb0\xf5\x63 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12h\n$security_policy_association_resource\x18\xfa\xec\xcd\x05 \x01(\x0b\x32\x32.google.cloud.compute.v1.SecurityPolicyAssociationB\x03\xe0\x41\x02\x42\x1f\n\x1d_replace_existing_associationB\r\n\x0b_request_id\"\xfc\x02\n0AddAssociationRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12h\n$firewall_policy_association_resource\x18\xba\xb8\xe1{ \x01(\x0b\x32\x32.google.cloud.compute.v1.FirewallPolicyAssociationB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12,\n\x1creplace_existing_association\x18\xf8\xb0\xf5\x63 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x1f\n\x1d_replace_existing_associationB\r\n\x0b_request_id\"\xa9\x02\n\x1f\x41\x64\x64HealthCheckTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x12z\n.target_pools_add_health_check_request_resource\x18\xa4\xba\xc5\x80\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.TargetPoolsAddHealthCheckRequestB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x9f\x02\n\x1c\x41\x64\x64InstanceTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x12s\n*target_pools_add_instance_request_resource\x18\xf4\xd3\xbb\xcc\x01 \x01(\x0b\x32\x36.google.cloud.compute.v1.TargetPoolsAddInstanceRequestB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xaa\x02\n AddInstancesInstanceGroupRequest\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12{\n.instance_groups_add_instances_request_resource\x18\xde\xba\xac\xd8\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InstanceGroupsAddInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x81\x02\n\"AddNetworkInterfaceInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12V\n\x1anetwork_interface_resource\x18\x85\x94\xae\x9b\x01 \x01(\x0b\x32).google.cloud.compute.v1.NetworkInterfaceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x8e\x02\n\x18\x41\x64\x64NodesNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12j\n&node_groups_add_nodes_request_resource\x18\xb8\xd6\xcb> \x01(\x0b\x32\x32.google.cloud.compute.v1.NodeGroupsAddNodesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xdf\x02\n2AddPacketMirroringRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x1d\n\x0cmax_priority\x18\x9f\xac\x97\x9d\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1c\n\x0cmin_priority\x18\xf1\x81\xb4\x7f \x01(\x05H\x01\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x02\x88\x01\x01\x42\x0f\n\r_max_priorityB\x0f\n\r_min_priorityB\r\n\x0b_request_id\"\xed\x01\n\x18\x41\x64\x64PeeringNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12j\n%networks_add_peering_request_resource\x18\xb5\x8d\xb3\xb9\x01 \x01(\x0b\x32\x32.google.cloud.compute.v1.NetworksAddPeeringRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9a\x02\n\x1e\x41\x64\x64ResourcePoliciesDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12w\n,disks_add_resource_policies_request_resource\x18\xa3\xf8\xde\xec\x01 \x01(\x0b\x32\x38.google.cloud.compute.v1.DisksAddResourcePoliciesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xaa\x02\n\"AddResourcePoliciesInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x7f\n0instances_add_resource_policies_request_resource\x18\x9b\xd6\xab\xe9\x01 \x01(\x0b\x32<.google.cloud.compute.v1.InstancesAddResourcePoliciesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xb2\x02\n$AddResourcePoliciesRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x84\x01\n3region_disks_add_resource_policies_request_resource\x18\x8e\xff\xc1\x87\x01 \x01(\x0b\x32>.google.cloud.compute.v1.RegionDisksAddResourcePoliciesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc7\x01\n\x1c\x41\x64\x64RuleFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd0\x02\n#AddRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x1d\n\x0cmax_priority\x18\x9f\xac\x97\x9d\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1c\n\x0cmin_priority\x18\xf1\x81\xb4\x7f \x01(\x05H\x01\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x02\x88\x01\x01\x42\x0f\n\r_max_priorityB\x0f\n\r_min_priorityB\r\n\x0b_request_id\"\xd3\x01\n(AddRuleOrganizationSecurityPolicyRequest\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dsecurity_policy_rule_resource\x18\xc3\xba\x82\xc0\x01 \x01(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRuleB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf7\x02\n)AddRuleRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x1d\n\x0cmax_priority\x18\x9f\xac\x97\x9d\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1c\n\x0cmin_priority\x18\xf1\x81\xb4\x7f \x01(\x05H\x01\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x02\x88\x01\x01\x42\x0f\n\r_max_priorityB\x0f\n\r_min_priorityB\r\n\x0b_request_id\"\x97\x02\n\"AddRuleRegionSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dsecurity_policy_rule_resource\x18\xc3\xba\x82\xc0\x01 \x01(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRuleB\x03\xe0\x41\x02\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x00\x88\x01\x01\x42\x10\n\x0e_validate_only\"\xf0\x01\n\x1c\x41\x64\x64RuleSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dsecurity_policy_rule_resource\x18\xc3\xba\x82\xc0\x01 \x01(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRuleB\x03\xe0\x41\x02\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x00\x88\x01\x01\x42\x10\n\x0e_validate_only\"\xe4\x01\n#AddSignedUrlKeyBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12O\n\x17signed_url_key_resource\x18\x81\xa3\x9b\xda\x01 \x01(\x0b\x32%.google.cloud.compute.v1.SignedUrlKeyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe7\x01\n$AddSignedUrlKeyBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12O\n\x17signed_url_key_resource\x18\x81\xa3\x9b\xda\x01 \x01(\x0b\x32%.google.cloud.compute.v1.SignedUrlKeyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x97\r\n\x07\x41\x64\x64ress\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0c\x61\x64\x64ress_type\x18\xa5\x89\x84~ \x01(\tH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x1d\n\rip_collection\x18\xb6\x91\xa8T \x01(\tH\x05\x88\x01\x01\x12\x1b\n\nip_version\x18\xc0\xf3\xd2\x8c\x01 \x01(\tH\x06\x88\x01\x01\x12\"\n\x12ipv6_endpoint_type\x18\xcc\xfe\xbe. \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\t\x88\x01\x01\x12@\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32,.google.cloud.compute.v1.Address.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\n\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x0b\x88\x01\x01\x12\x1d\n\x0cnetwork_tier\x18\xd3\xba\xdb\xf6\x01 \x01(\tH\x0c\x88\x01\x01\x12\x1e\n\rprefix_length\x18\xb3\xba\xa3\xd8\x01 \x01(\x05H\r\x88\x01\x01\x12\x18\n\x07purpose\x18\x9e\xfa\xef\x96\x01 \x01(\tH\x0e\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0f\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x10\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x11\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\x12\x88\x01\x01\x12\x10\n\x05users\x18\x88\x9c\x9a\x35 \x03(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"e\n\x0b\x41\x64\x64ressType\x12\x1a\n\x16UNDEFINED_ADDRESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\x12\x17\n\x10UNSPECIFIED_TYPE\x10\xe2\xee\xdb\x19\"[\n\tIpVersion\x12\x18\n\x14UNDEFINED_IP_VERSION\x10\x00\x12\x0b\n\x04IPV4\x10\x85\xcc\x89\x01\x12\x0b\n\x04IPV6\x10\x87\xcc\x89\x01\x12\x1a\n\x13UNSPECIFIED_VERSION\x10\x90\xcf\xb5\n\"K\n\x10Ipv6EndpointType\x12 \n\x1cUNDEFINED_IPV6_ENDPOINT_TYPE\x10\x00\x12\x0c\n\x05NETLB\x10\xb3\x97\xaf#\x12\x07\n\x02VM\x10\xb7\x15\"\x8f\x01\n\x0bNetworkTier\x12\x1a\n\x16UNDEFINED_NETWORK_TIER\x10\x00\x12\x16\n\x0e\x46IXED_STANDARD\x10\xc8\x9e\x85\x94\x01\x12\x0f\n\x07PREMIUM\x10\xb7\xb4\xc1\xbe\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x12)\n!STANDARD_OVERRIDES_FIXED_STANDARD\x10\xc2\x87\x91\xde\x01\"\xe2\x01\n\x07Purpose\x12\x15\n\x11UNDEFINED_PURPOSE\x10\x00\x12\x14\n\x0c\x44NS_RESOLVER\x10\xfc\xdc\x83\xe3\x01\x12\x13\n\x0cGCE_ENDPOINT\x10\xab\xc4\xf5m\x12\x1a\n\x12IPSEC_INTERCONNECT\x10\x83\xd2\xaa\xa2\x01\x12\x0f\n\x08NAT_AUTO\x10\xad\xb4\x85N\x12\x1e\n\x17PRIVATE_SERVICE_CONNECT\x10\xc4\xf4\xf9\x16\x12\x12\n\nSERVERLESS\x10\xdc\xc6\xfd\x80\x01\x12\x1f\n\x17SHARED_LOADBALANCER_VIP\x10\xd4\xd3\xb3\x8c\x01\x12\x13\n\x0bVPC_PEERING\x10\xaa\xf3\x8e\xbf\x01\"R\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\r\n\x06IN_USE\x10\xcd\xce\xa5\x08\x12\x10\n\x08RESERVED\x10\xa8\xf6\x8d\xce\x01\x12\x11\n\tRESERVING\x10\xd9\xf4\xaf\xf5\x01\x42\n\n\x08_addressB\x0f\n\r_address_typeB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x10\n\x0e_ip_collectionB\r\n\x0b_ip_versionB\x15\n\x13_ipv6_endpoint_typeB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\n\n\x08_networkB\x0f\n\r_network_tierB\x10\n\x0e_prefix_lengthB\n\n\x08_purposeB\t\n\x07_regionB\x0c\n\n_self_linkB\t\n\x07_statusB\r\n\x0b_subnetwork\"\xb7\x03\n\x15\x41\x64\x64ressAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12K\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x39.google.cloud.compute.v1.AddressAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aZ\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12;\n\x05value\x18\x02 \x01(\x0b\x32,.google.cloud.compute.v1.AddressesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x9f\x02\n\x0b\x41\x64\x64ressList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x32\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32 .google.cloud.compute.v1.Address\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x95\x01\n\x13\x41\x64\x64ressesScopedList\x12\x37\n\taddresses\x18\xa2\xf7\x81\xa1\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Address\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xcd\x04\n\x17\x41\x64vancedMachineFeatures\x12,\n\x1c\x65nable_nested_virtualization\x18\x85\xcb\xf7\x07 \x01(\x08H\x00\x88\x01\x01\x12\'\n\x16\x65nable_uefi_networking\x18\xa4\xb1\xbf\x9f\x01 \x01(\x08H\x01\x88\x01\x01\x12,\n\x1bperformance_monitoring_unit\x18\x8c\xc2\xb9\xfe\x01 \x01(\tH\x02\x88\x01\x01\x12!\n\x10threads_per_core\x18\xd7\xda\x91\xa8\x01 \x01(\x05H\x03\x88\x01\x01\x12\x1b\n\nturbo_mode\x18\xa4\x8e\xba\xce\x01 \x01(\tH\x04\x88\x01\x01\x12\"\n\x12visible_core_count\x18\xdc\xf4\x8f\\ \x01(\x05H\x05\x88\x01\x01\"\xb1\x01\n\x19PerformanceMonitoringUnit\x12)\n%UNDEFINED_PERFORMANCE_MONITORING_UNIT\x10\x00\x12\x14\n\rARCHITECTURAL\x10\xdd\xb1\xfbI\x12\x10\n\x08\x45NHANCED\x10\xf6\x86\xb2\xe3\x01\x12/\n\'PERFORMANCE_MONITORING_UNIT_UNSPECIFIED\x10\xc4\xf8\xd4\xcc\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x42\x1f\n\x1d_enable_nested_virtualizationB\x19\n\x17_enable_uefi_networkingB\x1e\n\x1c_performance_monitoring_unitB\x13\n\x11_threads_per_coreB\r\n\x0b_turbo_modeB\x15\n\x13_visible_core_count\"\xa7\x03\n%AggregatedListAcceleratorTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa0\x03\n\x1e\x41ggregatedListAddressesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa2\x03\n AggregatedListAutoscalersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa6\x03\n$AggregatedListBackendServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa0\x03\n\x1e\x41ggregatedListDiskTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\x9c\x03\n\x1a\x41ggregatedListDisksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa6\x03\n$AggregatedListForwardingRulesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa9\x03\n\'AggregatedListFutureReservationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListGlobalOperationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa3\x03\n!AggregatedListHealthChecksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xac\x03\n*AggregatedListInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa5\x03\n#AggregatedListInstanceGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa8\x03\n&AggregatedListInstanceTemplatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa0\x03\n\x1e\x41ggregatedListInstancesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListInstantSnapshotsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xae\x03\n,AggregatedListInterconnectAttachmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa3\x03\n!AggregatedListMachineTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa9\x03\n\'AggregatedListNetworkAttachmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xb2\x03\n0AggregatedListNetworkEdgeSecurityServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xac\x03\n*AggregatedListNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xae\x03\n,AggregatedListNetworkFirewallPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa1\x03\n\x1f\x41ggregatedListNodeGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa4\x03\n\"AggregatedListNodeTemplatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa0\x03\n\x1e\x41ggregatedListNodeTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListPacketMirroringsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xae\x03\n,AggregatedListPublicDelegatedPrefixesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa8\x03\n&AggregatedListRegionCommitmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xb2\x03\n0AggregatedListRegionCompositeHealthChecksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xb6\x03\n4AggregatedListRegionHealthAggregationPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xb0\x03\n.AggregatedListRegionHealthCheckServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xaa\x03\n(AggregatedListRegionHealthSourcesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xb2\x03\n0AggregatedListRegionNotificationEndpointsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa3\x03\n!AggregatedListReservationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListResourcePoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\x9e\x03\n\x1c\x41ggregatedListRoutersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListSecurityPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa9\x03\n\'AggregatedListServiceAttachmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa6\x03\n$AggregatedListSslCertificatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa2\x03\n AggregatedListSslPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListStoragePoolTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa3\x03\n!AggregatedListStoragePoolsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\x8b\x04\n AggregatedListSubnetworksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x12\x15\n\x05views\x18\xee\xb4\xc0\x35 \x01(\tH\x07\x88\x01\x01\"F\n\x05Views\x12\x13\n\x0fUNDEFINED_VIEWS\x10\x00\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\x12\x18\n\x10WITH_UTILIZATION\x10\x89\xa0\xaf\xf0\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_numberB\x08\n\x06_views\"\xa8\x03\n&AggregatedListTargetHttpProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa9\x03\n\'AggregatedListTargetHttpsProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa6\x03\n$AggregatedListTargetInstancesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa2\x03\n AggregatedListTargetPoolsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListTargetTcpProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa8\x03\n&AggregatedListTargetVpnGatewaysRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\x9e\x03\n\x1c\x41ggregatedListUrlMapsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa2\x03\n AggregatedListVpnGatewaysRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa1\x03\n\x1f\x41ggregatedListVpnTunnelsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\x81\x01\n\x0c\x41liasIpRange\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x00\x88\x01\x01\x12&\n\x15subnetwork_range_name\x18\xbe\xb2\x81\xb9\x01 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_ip_cidr_rangeB\x18\n\x16_subnetwork_range_name\"\xbf\x06\n\x1e\x41llocationAggregateReservation\x12i\n\x10in_use_resources\x18\xd3\xf7\x83\xc3\x01 \x03(\x0b\x32K.google.cloud.compute.v1.AllocationAggregateReservationReservedResourceInfo\x12j\n\x12reserved_resources\x18\xce\xe3\xd5\x65 \x03(\x0b\x32K.google.cloud.compute.v1.AllocationAggregateReservationReservedResourceInfo\x12\x19\n\tvm_family\x18\xec\xbb\xce; \x01(\tH\x00\x88\x01\x01\x12\x1e\n\rworkload_type\x18\x82\xfe\xb0\x82\x01 \x01(\tH\x01\x88\x01\x01\"\x8a\x03\n\x08VmFamily\x12\x17\n\x13UNDEFINED_VM_FAMILY\x10\x00\x12%\n\x1eVM_FAMILY_CLOUD_TPU_DEVICE_CT3\x10\xfc\x8d\xb7\x14\x12+\n$VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L\x10\xe3\x82\xc1\x33\x12/\n(VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP\x10\xf3\xd6\xf5\x08\x12/\n\'VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT6E\x10\x95\xc9\x9c\xbe\x01\x12*\n\"VM_FAMILY_CLOUD_TPU_POD_SLICE_CT3P\x10\xb8\xd1\xda\xf6\x01\x12*\n\"VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P\x10\xd7\xd1\xda\xf6\x01\x12*\n\"VM_FAMILY_CLOUD_TPU_POD_SLICE_CT5P\x10\xf6\xd1\xda\xf6\x01\x12+\n#VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X\x10\xd0\xd2\xb2\xe7\x01\"^\n\x0cWorkloadType\x12\x1b\n\x17UNDEFINED_WORKLOAD_TYPE\x10\x00\x12\x0c\n\x05\x42\x41TCH\x10\x9a\xbe\x83\x1e\x12\x0e\n\x07SERVING\x10\xec\xa7\xbd\x08\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x0c\n\n_vm_familyB\x10\n\x0e_workload_type\"\xba\x01\n2AllocationAggregateReservationReservedResourceInfo\x12t\n\x0b\x61\x63\x63\x65lerator\x18\xeb\xc4\xab\xca\x01 \x01(\x0b\x32V.google.cloud.compute.v1.AllocationAggregateReservationReservedResourceInfoAcceleratorH\x00\x88\x01\x01\x42\x0e\n\x0c_accelerator\"\xb0\x01\n=AllocationAggregateReservationReservedResourceInfoAccelerator\x12\"\n\x11\x61\x63\x63\x65lerator_count\x18\xbb\xb4\xdf\xf0\x01 \x01(\x05H\x00\x88\x01\x01\x12 \n\x10\x61\x63\x63\x65lerator_type\x18\x8e\xe1\xe8\x41 \x01(\tH\x01\x88\x01\x01\x42\x14\n\x12_accelerator_countB\x13\n\x11_accelerator_type\"\xe8\x01\n\"AllocationReservationSharingPolicy\x12#\n\x12service_share_type\x18\xe4\x8e\xab\xf5\x01 \x01(\tH\x00\x88\x01\x01\"\x85\x01\n\x10ServiceShareType\x12 \n\x1cUNDEFINED_SERVICE_SHARE_TYPE\x10\x00\x12\x11\n\tALLOW_ALL\x10\xeb\xb6\xe0\xe2\x01\x12\x14\n\x0c\x44ISALLOW_ALL\x10\xbd\xdd\xba\x84\x01\x12&\n\x1eSERVICE_SHARE_TYPE_UNSPECIFIED\x10\xfc\xa5\x88\x85\x01\x42\x15\n\x13_service_share_type\"\xcb\x03\n\x18\x41llocationResourceStatus\x12X\n\x0bhealth_info\x18\xb1\xe9\x98p \x01(\x0b\x32;.google.cloud.compute.v1.AllocationResourceStatusHealthInfoH\x00\x88\x01\x01\x12\'\n\x17reservation_block_count\x18\xea\xd5\x95M \x01(\x05H\x01\x88\x01\x01\x12W\n\x17reservation_maintenance\x18\xa0\x86\xb5\xa2\x01 \x01(\x0b\x32-.google.cloud.compute.v1.GroupMaintenanceInfoH\x02\x88\x01\x01\x12o\n\x17specific_sku_allocation\x18\xef\xff\xc8] \x01(\x0b\x32\x46.google.cloud.compute.v1.AllocationResourceStatusSpecificSKUAllocationH\x03\x88\x01\x01\x42\x0e\n\x0c_health_infoB\x1a\n\x18_reservation_block_countB\x1a\n\x18_reservation_maintenanceB\x1a\n\x18_specific_sku_allocation\"\xc6\x02\n\"AllocationResourceStatusHealthInfo\x12%\n\x14\x64\x65graded_block_count\x18\xcc\x8e\x91\xf5\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1e\n\rhealth_status\x18\xb5\xd6\xba\xb5\x01 \x01(\tH\x01\x88\x01\x01\x12#\n\x13healthy_block_count\x18\xbb\xfe\xd0j \x01(\x05H\x02\x88\x01\x01\"q\n\x0cHealthStatus\x12\x1b\n\x17UNDEFINED_HEALTH_STATUS\x10\x00\x12\x10\n\x08\x44\x45GRADED\x10\xae\xa6\xa0\xbd\x01\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12!\n\x19HEALTH_STATUS_UNSPECIFIED\x10\x8d\x82\xfa\xe5\x01\x42\x17\n\x15_degraded_block_countB\x10\n\x0e_health_statusB\x16\n\x14_healthy_block_count\"\xa5\x02\n-AllocationResourceStatusSpecificSKUAllocation\x12+\n\x1bsource_instance_template_id\x18\xfa\xef\x82\x35 \x01(\tH\x00\x88\x01\x01\x12r\n\x0cutilizations\x18\x91\xad\xf6\xbf\x01 \x03(\x0b\x32X.google.cloud.compute.v1.AllocationResourceStatusSpecificSKUAllocation.UtilizationsEntry\x1a\x33\n\x11UtilizationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x03:\x02\x38\x01\x42\x1e\n\x1c_source_instance_template_id\"\xe2\x01\nFAllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x00\x88\x01\x01\x12\x1a\n\tinterface\x18\xb9\xda\xd5\xef\x01 \x01(\tH\x01\x88\x01\x01\">\n\tInterface\x12\x17\n\x13UNDEFINED_INTERFACE\x10\x00\x12\x0b\n\x04NVME\x10\xe0\x82\x93\x01\x12\x0b\n\x04SCSI\x10\xa6\x81\x9b\x01\x42\x0f\n\r_disk_size_gbB\x0c\n\n_interface\"\x97\x03\n9AllocationSpecificSKUAllocationReservedInstanceProperties\x12J\n\x12guest_accelerators\x18\xef\xcc\x87\xdd\x01 \x03(\x0b\x32*.google.cloud.compute.v1.AcceleratorConfig\x12v\n\nlocal_ssds\x18\xc3\x8e\xd3m \x03(\x0b\x32_.google.cloud.compute.v1.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk\x12\x1e\n\rlocation_hint\x18\xd1\x81\x92\xa7\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x01\x88\x01\x01\x12 \n\x10min_cpu_platform\x18\xf7\x9b\xeas \x01(\tH\x02\x88\x01\x01\x42\x10\n\x0e_location_hintB\x0f\n\r_machine_typeB\x13\n\x11_min_cpu_platform\"\xfe\x02\n AllocationSpecificSKUReservation\x12\x1e\n\rassured_count\x18\xcd\xf8\x8a\x86\x01 \x01(\x03H\x00\x88\x01\x01\x12\x15\n\x05\x63ount\x18\x8f\xa2\x9d- \x01(\x03H\x01\x88\x01\x01\x12\x1d\n\x0cin_use_count\x18\xbd\xab\xa6\xeb\x01 \x01(\x03H\x02\x88\x01\x01\x12w\n\x13instance_properties\x18\x9d\x9e\xd8\x66 \x01(\x0b\x32R.google.cloud.compute.v1.AllocationSpecificSKUAllocationReservedInstancePropertiesH\x03\x88\x01\x01\x12)\n\x18source_instance_template\x18\xc0\xc3\xc1\x9e\x01 \x01(\tH\x04\x88\x01\x01\x42\x10\n\x0e_assured_countB\x08\n\x06_countB\x0f\n\r_in_use_countB\x16\n\x14_instance_propertiesB\x1b\n\x19_source_instance_template\"K\n\x07\x41llowed\x12\x1d\n\x0cI_p_protocol\x18\xbd\xf6\xde\xe8\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x05ports\x18\x92\xf0\xf9\x32 \x03(\tB\x0f\n\r_I_p_protocol\"\xa0\x01\n&AnnouncePublicAdvertisedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12(\n\x18public_advertised_prefix\x18\x9e\xf7\xc9\x30 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbf\x01\n%AnnouncePublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa8\x02\n2ApplyUpdatesToInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x89\x01\n6instance_group_managers_apply_updates_request_resource\x18\xd3\xf6\xce{ \x01(\x0b\x32\x41.google.cloud.compute.v1.InstanceGroupManagersApplyUpdatesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zone\"\xbf\x02\n8ApplyUpdatesToInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x96\x01\n=region_instance_group_managers_apply_updates_request_resource\x18\xfe\xe9\xad$ \x01(\x0b\x32G.google.cloud.compute.v1.RegionInstanceGroupManagersApplyUpdatesRequestB\x03\xe0\x41\x02\"\x9e\x02\n\x19\x41ttachDiskInstanceRequest\x12M\n\x16\x61ttached_disk_resource\x18\x95\x92\x9a+ \x01(\x0b\x32%.google.cloud.compute.v1.AttachedDiskB\x03\xe0\x41\x02\x12\x1c\n\x0c\x66orce_attach\x18\x99\xa4\x89\x44 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x0f\n\r_force_attachB\r\n\x0b_request_id\"\xcf\x02\n7AttachNetworkEndpointsGlobalNetworkEndpointGroupRequest\x12\x9c\x01\n@global_network_endpoint_groups_attach_endpoints_request_resource\x18\xeb\xa1\xd1\x0e \x01(\x0b\x32J.google.cloud.compute.v1.GlobalNetworkEndpointGroupsAttachEndpointsRequestB\x03\xe0\x41\x02\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd8\x02\n1AttachNetworkEndpointsNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x8e\x01\n9network_endpoint_groups_attach_endpoints_request_resource\x18\x87\xb5 \x01(\x0b\x32\x44.google.cloud.compute.v1.NetworkEndpointGroupsAttachEndpointsRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf1\x02\n7AttachNetworkEndpointsRegionNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9d\x01\n@region_network_endpoint_groups_attach_endpoints_request_resource\x18\xfc\xf9\xdd\x9f\x01 \x01(\x0b\x32J.google.cloud.compute.v1.RegionNetworkEndpointGroupsAttachEndpointsRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xdc\n\n\x0c\x41ttachedDisk\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\x08H\x01\x88\x01\x01\x12\x14\n\x04\x62oot\x18\xf2\xf5\xb8\x01 \x01(\x08H\x02\x88\x01\x01\x12\x1b\n\x0b\x64\x65vice_name\x18\xd4\xb5\x9a \x01(\tH\x03\x88\x01\x01\x12T\n\x13\x64isk_encryption_key\x18\x85\xed\xc4\x81\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x04\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x05\x88\x01\x01\x12\x1c\n\x0c\x66orce_attach\x18\x99\xa4\x89\x44 \x01(\x08H\x06\x88\x01\x01\x12\x45\n\x11guest_os_features\x18\xd1\xe0\xe7% \x03(\x0b\x32\'.google.cloud.compute.v1.GuestOsFeature\x12\x15\n\x05index\x18\xd2\xd1\xec/ \x01(\x05H\x07\x88\x01\x01\x12X\n\x11initialize_params\x18\x95\x92\xb8\x08 \x01(\x0b\x32\x35.google.cloud.compute.v1.AttachedDiskInitializeParamsH\x08\x88\x01\x01\x12\x1a\n\tinterface\x18\xb9\xda\xd5\xef\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\n\x88\x01\x01\x12\x14\n\x08licenses\x18\xd2\x88\x80\xa1\x01 \x03(\t\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x0b\x88\x01\x01\x12\x1c\n\x0bsaved_state\x18\xd9\xa9\xa1\xc4\x01 \x01(\tH\x0c\x88\x01\x01\x12\\\n\x1fshielded_instance_initial_state\x18\x83\xc4\xdc[ \x01(\x0b\x32+.google.cloud.compute.v1.InitialStateConfigH\r\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\x0e\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x0f\x88\x01\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\">\n\tInterface\x12\x17\n\x13UNDEFINED_INTERFACE\x10\x00\x12\x0b\n\x04NVME\x10\xe0\x82\x93\x01\x12\x0b\n\x04SCSI\x10\xa6\x81\x9b\x01\"?\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\x10\n\tREAD_ONLY\x10\xb5\x99\xec+\x12\x11\n\nREAD_WRITE\x10\xd6\x97\xe4R\"_\n\nSavedState\x12\x19\n\x15UNDEFINED_SAVED_STATE\x10\x00\x12$\n\x1c\x44ISK_SAVED_STATE_UNSPECIFIED\x10\xcf\xbf\xca\xba\x01\x12\x10\n\tPRESERVED\x10\xf8\xd6\x98y\"?\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x12\n\nPERSISTENT\x10\x97\xf5\xd5\xdb\x01\x12\x0f\n\x07SCRATCH\x10\xda\xfd\xf0\xec\x01\x42\x0f\n\r_architectureB\x0e\n\x0c_auto_deleteB\x07\n\x05_bootB\x0e\n\x0c_device_nameB\x16\n\x14_disk_encryption_keyB\x0f\n\r_disk_size_gbB\x0f\n\r_force_attachB\x08\n\x06_indexB\x14\n\x12_initialize_paramsB\x0c\n\n_interfaceB\x07\n\x05_kindB\x07\n\x05_modeB\x0e\n\x0c_saved_stateB\"\n _shielded_instance_initial_stateB\t\n\x07_sourceB\x07\n\x05_type\"\x8f\x0c\n\x1c\x41ttachedDiskInitializeParams\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x19\n\tdisk_name\x18\xed\xbf\xa0, \x01(\tH\x02\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x03\x88\x01\x01\x12\x19\n\tdisk_type\x18\x9c\xe9\xac, \x01(\tH\x04\x88\x01\x01\x12+\n\x1b\x65nable_confidential_compute\x18\xbc\xeb\xd9\x30 \x01(\x08H\x05\x88\x01\x01\x12U\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x41.google.cloud.compute.v1.AttachedDiskInitializeParams.LabelsEntry\x12\x14\n\x08licenses\x18\xd2\x88\x80\xa1\x01 \x03(\t\x12 \n\x10on_update_action\x18\x8c\xd8\xc4` \x01(\tH\x06\x88\x01\x01\x12 \n\x10provisioned_iops\x18\xd4\xbd\x87Y \x01(\x03H\x07\x88\x01\x01\x12\'\n\x16provisioned_throughput\x18\x95\xbe\x88\xfb\x01 \x01(\x03H\x08\x88\x01\x01\x12\x18\n\rreplica_zones\x18\x80\xb8\x8c\x17 \x03(\t\x12q\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32N.google.cloud.compute.v1.AttachedDiskInitializeParams.ResourceManagerTagsEntry\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\x12\x1c\n\x0csource_image\x18\xb7\xe8\x86\x18 \x01(\tH\t\x88\x01\x01\x12\\\n\x1bsource_image_encryption_key\x18\xab\x91\xf5\xb5\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\n\x88\x01\x01\x12\x1f\n\x0fsource_snapshot\x18\xe8\x9a\x8e< \x01(\tH\x0b\x88\x01\x01\x12_\n\x1esource_snapshot_encryption_key\x18\xda\x8e\xe7\x90\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x0c\x88\x01\x01\x12\x1d\n\x0cstorage_pool\x18\xe0\xc6\xf1\xab\x01 \x01(\tH\r\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\"\x8a\x01\n\x0eOnUpdateAction\x12\x1e\n\x1aUNDEFINED_ON_UPDATE_ACTION\x10\x00\x12\x15\n\rRECREATE_DISK\x10\xed\x9d\xf6\xeb\x01\x12\'\n\x1fRECREATE_DISK_IF_SOURCE_CHANGED\x10\x80\x8a\xea\xbd\x01\x12\x18\n\x11USE_EXISTING_DISK\x10\xf9\xe5\xf9nB\x0f\n\r_architectureB\x0e\n\x0c_descriptionB\x0c\n\n_disk_nameB\x0f\n\r_disk_size_gbB\x0c\n\n_disk_typeB\x1e\n\x1c_enable_confidential_computeB\x13\n\x11_on_update_actionB\x13\n\x11_provisioned_iopsB\x19\n\x17_provisioned_throughputB\x0f\n\r_source_imageB\x1e\n\x1c_source_image_encryption_keyB\x12\n\x10_source_snapshotB!\n\x1f_source_snapshot_encryption_keyB\x0f\n\r_storage_pool\"\x98\x01\n\x0b\x41uditConfig\x12\x46\n\x11\x61udit_log_configs\x18\x92\xea\xf2\xe8\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.AuditLogConfig\x12\x1b\n\x10\x65xempted_members\x18\x98\xdd\xf5n \x03(\t\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_service\"\x94\x02\n\x0e\x41uditLogConfig\x12\x1b\n\x10\x65xempted_members\x18\x98\xdd\xf5n \x03(\t\x12\'\n\x17ignore_child_exemptions\x18\x9a\x8f\xb9! \x01(\x08H\x00\x88\x01\x01\x12\x19\n\x08log_type\x18\xd5\x9e\x9c\xc0\x01 \x01(\tH\x01\x88\x01\x01\"x\n\x07LogType\x12\x16\n\x12UNDEFINED_LOG_TYPE\x10\x00\x12\x11\n\nADMIN_READ\x10\xa6\xc9\xbe=\x12\x11\n\tDATA_READ\x10\x8b\xba\xc5\x91\x01\x12\x12\n\nDATA_WRITE\x10\xea\x85\x9b\xa2\x01\x12\x1b\n\x14LOG_TYPE_UNSPECIFIED\x10\xcd\xca\xd7IB\x1a\n\x18_ignore_child_exemptionsB\x0b\n\t_log_type\"\x9d\x07\n\nAutoscaler\x12N\n\x12\x61utoscaling_policy\x18\xd9\xe0\xeai \x01(\x0b\x32*.google.cloud.compute.v1.AutoscalingPolicyH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12 \n\x10recommended_size\x18\xe5\xf6\xfdz \x01(\x05H\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x63\n\x17scaling_schedule_status\x18\xe2\xab\x97\xde\x01 \x03(\x0b\x32>.google.cloud.compute.v1.Autoscaler.ScalingScheduleStatusEntry\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\t\x88\x01\x01\x12L\n\x0estatus_details\x18\xf5\xad\xa1\xad\x01 \x03(\x0b\x32\x30.google.cloud.compute.v1.AutoscalerStatusDetails\x12\x16\n\x06target\x18\x91\xe3\xf9[ \x01(\tH\n\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0b\x88\x01\x01\x1al\n\x1aScalingScheduleStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.ScalingScheduleStatus:\x02\x38\x01\"^\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0c\n\x05\x45RROR\x10\xe8\xb3\xcb\x1f\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x42\x15\n\x13_autoscaling_policyB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x13\n\x11_recommended_sizeB\t\n\x07_regionB\x0c\n\n_self_linkB\t\n\x07_statusB\t\n\x07_targetB\x07\n\x05_zone\"\xbf\x03\n\x18\x41utoscalerAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12N\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32<.google.cloud.compute.v1.AutoscalerAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\\\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.AutoscalersScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa5\x02\n\x0e\x41utoscalerList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x35\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32#.google.cloud.compute.v1.Autoscaler\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xcb\x06\n\x17\x41utoscalerStatusDetails\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x01\x88\x01\x01\"\xea\x05\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x1f\n\x17\x41LL_INSTANCES_UNHEALTHY\x10\xe5\x90\x8d\xc1\x01\x12%\n\x1e\x42\x41\x43KEND_SERVICE_DOES_NOT_EXIST\x10\x9a\x9a\xa3[\x12 \n\x1a\x43\x41PPED_AT_MAX_NUM_REPLICAS\x10\xd9\xd3\x1f\x12,\n$CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE\x10\xb3\xb4\xee\x9c\x01\x12\x1c\n\x15\x43USTOM_METRIC_INVALID\x10\xd6\xb9\xbd\x61\x12\x15\n\x0eMIN_EQUALS_MAX\x10\xf1\x99\xac\x01\x12(\n!MISSING_CUSTOM_METRIC_DATA_POINTS\x10\xde\xa9\x9f-\x12*\n\"MISSING_LOAD_BALANCING_DATA_POINTS\x10\xd2\xa8\x8f\xf3\x01\x12\x0f\n\x08MODE_OFF\x10\xb3\x91\xa4N\x12\x1a\n\x13MODE_ONLY_SCALE_OUT\x10\xe2\xb7\xea\x01\x12\x13\n\x0cMODE_ONLY_UP\x10\xf2\xda\x92\x30\x12$\n\x1dMORE_THAN_ONE_BACKEND_SERVICE\x10\xdd\xcb\xb8H\x12\"\n\x1aNOT_ENOUGH_QUOTA_AVAILABLE\x10\xbf\xaf\x9b\xc0\x01\x12 \n\x18REGION_RESOURCE_STOCKOUT\x10\xfe\xc9\x88\xfc\x01\x12$\n\x1dSCALING_TARGET_DOES_NOT_EXIST\x10\x9b\x93\xbd:\x12\x36\n/SCHEDULED_INSTANCES_GREATER_THAN_AUTOSCALER_MAX\x10\xc2\xeb\xfa\r\x12\x34\n,SCHEDULED_INSTANCES_LESS_THAN_AUTOSCALER_MIN\x10\xb5\xc6\xf5\xbd\x01\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\x12\x39\n1UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION\x10\xd1\x96\xe1\x9d\x01\x12\x1d\n\x16ZONE_RESOURCE_STOCKOUT\x10\xb6\xcf\x9d\x64\x42\n\n\x08_messageB\x07\n\x05_type\"\x9c\x01\n\x15\x41utoscalersScopedList\x12<\n\x0b\x61utoscalers\x18\xfc\xb8\x8c\xde\x01 \x03(\x0b\x32#.google.cloud.compute.v1.Autoscaler\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xe9\x07\n\x11\x41utoscalingPolicy\x12$\n\x14\x63ool_down_period_sec\x18\x9a\x87\xad\x33 \x01(\x05H\x00\x88\x01\x01\x12Z\n\x0f\x63pu_utilization\x18\x8b\xa4\xe3\xb5\x01 \x01(\x0b\x32\x38.google.cloud.compute.v1.AutoscalingPolicyCpuUtilizationH\x01\x88\x01\x01\x12h\n\x1a\x63ustom_metric_utilizations\x18\xf2\xfd\xf6> \x03(\x0b\x32\x41.google.cloud.compute.v1.AutoscalingPolicyCustomMetricUtilization\x12o\n\x1aload_balancing_utilization\x18\xe3\xd1\xf5\xcc\x01 \x01(\x0b\x32\x42.google.cloud.compute.v1.AutoscalingPolicyLoadBalancingUtilizationH\x02\x88\x01\x01\x12 \n\x10max_num_replicas\x18\xcf\x94\xdc\x1d \x01(\x05H\x03\x88\x01\x01\x12!\n\x10min_num_replicas\x18\xa1\xf8\xa1\xff\x01 \x01(\x05H\x04\x88\x01\x01\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x05\x88\x01\x01\x12[\n\x10scale_in_control\x18\xd8\xbc\xce\xfb\x01 \x01(\x0b\x32\x38.google.cloud.compute.v1.AutoscalingPolicyScaleInControlH\x06\x88\x01\x01\x12_\n\x11scaling_schedules\x18\x84\xf4\xbc\xa9\x01 \x03(\x0b\x32@.google.cloud.compute.v1.AutoscalingPolicy.ScalingSchedulesEntry\x1ar\n\x15ScalingSchedulesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12H\n\x05value\x18\x02 \x01(\x0b\x32\x39.google.cloud.compute.v1.AutoscalingPolicyScalingSchedule:\x02\x38\x01\"V\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\t\n\x03OFF\x10\xcf\xe2\x04\x12\x07\n\x02ON\x10\xdf\x13\x12\x15\n\x0eONLY_SCALE_OUT\x10\xc6\xf3\xe8H\x12\x0f\n\x07ONLY_UP\x10\x8e\xd0\xfc\xe3\x01\x42\x17\n\x15_cool_down_period_secB\x12\n\x10_cpu_utilizationB\x1d\n\x1b_load_balancing_utilizationB\x13\n\x11_max_num_replicasB\x13\n\x11_min_num_replicasB\x07\n\x05_modeB\x13\n\x11_scale_in_control\"\xf6\x01\n\x1f\x41utoscalingPolicyCpuUtilization\x12\"\n\x11predictive_method\x18\xc1\x97\x89\xba\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12utilization_target\x18\xce\xec\xf9\x66 \x01(\x01H\x01\x88\x01\x01\"^\n\x10PredictiveMethod\x12\x1f\n\x1bUNDEFINED_PREDICTIVE_METHOD\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x1c\n\x15OPTIMIZE_AVAILABILITY\x10\xfd\xe6\xc5\x05\x42\x14\n\x12_predictive_methodB\x15\n\x13_utilization_target\"\xbf\x03\n(AutoscalingPolicyCustomMetricUtilization\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x06metric\x18\xb0\xeb\x97\xfe\x01 \x01(\tH\x01\x88\x01\x01\x12+\n\x1asingle_instance_assignment\x18\xc0\xcc\xd8\xf0\x01 \x01(\x01H\x02\x88\x01\x01\x12\"\n\x12utilization_target\x18\xce\xec\xf9\x66 \x01(\x01H\x03\x88\x01\x01\x12(\n\x17utilization_target_type\x18\x8b\xa5\x9a\xa2\x01 \x01(\tH\x04\x88\x01\x01\"~\n\x15UtilizationTargetType\x12%\n!UNDEFINED_UTILIZATION_TARGET_TYPE\x10\x00\x12\x17\n\x10\x44\x45LTA_PER_MINUTE\x10\x9d\xbd\xd8)\x12\x17\n\x10\x44\x45LTA_PER_SECOND\x10\xfd\xf9\xd6y\x12\x0c\n\x05GAUGE\x10\xd9\xb1\x9d B\t\n\x07_filterB\t\n\x07_metricB\x1d\n\x1b_single_instance_assignmentB\x15\n\x13_utilization_targetB\x1a\n\x18_utilization_target_type\"f\n)AutoscalingPolicyLoadBalancingUtilization\x12\"\n\x12utilization_target\x18\xce\xec\xf9\x66 \x01(\x01H\x00\x88\x01\x01\x42\x15\n\x13_utilization_target\"\xc2\x01\n\x1f\x41utoscalingPolicyScaleInControl\x12O\n\x16max_scaled_in_replicas\x18\xeb\xd5\x95V \x01(\x0b\x32\'.google.cloud.compute.v1.FixedOrPercentH\x00\x88\x01\x01\x12\x1f\n\x0ftime_window_sec\x18\xb4\x80\xae\x11 \x01(\x05H\x01\x88\x01\x01\x42\x19\n\x17_max_scaled_in_replicasB\x12\n\x10_time_window_sec\"\xba\x02\n AutoscalingPolicyScalingSchedule\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x08\x64isabled\x18\xfc\xf4\x98\x81\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1c\n\x0c\x64uration_sec\x18\xa6\x9e\xa1\x65 \x01(\x05H\x02\x88\x01\x01\x12&\n\x15min_required_replicas\x18\xae\x9d\xa5\xae\x01 \x01(\x05H\x03\x88\x01\x01\x12\x19\n\x08schedule\x18\x97\xa5\x9a\xb3\x01 \x01(\tH\x04\x88\x01\x01\x12\x19\n\ttime_zone\x18\xde\x83\xc9\x11 \x01(\tH\x05\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0b\n\t_disabledB\x0f\n\r_duration_secB\x18\n\x16_min_required_replicasB\x0b\n\t_scheduleB\x0c\n\n_time_zone\"\xec\x08\n\x07\x42\x61\x63kend\x12\x1f\n\x0e\x62\x61lancing_mode\x18\x89\xcb\x96\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12 \n\x0f\x63\x61pacity_scaler\x18\x8d\xc7\xd4\x96\x01 \x01(\x02H\x01\x88\x01\x01\x12H\n\x0e\x63ustom_metrics\x18\xf5\xe3\xe3\xcc\x01 \x03(\x0b\x32,.google.cloud.compute.v1.BackendCustomMetric\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x08\x66\x61ilover\x18\xf2\xa9\x9d\x42 \x01(\x08H\x03\x88\x01\x01\x12\x15\n\x05group\x18\xff\xec\x83/ \x01(\tH\x04\x88\x01\x01\x12\x1f\n\x0fmax_connections\x18\xfa\xd5\xe1\x34 \x01(\x05H\x05\x88\x01\x01\x12,\n\x1cmax_connections_per_endpoint\x18\x9c\xe7\xb6g \x01(\x05H\x06\x88\x01\x01\x12,\n\x1cmax_connections_per_instance\x18\x9c\xd5\xf4\x31 \x01(\x05H\x07\x88\x01\x01\x12\x19\n\x08max_rate\x18\xdb\xbd\xc8\xc2\x01 \x01(\x05H\x08\x88\x01\x01\x12%\n\x15max_rate_per_endpoint\x18\xdb\xaa\xf4= \x01(\x02H\t\x88\x01\x01\x12%\n\x15max_rate_per_instance\x18\xdb\x98\xb2\x08 \x01(\x02H\n\x88\x01\x01\x12\x1f\n\x0fmax_utilization\x18\xc7\xf7\xd4\x46 \x01(\x02H\x0b\x88\x01\x01\x12]\n\x12orchestration_info\x18\xec\xa7\xad\xd2\x01 \x01(\x0b\x32\x38.google.cloud.compute.v1.BackendBackendOrchestrationInfoH\x0c\x88\x01\x01\x12\x1a\n\npreference\x18\xdb\xf9\xf2G \x01(\tH\r\x88\x01\x01\"y\n\rBalancingMode\x12\x1c\n\x18UNDEFINED_BALANCING_MODE\x10\x00\x12\x11\n\nCONNECTION\x10\xde\xd5\xb9u\x12\x16\n\x0e\x43USTOM_METRICS\x10\xd5\xe3\x8d\x9e\x01\x12\x0b\n\x04RATE\x10\xe0\x89\x99\x01\x12\x12\n\x0bUTILIZATION\x10\x82\x84\xefJ\"i\n\nPreference\x12\x18\n\x14UNDEFINED_PREFERENCE\x10\x00\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\x12\x1e\n\x16PREFERENCE_UNSPECIFIED\x10\xb3\xeb\xce\xec\x01\x12\x11\n\tPREFERRED\x10\xe1\xb8\xdc\xc7\x01\x42\x11\n\x0f_balancing_modeB\x12\n\x10_capacity_scalerB\x0e\n\x0c_descriptionB\x0b\n\t_failoverB\x08\n\x06_groupB\x12\n\x10_max_connectionsB\x1f\n\x1d_max_connections_per_endpointB\x1f\n\x1d_max_connections_per_instanceB\x0b\n\t_max_rateB\x18\n\x16_max_rate_per_endpointB\x18\n\x16_max_rate_per_instanceB\x12\n\x10_max_utilizationB\x15\n\x13_orchestration_infoB\r\n\x0b_preference\"P\n\x1f\x42\x61\x63kendBackendOrchestrationInfo\x12\x1c\n\x0cresource_uri\x18\xbb\x83\xf0H \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_resource_uri\"\xcc\x07\n\rBackendBucket\x12\x1c\n\x0b\x62ucket_name\x18\xc0\x97\x9e\x87\x01 \x01(\tH\x00\x88\x01\x01\x12K\n\ncdn_policy\x18\x84\x8b\x84\x66 \x01(\x0b\x32/.google.cloud.compute.v1.BackendBucketCdnPolicyH\x01\x88\x01\x01\x12 \n\x10\x63ompression_mode\x18\xdc\x91\xc6- \x01(\tH\x02\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x03\x88\x01\x01\x12#\n\x17\x63ustom_response_headers\x18\x96\xc1\xe5\xb8\x01 \x03(\t\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12$\n\x14\x65\x64ge_security_policy\x18\x8f\xd9\xc8\x13 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\nenable_cdn\x18\xf1\xb6\xf5\x86\x01 \x01(\x08H\x06\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x07\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x08\x88\x01\x01\x12&\n\x15load_balancing_scheme\x18\xc4\x8c\xc2\xad\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\n\x88\x01\x01\x12\x44\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32,.google.cloud.compute.v1.BackendBucketParamsH\x0b\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\x12\x41\n\x07used_by\x18\x99\xa0\xd2\xb9\x01 \x03(\x0b\x32,.google.cloud.compute.v1.BackendBucketUsedBy\"U\n\x0f\x43ompressionMode\x12\x1e\n\x1aUNDEFINED_COMPRESSION_MODE\x10\x00\x12\x10\n\tAUTOMATIC\x10\x8b\x84\xe9N\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\"S\n\x13LoadBalancingScheme\x12#\n\x1fUNDEFINED_LOAD_BALANCING_SCHEME\x10\x00\x12\x17\n\x10INTERNAL_MANAGED\x10\xfd\xd7\xe7\x11\x42\x0e\n\x0c_bucket_nameB\r\n\x0b_cdn_policyB\x13\n\x11_compression_modeB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x17\n\x15_edge_security_policyB\r\n\x0b_enable_cdnB\x05\n\x03_idB\x07\n\x05_kindB\x18\n\x16_load_balancing_schemeB\x07\n\x05_nameB\t\n\x07_paramsB\x0c\n\n_self_link\"\xca\x07\n\x16\x42\x61\x63kendBucketCdnPolicy\x12v\n\x1f\x62ypass_cache_on_request_headers\x18\xca\xbd\xeb\xe7\x01 \x03(\x0b\x32I.google.cloud.compute.v1.BackendBucketCdnPolicyBypassCacheOnRequestHeader\x12_\n\x10\x63\x61\x63he_key_policy\x18\xef\xd7\xf8K \x01(\x0b\x32=.google.cloud.compute.v1.BackendBucketCdnPolicyCacheKeyPolicyH\x00\x88\x01\x01\x12\x1a\n\ncache_mode\x18\xc0\xc8\xe2\r \x01(\tH\x01\x88\x01\x01\x12\x1a\n\nclient_ttl\x18\xf8\x8e\xec\r \x01(\x05H\x02\x88\x01\x01\x12\x1b\n\x0b\x64\x65\x66\x61ult_ttl\x18\xee\xfd\xe6/ \x01(\x05H\x03\x88\x01\x01\x12\x18\n\x07max_ttl\x18\x91\x89\xd5\x92\x01 \x01(\x05H\x04\x88\x01\x01\x12!\n\x10negative_caching\x18\xb5\xc3\xa2\xa0\x01 \x01(\x08H\x05\x88\x01\x01\x12h\n\x17negative_caching_policy\x18\xfc\xb5\x8aJ \x03(\x0b\x32\x44.google.cloud.compute.v1.BackendBucketCdnPolicyNegativeCachingPolicy\x12#\n\x12request_coalescing\x18\xd4\x84\x88\xfe\x01 \x01(\x08H\x06\x88\x01\x01\x12!\n\x11serve_while_stale\x18\xdb\xf7\xedp \x01(\x05H\x07\x88\x01\x01\x12-\n\x1csigned_url_cache_max_age_sec\x18\xc6\xa8\xb9\x80\x01 \x01(\x03H\x08\x88\x01\x01\x12 \n\x14signed_url_key_names\x18\xb5\xed\xa7\xb1\x01 \x03(\t\"\x8f\x01\n\tCacheMode\x12\x18\n\x14UNDEFINED_CACHE_MODE\x10\x00\x12\x18\n\x10\x43\x41\x43HE_ALL_STATIC\x10\xe9\x97\xa5\xa9\x01\x12\x17\n\x0f\x46ORCE_CACHE_ALL\x10\xb0\xdd\xe0\xe7\x01\x12\x1a\n\x12INVALID_CACHE_MODE\x10\xc8\xb7\xe8\xb5\x01\x12\x19\n\x12USE_ORIGIN_HEADERS\x10\xa5\x92\xb4\x1a\x42\x13\n\x11_cache_key_policyB\r\n\x0b_cache_modeB\r\n\x0b_client_ttlB\x0e\n\x0c_default_ttlB\n\n\x08_max_ttlB\x13\n\x11_negative_cachingB\x15\n\x13_request_coalescingB\x14\n\x12_serve_while_staleB\x1f\n\x1d_signed_url_cache_max_age_sec\"_\n0BackendBucketCdnPolicyBypassCacheOnRequestHeader\x12\x1b\n\x0bheader_name\x18\xfd\xc1\xc7\x34 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_header_name\"j\n$BackendBucketCdnPolicyCacheKeyPolicy\x12\x1f\n\x14include_http_headers\x18\x86\xfa\x97\x01 \x03(\t\x12!\n\x16query_string_whitelist\x18\xb0\xd8\x81\x19 \x03(\t\"h\n+BackendBucketCdnPolicyNegativeCachingPolicy\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\x05H\x00\x88\x01\x01\x12\x12\n\x03ttl\x18\xec\x83\x07 \x01(\x05H\x01\x88\x01\x01\x42\x07\n\x05_codeB\x06\n\x04_ttl\"\xab\x02\n\x11\x42\x61\x63kendBucketList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x38\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32&.google.cloud.compute.v1.BackendBucket\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbb\x01\n\x13\x42\x61\x63kendBucketParams\x12h\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x45.google.cloud.compute.v1.BackendBucketParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\">\n\x13\x42\x61\x63kendBucketUsedBy\x12\x19\n\treference\x18\xcb\xfe\xec\x46 \x01(\tH\x00\x88\x01\x01\x42\x0c\n\n_reference\"\x8f\x01\n\x13\x42\x61\x63kendCustomMetric\x12\x18\n\x07\x64ry_run\x18\xf7\xc3\xb6\x9a\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1f\n\x0fmax_utilization\x18\xc7\xf7\xd4\x46 \x01(\x02H\x01\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x02\x88\x01\x01\x42\n\n\x08_dry_runB\x12\n\x10_max_utilizationB\x07\n\x05_name\"\x96(\n\x0e\x42\x61\x63kendService\x12(\n\x17\x61\x66\x66inity_cookie_ttl_sec\x18\x9a\xe9\xb6\xb0\x01 \x01(\x05H\x00\x88\x01\x01\x12\x36\n\x08\x62\x61\x63kends\x18\xdf\x98\xcb\xf3\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Backend\x12L\n\ncdn_policy\x18\x84\x8b\x84\x66 \x01(\x0b\x32\x30.google.cloud.compute.v1.BackendServiceCdnPolicyH\x01\x88\x01\x01\x12K\n\x10\x63ircuit_breakers\x18\x9d\xc7\xf4\xc8\x01 \x01(\x0b\x32(.google.cloud.compute.v1.CircuitBreakersH\x02\x88\x01\x01\x12 \n\x10\x63ompression_mode\x18\xdc\x91\xc6- \x01(\tH\x03\x88\x01\x01\x12Q\n\x13\x63onnection_draining\x18\xab\x8e\xef\xdb\x01 \x01(\x0b\x32+.google.cloud.compute.v1.ConnectionDrainingH\x04\x88\x01\x01\x12k\n\x1a\x63onnection_tracking_policy\x18\xd9\xe0\xd4\x44 \x01(\x0b\x32?.google.cloud.compute.v1.BackendServiceConnectionTrackingPolicyH\x05\x88\x01\x01\x12[\n\x0f\x63onsistent_hash\x18\x9b\xa5\x37 \x01(\x0b\x32;.google.cloud.compute.v1.ConsistentHashLoadBalancerSettingsH\x06\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x07\x88\x01\x01\x12O\n\x0e\x63ustom_metrics\x18\xf5\xe3\xe3\xcc\x01 \x03(\x0b\x32\x33.google.cloud.compute.v1.BackendServiceCustomMetric\x12!\n\x16\x63ustom_request_headers\x18\x88\xd2\xab\r \x03(\t\x12#\n\x17\x63ustom_response_headers\x18\x96\xc1\xe5\xb8\x01 \x03(\t\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x08\x88\x01\x01\x12$\n\x14\x65\x64ge_security_policy\x18\x8f\xd9\xc8\x13 \x01(\tH\t\x88\x01\x01\x12\x1c\n\x0c\x65nable_c_d_n\x18\xbb\xc7\xc7w \x01(\x08H\n\x88\x01\x01\x12\x30\n external_managed_migration_state\x18\xcc\x8f\xf6\x1f \x01(\tH\x0b\x88\x01\x01\x12>\n-external_managed_migration_testing_percentage\x18\xce\x81\xef\xf1\x01 \x01(\x02H\x0c\x88\x01\x01\x12V\n\x0f\x66\x61ilover_policy\x18\x9f\xf2\xb0\x32 \x01(\x0b\x32\x35.google.cloud.compute.v1.BackendServiceFailoverPolicyH\r\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x0e\x88\x01\x01\x12K\n\tha_policy\x18\xb8\xf6\xf2\xf7\x01 \x01(\x0b\x32/.google.cloud.compute.v1.BackendServiceHAPolicyH\x0f\x88\x01\x01\x12\x19\n\rhealth_checks\x18\xae\xaf\xe6\xd5\x01 \x03(\t\x12>\n\x03iap\x18\xd8\xac\x06 \x01(\x0b\x32*.google.cloud.compute.v1.BackendServiceIAPH\x10\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x11\x88\x01\x01\x12+\n\x1bip_address_selection_policy\x18\xc8\xb0\x80% \x01(\tH\x12\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x13\x88\x01\x01\x12&\n\x15load_balancing_scheme\x18\xc4\x8c\xc2\xad\x01 \x01(\tH\x14\x88\x01\x01\x12i\n\x14locality_lb_policies\x18\x9d\xf2\x9c\x43 \x03(\x0b\x32H.google.cloud.compute.v1.BackendServiceLocalityLoadBalancingPolicyConfig\x12\"\n\x12locality_lb_policy\x18\xbf\xf8\xd5> \x01(\tH\x15\x88\x01\x01\x12M\n\nlog_config\x18\x9d\xd1\xc1\xa7\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.BackendServiceLogConfigH\x16\x88\x01\x01\x12\x46\n\x13max_stream_duration\x18\x98\xa5\xa5\x1d \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x17\x88\x01\x01\x12L\n\tmetadatas\x18\xa4\xd6\x87\x04 \x03(\x0b\x32\x36.google.cloud.compute.v1.BackendService.MetadatasEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x18\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x19\x88\x01\x01\x12\x80\x01\n&network_pass_through_lb_traffic_policy\x18\xa6\xec\xe9m \x01(\x0b\x32H.google.cloud.compute.v1.BackendServiceNetworkPassThroughLbTrafficPolicyH\x1a\x88\x01\x01\x12]\n\x12orchestration_info\x18\xec\xa7\xad\xd2\x01 \x01(\x0b\x32\x38.google.cloud.compute.v1.BackendServiceOrchestrationInfoH\x1b\x88\x01\x01\x12M\n\x11outlier_detection\x18\xbe\xcc\x8c\xa9\x01 \x01(\x0b\x32).google.cloud.compute.v1.OutlierDetectionH\x1c\x88\x01\x01\x12\x45\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32-.google.cloud.compute.v1.BackendServiceParamsH\x1d\x88\x01\x01\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x1e\x88\x01\x01\x12\x19\n\tport_name\x18\x89\x87\xe7\x13 \x01(\tH\x1f\x88\x01\x01\x12\x18\n\x08protocol\x18\x98\x9d\xaa( \x01(\tH \x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH!\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\"\x88\x01\x01\x12M\n\x11security_settings\x18\xc2\xbc\x9e\xe4\x01 \x01(\x0b\x32).google.cloud.compute.v1.SecuritySettingsH#\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH$\x88\x01\x01\x12\x1b\n\x10service_bindings\x18\xd8\x91\xd9? \x03(\t\x12!\n\x11service_lb_policy\x18\x91\x8e\x9d- \x01(\tH%\x88\x01\x01\x12!\n\x10session_affinity\x18\xb1\xc1\x99\xdd\x01 \x01(\tH&\x88\x01\x01\x12\x61\n\x1estrong_session_affinity_cookie\x18\x8a\xa8\xcaq \x01(\x0b\x32\x31.google.cloud.compute.v1.BackendServiceHttpCookieH\'\x88\x01\x01\x12@\n\nsubsetting\x18\x90\x90\xdb\xd6\x01 \x01(\x0b\x32#.google.cloud.compute.v1.SubsettingH(\x88\x01\x01\x12\x1b\n\x0btimeout_sec\x18\xf3\xc0\x92& \x01(\x05H)\x88\x01\x01\x12P\n\x0ctls_settings\x18\xe7\xad\x80\' \x01(\x0b\x32\x32.google.cloud.compute.v1.BackendServiceTlsSettingsH*\x88\x01\x01\x12\x42\n\x07used_by\x18\x99\xa0\xd2\xb9\x01 \x03(\x0b\x32-.google.cloud.compute.v1.BackendServiceUsedBy\x1a\x30\n\x0eMetadatasEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"U\n\x0f\x43ompressionMode\x12\x1e\n\x1aUNDEFINED_COMPRESSION_MODE\x10\x00\x12\x10\n\tAUTOMATIC\x10\x8b\x84\xe9N\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\"\x95\x01\n\x1d\x45xternalManagedMigrationState\x12.\n*UNDEFINED_EXTERNAL_MANAGED_MIGRATION_STATE\x10\x00\x12\x0f\n\x07PREPARE\x10\xe7\xb1\xc6\xbe\x01\x12\x17\n\x10TEST_ALL_TRAFFIC\x10\xf2\xa1\x82&\x12\x1a\n\x12TEST_BY_PERCENTAGE\x10\x95\x8d\xfc\xf4\x01\"\xae\x01\n\x18IpAddressSelectionPolicy\x12)\n%UNDEFINED_IP_ADDRESS_SELECTION_POLICY\x10\x00\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\x12\x10\n\tIPV6_ONLY\x10\xe4\xad\xfc%\x12.\n\'IP_ADDRESS_SELECTION_POLICY_UNSPECIFIED\x10\xe0\x8b\xa2\x11\x12\x13\n\x0bPREFER_IPV6\x10\xd6\x85\xeb\xc2\x01\"\xd5\x01\n\x13LoadBalancingScheme\x12#\n\x1fUNDEFINED_LOAD_BALANCING_SCHEME\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x18\n\x10\x45XTERNAL_MANAGED\x10\x8b\xb6\x92\xf4\x01\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\x12\x17\n\x10INTERNAL_MANAGED\x10\xfd\xd7\xe7\x11\x12\x1c\n\x15INTERNAL_SELF_MANAGED\x10\xce\x97\xd1p\x12%\n\x1dINVALID_LOAD_BALANCING_SCHEME\x10\xfc\x93\xa6\x83\x01\"\x9c\x02\n\x10LocalityLbPolicy\x12 \n\x1cUNDEFINED_LOCALITY_LB_POLICY\x10\x00\x12\x19\n\x11INVALID_LB_POLICY\x10\xb3\xe7\x95\x9a\x01\x12\x14\n\rLEAST_REQUEST\x10\xf9\xc4\x9c\x16\x12\r\n\x06MAGLEV\x10\xea\x97\xea\x38\x12\x1b\n\x14ORIGINAL_DESTINATION\x10\x80\xfd\xa5O\x12\r\n\x06RANDOM\x10\xc3\xb1\x97}\x12\x11\n\tRING_HASH\x10\xbd\xdb\xaf\xce\x01\x12\x12\n\x0bROUND_ROBIN\x10\xf9\x86\xb1I\x12\x1e\n\x17WEIGHTED_GCP_RENDEZVOUS\x10\x88\xc0\xab\'\x12\x16\n\x0fWEIGHTED_MAGLEV\x10\x92\xe0\xc7y\x12\x1b\n\x14WEIGHTED_ROUND_ROBIN\x10\xd1\xf0\xd4\x02\"\x99\x01\n\x08Protocol\x12\x16\n\x12UNDEFINED_PROTOCOL\x10\x00\x12\x0b\n\x04GRPC\x10\x9e\x88\x86\x01\x12\t\n\x03H2C\x10\x99\xa9\x04\x12\x0b\n\x04HTTP\x10\x88\x81\x88\x01\x12\x0c\n\x05HTTP2\x10\xaa\xa1\xf8 \x12\x0c\n\x05HTTPS\x10\xcb\xa1\xf8 \x12\t\n\x03SSL\x10\xec\x83\x05\x12\t\n\x03TCP\x10\xc1\x87\x05\x12\t\n\x03UDP\x10\xa1\x8f\x05\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\"\x8b\x02\n\x0fSessionAffinity\x12\x1e\n\x1aUNDEFINED_SESSION_AFFINITY\x10\x00\x12\x11\n\tCLIENT_IP\x10\x9b\xdc\xe9\xa4\x01\x12\x1f\n\x18\x43LIENT_IP_NO_DESTINATION\x10\x94\x9a\xcd\x32\x12\x1b\n\x14\x43LIENT_IP_PORT_PROTO\x10\xae\xf2\xdci\x12\x16\n\x0f\x43LIENT_IP_PROTO\x10\xa4\xc5\x89\x0c\x12\x18\n\x10GENERATED_COOKIE\x10\xb4\xce\xca\xb0\x01\x12\x13\n\x0cHEADER_FIELD\x10\xa8\x89\xdc_\x12\x13\n\x0bHTTP_COOKIE\x10\xfb\xa3\x83\xec\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x1e\n\x16STRONG_COOKIE_AFFINITY\x10\xfb\xdd\x93\xd1\x01\x42\x1a\n\x18_affinity_cookie_ttl_secB\r\n\x0b_cdn_policyB\x13\n\x11_circuit_breakersB\x13\n\x11_compression_modeB\x16\n\x14_connection_drainingB\x1d\n\x1b_connection_tracking_policyB\x12\n\x10_consistent_hashB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x17\n\x15_edge_security_policyB\x0f\n\r_enable_c_d_nB#\n!_external_managed_migration_stateB0\n._external_managed_migration_testing_percentageB\x12\n\x10_failover_policyB\x0e\n\x0c_fingerprintB\x0c\n\n_ha_policyB\x06\n\x04_iapB\x05\n\x03_idB\x1e\n\x1c_ip_address_selection_policyB\x07\n\x05_kindB\x18\n\x16_load_balancing_schemeB\x15\n\x13_locality_lb_policyB\r\n\x0b_log_configB\x16\n\x14_max_stream_durationB\x07\n\x05_nameB\n\n\x08_networkB)\n\'_network_pass_through_lb_traffic_policyB\x15\n\x13_orchestration_infoB\x14\n\x12_outlier_detectionB\t\n\x07_paramsB\x07\n\x05_portB\x0c\n\n_port_nameB\x0b\n\t_protocolB\t\n\x07_regionB\x12\n\x10_security_policyB\x14\n\x12_security_settingsB\x0c\n\n_self_linkB\x14\n\x12_service_lb_policyB\x13\n\x11_session_affinityB!\n\x1f_strong_session_affinity_cookieB\r\n\x0b_subsettingB\x0e\n\x0c_timeout_secB\x0f\n\r_tls_settings\"\xcb\x03\n\x1c\x42\x61\x63kendServiceAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12R\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32@.google.cloud.compute.v1.BackendServiceAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a`\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x41\n\x05value\x18\x02 \x01(\x0b\x32\x32.google.cloud.compute.v1.BackendServicesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb7\x07\n\x17\x42\x61\x63kendServiceCdnPolicy\x12w\n\x1f\x62ypass_cache_on_request_headers\x18\xca\xbd\xeb\xe7\x01 \x03(\x0b\x32J.google.cloud.compute.v1.BackendServiceCdnPolicyBypassCacheOnRequestHeader\x12I\n\x10\x63\x61\x63he_key_policy\x18\xef\xd7\xf8K \x01(\x0b\x32\'.google.cloud.compute.v1.CacheKeyPolicyH\x00\x88\x01\x01\x12\x1a\n\ncache_mode\x18\xc0\xc8\xe2\r \x01(\tH\x01\x88\x01\x01\x12\x1a\n\nclient_ttl\x18\xf8\x8e\xec\r \x01(\x05H\x02\x88\x01\x01\x12\x1b\n\x0b\x64\x65\x66\x61ult_ttl\x18\xee\xfd\xe6/ \x01(\x05H\x03\x88\x01\x01\x12\x18\n\x07max_ttl\x18\x91\x89\xd5\x92\x01 \x01(\x05H\x04\x88\x01\x01\x12!\n\x10negative_caching\x18\xb5\xc3\xa2\xa0\x01 \x01(\x08H\x05\x88\x01\x01\x12i\n\x17negative_caching_policy\x18\xfc\xb5\x8aJ \x03(\x0b\x32\x45.google.cloud.compute.v1.BackendServiceCdnPolicyNegativeCachingPolicy\x12#\n\x12request_coalescing\x18\xd4\x84\x88\xfe\x01 \x01(\x08H\x06\x88\x01\x01\x12!\n\x11serve_while_stale\x18\xdb\xf7\xedp \x01(\x05H\x07\x88\x01\x01\x12-\n\x1csigned_url_cache_max_age_sec\x18\xc6\xa8\xb9\x80\x01 \x01(\x03H\x08\x88\x01\x01\x12 \n\x14signed_url_key_names\x18\xb5\xed\xa7\xb1\x01 \x03(\t\"\x8f\x01\n\tCacheMode\x12\x18\n\x14UNDEFINED_CACHE_MODE\x10\x00\x12\x18\n\x10\x43\x41\x43HE_ALL_STATIC\x10\xe9\x97\xa5\xa9\x01\x12\x17\n\x0f\x46ORCE_CACHE_ALL\x10\xb0\xdd\xe0\xe7\x01\x12\x1a\n\x12INVALID_CACHE_MODE\x10\xc8\xb7\xe8\xb5\x01\x12\x19\n\x12USE_ORIGIN_HEADERS\x10\xa5\x92\xb4\x1a\x42\x13\n\x11_cache_key_policyB\r\n\x0b_cache_modeB\r\n\x0b_client_ttlB\x0e\n\x0c_default_ttlB\n\n\x08_max_ttlB\x13\n\x11_negative_cachingB\x15\n\x13_request_coalescingB\x14\n\x12_serve_while_staleB\x1f\n\x1d_signed_url_cache_max_age_sec\"`\n1BackendServiceCdnPolicyBypassCacheOnRequestHeader\x12\x1b\n\x0bheader_name\x18\xfd\xc1\xc7\x34 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_header_name\"i\n,BackendServiceCdnPolicyNegativeCachingPolicy\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\x05H\x00\x88\x01\x01\x12\x12\n\x03ttl\x18\xec\x83\x07 \x01(\x05H\x01\x88\x01\x01\x42\x07\n\x05_codeB\x06\n\x04_ttl\"\xeb\x04\n&BackendServiceConnectionTrackingPolicy\x12<\n,connection_persistence_on_unhealthy_backends\x18\xf9\x91\xd8H \x01(\tH\x00\x88\x01\x01\x12&\n\x16\x65nable_strong_affinity\x18\x94\xe6\xd9\x0b \x01(\x08H\x01\x88\x01\x01\x12 \n\x10idle_timeout_sec\x18\x88\xc1\xf4\x0b \x01(\x05H\x02\x88\x01\x01\x12\x1d\n\rtracking_mode\x18\xab\xdc\xf5< \x01(\tH\x03\x88\x01\x01\"\xb0\x01\n(ConnectionPersistenceOnUnhealthyBackends\x12:\n6UNDEFINED_CONNECTION_PERSISTENCE_ON_UNHEALTHY_BACKENDS\x10\x00\x12\x15\n\x0e\x41LWAYS_PERSIST\x10\x84\xe7\xa7\x12\x12\x1b\n\x14\x44\x45\x46\x41ULT_FOR_PROTOCOL\x10\xcc\xa5\xa2\x45\x12\x14\n\rNEVER_PERSIST\x10\xe1\xa5\x8e\x42\"t\n\x0cTrackingMode\x12\x1b\n\x17UNDEFINED_TRACKING_MODE\x10\x00\x12\x1c\n\x15INVALID_TRACKING_MODE\x10\xc3\x83\xbd\x17\x12\x15\n\x0ePER_CONNECTION\x10\xe0\xf6\xcd(\x12\x12\n\x0bPER_SESSION\x10\xb4\xba\xeaVB/\n-_connection_persistence_on_unhealthy_backendsB\x19\n\x17_enable_strong_affinityB\x13\n\x11_idle_timeout_secB\x10\n\x0e_tracking_mode\"a\n\x1a\x42\x61\x63kendServiceCustomMetric\x12\x18\n\x07\x64ry_run\x18\xf7\xc3\xb6\x9a\x01 \x01(\x08H\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\n\n\x08_dry_runB\x07\n\x05_name\"\xf9\x01\n\x1c\x42\x61\x63kendServiceFailoverPolicy\x12\x34\n$disable_connection_drain_on_failover\x18\xe1\xcc\xedV \x01(\x08H\x00\x88\x01\x01\x12)\n\x19\x64rop_traffic_if_unhealthy\x18\x94\xcd\xc5\x35 \x01(\x08H\x01\x88\x01\x01\x12\x1e\n\x0e\x66\x61ilover_ratio\x18\xfe\x94\xb4\x65 \x01(\x02H\x02\x88\x01\x01\x42\'\n%_disable_connection_drain_on_failoverB\x1c\n\x1a_drop_traffic_if_unhealthyB\x11\n\x0f_failover_ratio\"\x8d\x02\n\x19\x42\x61\x63kendServiceGroupHealth\x12[\n\x0b\x61nnotations\x18\xa4\xf6\xb5\x35 \x03(\x0b\x32\x43.google.cloud.compute.v1.BackendServiceGroupHealth.AnnotationsEntry\x12@\n\rhealth_status\x18\xb5\xd6\xba\xb5\x01 \x03(\x0b\x32%.google.cloud.compute.v1.HealthStatus\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x07\n\x05_kind\"\xf2\x01\n\x16\x42\x61\x63kendServiceHAPolicy\x12\x1d\n\rfast_i_p_move\x18\xd9\xbe\x94j \x01(\tH\x00\x88\x01\x01\x12N\n\x06leader\x18\x89\x8a\xa1\xf0\x01 \x01(\x0b\x32\x35.google.cloud.compute.v1.BackendServiceHAPolicyLeaderH\x01\x88\x01\x01\"L\n\nFastIPMove\x12\x1b\n\x17UNDEFINED_FAST_I_P_MOVE\x10\x00\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x0f\n\x07GARP_RA\x10\xb6\x86\xbb\xfb\x01\x42\x10\n\x0e_fast_i_p_moveB\t\n\x07_leader\"\xcd\x01\n\x1c\x42\x61\x63kendServiceHAPolicyLeader\x12\x1e\n\rbackend_group\x18\x94\xc2\xa4\xda\x01 \x01(\tH\x00\x88\x01\x01\x12\x66\n\x10network_endpoint\x18\x86\x91\x8a\x1b \x01(\x0b\x32\x44.google.cloud.compute.v1.BackendServiceHAPolicyLeaderNetworkEndpointH\x01\x88\x01\x01\x42\x10\n\x0e_backend_groupB\x13\n\x11_network_endpoint\"T\n+BackendServiceHAPolicyLeaderNetworkEndpoint\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_instance\"\x97\x01\n\x18\x42\x61\x63kendServiceHttpCookie\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04path\x18\xa5\xc8\xd1\x01 \x01(\tH\x01\x88\x01\x01\x12\x35\n\x03ttl\x18\xec\x83\x07 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x02\x88\x01\x01\x42\x07\n\x05_nameB\x07\n\x05_pathB\x06\n\x04_ttl\"\xfb\x01\n\x11\x42\x61\x63kendServiceIAP\x12\x16\n\x07\x65nabled\x18\xc1\x96> \x01(\x08H\x00\x88\x01\x01\x12!\n\x10oauth2_client_id\x18\xcb\x8e\xde\x95\x01 \x01(\tH\x01\x88\x01\x01\x12$\n\x14oauth2_client_secret\x18\xe0\xe1\xa8\x18 \x01(\tH\x02\x88\x01\x01\x12+\n\x1boauth2_client_secret_sha256\x18\xe6\x8c\xeb\x35 \x01(\tH\x03\x88\x01\x01\x42\n\n\x08_enabledB\x13\n\x11_oauth2_client_idB\x17\n\x15_oauth2_client_secretB\x1e\n\x1c_oauth2_client_secret_sha256\"\xad\x02\n\x12\x42\x61\x63kendServiceList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.BackendService\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb3\x02\n\x18\x42\x61\x63kendServiceListUsable\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.BackendService\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xab\x02\n/BackendServiceLocalityLoadBalancingPolicyConfig\x12s\n\rcustom_policy\x18\xc0\x8b\xa6\x02 \x01(\x0b\x32T.google.cloud.compute.v1.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicyH\x00\x88\x01\x01\x12\x66\n\x06policy\x18\xb2\xca\xb6+ \x01(\x0b\x32N.google.cloud.compute.v1.BackendServiceLocalityLoadBalancingPolicyConfigPolicyH\x01\x88\x01\x01\x42\x10\n\x0e_custom_policyB\t\n\x07_policy\"{\n;BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy\x12\x14\n\x04\x64\x61ta\x18\xaa\xdf\xbb\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_dataB\x07\n\x05_name\"\xdb\x02\n5BackendServiceLocalityLoadBalancingPolicyConfigPolicy\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\"\x82\x02\n\x04Name\x12\x12\n\x0eUNDEFINED_NAME\x10\x00\x12\x19\n\x11INVALID_LB_POLICY\x10\xb3\xe7\x95\x9a\x01\x12\x14\n\rLEAST_REQUEST\x10\xf9\xc4\x9c\x16\x12\r\n\x06MAGLEV\x10\xea\x97\xea\x38\x12\x1b\n\x14ORIGINAL_DESTINATION\x10\x80\xfd\xa5O\x12\r\n\x06RANDOM\x10\xc3\xb1\x97}\x12\x11\n\tRING_HASH\x10\xbd\xdb\xaf\xce\x01\x12\x12\n\x0bROUND_ROBIN\x10\xf9\x86\xb1I\x12\x1e\n\x17WEIGHTED_GCP_RENDEZVOUS\x10\x88\xc0\xab\'\x12\x16\n\x0fWEIGHTED_MAGLEV\x10\x92\xe0\xc7y\x12\x1b\n\x14WEIGHTED_ROUND_ROBIN\x10\xd1\xf0\xd4\x02\x42\x07\n\x05_name\"\xb0\x02\n\x17\x42\x61\x63kendServiceLogConfig\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1b\n\x0foptional_fields\x18\xf8\xc8\x86\xfc\x01 \x03(\t\x12\x1d\n\roptional_mode\x18\xa2\x86\xaf= \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0bsample_rate\x18\xd5\x94\x86I \x01(\x02H\x02\x88\x01\x01\"v\n\x0cOptionalMode\x12\x1b\n\x17UNDEFINED_OPTIONAL_MODE\x10\x00\x12\x0e\n\x06\x43USTOM\x10\xf1\xfe\xa5\xb9\x01\x12\x1b\n\x14\x45XCLUDE_ALL_OPTIONAL\x10\xc3\xdd\xb4P\x12\x1c\n\x14INCLUDE_ALL_OPTIONAL\x10\xb5\xed\xb2\xff\x01\x42\t\n\x07_enableB\x10\n\x0e_optional_modeB\x0e\n\x0c_sample_rate\"\xbc\x01\n/BackendServiceNetworkPassThroughLbTrafficPolicy\x12v\n\x0ezonal_affinity\x18\xc3\x8a\xdb\xff\x01 \x01(\x0b\x32U.google.cloud.compute.v1.BackendServiceNetworkPassThroughLbTrafficPolicyZonalAffinityH\x00\x88\x01\x01\x42\x11\n\x0f_zonal_affinity\"\xb4\x02\n\n\trx_packet\x18\xa1\x81\xeb\xf0\x01 \x01(\x0b\x32\".google.cloud.compute.v1.BfdPacketH\x06\x88\x01\x01\x12=\n\ttx_packet\x18\xa3\xbd\x8e\x35 \x01(\x0b\x32\".google.cloud.compute.v1.BfdPacketH\x07\x88\x01\x01\x12\x19\n\tuptime_ms\x18\xdd\xda\xe5; \x01(\x03H\x08\x88\x01\x01\"\x80\x01\n\x1c\x42\x66\x64SessionInitializationMode\x12-\n)UNDEFINED_BFD_SESSION_INITIALIZATION_MODE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x0f\n\x07PASSIVE\x10\x87\xf6\xd7\xdc\x01\"\xe9\x02\n\x0fLocalDiagnostic\x12\x1e\n\x1aUNDEFINED_LOCAL_DIAGNOSTIC\x10\x00\x12\x1c\n\x15\x41\x44MINISTRATIVELY_DOWN\x10\xa6\x8e\x83:\x12\x1d\n\x16\x43ONCATENATED_PATH_DOWN\x10\x8c\xa9\xbe\x0c\x12%\n\x1e\x43ONTROL_DETECTION_TIME_EXPIRED\x10\xef\xf8\xcc@\x12\x1d\n\x16\x44IAGNOSTIC_UNSPECIFIED\x10\xff\x84\x80\x1c\x12\x1b\n\x14\x45\x43HO_FUNCTION_FAILED\x10\xea\xd8\x9di\x12\x1d\n\x16\x46ORWARDING_PLANE_RESET\x10\xaa\xae\xb3\t\x12&\n\x1eNEIGHBOR_SIGNALED_SESSION_DOWN\x10\xb6\xfe\xb8\xb2\x01\x12\x14\n\rNO_DIAGNOSTIC\x10\xe5\xc1\x8cj\x12\x11\n\tPATH_DOWN\x10\xfc\x90\xc9\x8a\x01\x12&\n\x1eREVERSE_CONCATENATED_PATH_DOWN\x10\xa9\xb5\xc8\xe4\x01\"x\n\nLocalState\x12\x19\n\x15UNDEFINED_LOCAL_STATE\x10\x00\x12\x11\n\nADMIN_DOWN\x10\xb2\xdf\xa5=\x12\x0b\n\x04\x44OWN\x10\xa2\xb9\x80\x01\x12\x0b\n\x04INIT\x10\x90\xba\x89\x01\x12\x19\n\x11STATE_UNSPECIFIED\x10\xc9\xd0\xbc\xe0\x01\x12\x07\n\x02UP\x10\x9b\x15\x42\"\n _bfd_session_initialization_modeB!\n\x1f_config_update_timestamp_microsB\x18\n\x16_control_packet_countsB\x13\n\x11_local_diagnosticB\x0e\n\x0c_local_stateB*\n(_negotiated_local_control_tx_interval_msB\x0c\n\n_rx_packetB\x0c\n\n_tx_packetB\x0c\n\n_uptime_ms\"\xcd\x01\n\x15\x42\x66\x64StatusPacketCounts\x12\x16\n\x06num_rx\x18\x9f\xa3\xe3\x12 \x01(\rH\x00\x88\x01\x01\x12 \n\x0fnum_rx_rejected\x18\x9e\xae\xff\x85\x01 \x01(\rH\x01\x88\x01\x01\x12\"\n\x11num_rx_successful\x18\xba\x8a\x91\xd9\x01 \x01(\rH\x02\x88\x01\x01\x12\x16\n\x06num_tx\x18\xdd\xa3\xe3\x12 \x01(\rH\x03\x88\x01\x01\x42\t\n\x07_num_rxB\x12\n\x10_num_rx_rejectedB\x14\n\x12_num_rx_successfulB\t\n\x07_num_tx\"\x81\x03\n\x08\x42gpRoute\x12<\n\x08\x61s_paths\x18\xa1\xc5\xcc\x41 \x03(\x0b\x32\'.google.cloud.compute.v1.BgpRouteAsPath\x12\x16\n\x0b\x63ommunities\x18\xc7\xd4\xe2Y \x03(\t\x12\x61\n\x0b\x64\x65stination\x18\x8e\x88\x99V \x01(\x0b\x32\x44.google.cloud.compute.v1.BgpRouteNetworkLayerReachabilityInformationH\x00\x88\x01\x01\x12\x12\n\x03med\x18\xcc\xcb\x06 \x01(\rH\x01\x88\x01\x01\x12\x16\n\x06origin\x18\xa6\xde\x86\x1f \x01(\tH\x02\x88\x01\x01\"m\n\x06Origin\x12\x14\n\x10UNDEFINED_ORIGIN\x10\x00\x12\x16\n\x0e\x42GP_ORIGIN_EGP\x10\xe9\xce\xd6\xb4\x01\x12\x16\n\x0e\x42GP_ORIGIN_IGP\x10\xed\xec\xd6\xb4\x01\x12\x1d\n\x15\x42GP_ORIGIN_INCOMPLETE\x10\x83\x93\xf7\xd7\x01\x42\x0e\n\x0c_destinationB\x06\n\x04_medB\t\n\x07_origin\"\xa8\x01\n\x0e\x42gpRouteAsPath\x12\x0f\n\x04\x61sns\x18\xf7\xaa\xb7\x01 \x03(\x05\x12\x11\n\x06\x61sns32\x18\x96\xb4\xb9` \x03(\r\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x00\x88\x01\x01\"S\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x1d\n\x15\x41S_PATH_TYPE_SEQUENCE\x10\xb9\xf3\x84\xad\x01\x12\x18\n\x10\x41S_PATH_TYPE_SET\x10\xca\xa6\xa4\x90\x01\x42\x07\n\x05_type\"v\n+BgpRouteNetworkLayerReachabilityInformation\x12\x18\n\x07path_id\x18\xf5\xbe\xcd\x86\x01 \x01(\rH\x00\x88\x01\x01\x12\x16\n\x06prefix\x18\x92\xe5\xd2, \x01(\tH\x01\x88\x01\x01\x42\n\n\x08_path_idB\t\n\x07_prefix\"\xb1\x01\n\x07\x42inding\x12\x1b\n\nbinding_id\x18\x95\xf2\xa9\xd2\x01 \x01(\tH\x00\x88\x01\x01\x12\x38\n\tcondition\x18\x9b\xda\xa5\x65 \x01(\x0b\x32\x1d.google.cloud.compute.v1.ExprH\x01\x88\x01\x01\x12\x13\n\x07members\x18\x99\x92\xbb\xc4\x01 \x03(\t\x12\x14\n\x04role\x18\xf6\x80\xd6\x01 \x01(\tH\x02\x88\x01\x01\x42\r\n\x0b_binding_idB\x0c\n\n_conditionB\x07\n\x05_role\"\xe8\x01\n\x15\x42ulkInsertDiskRequest\x12\x64\n\"bulk_insert_disk_resource_resource\x18\xd6\xf9\x97\x8a\x01 \x01(\x0b\x32/.google.cloud.compute.v1.BulkInsertDiskResourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"m\n\x16\x42ulkInsertDiskResource\x12/\n\x1fsource_consistency_group_policy\x18\xdd\xa2\xad\t \x01(\tH\x00\x88\x01\x01\x42\"\n _source_consistency_group_policy\"\xf3\x01\n\x19\x42ulkInsertInstanceRequest\x12k\n&bulk_insert_instance_resource_resource\x18\xce\xc2\xe0\x13 \x01(\x0b\x32\x33.google.cloud.compute.v1.BulkInsertInstanceResourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa6\x06\n\x1a\x42ulkInsertInstanceResource\x12\x15\n\x05\x63ount\x18\x8f\xa2\x9d- \x01(\x03H\x00\x88\x01\x01\x12_\n\x1binstance_flexibility_policy\x18\x82\x8e\xec\x0c \x01(\x0b\x32\x32.google.cloud.compute.v1.InstanceFlexibilityPolicyH\x01\x88\x01\x01\x12P\n\x13instance_properties\x18\x9d\x9e\xd8\x66 \x01(\x0b\x32+.google.cloud.compute.v1.InstancePropertiesH\x02\x88\x01\x01\x12I\n\x0flocation_policy\x18\xfc\xb9\x87\xde\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.LocationPolicyH\x03\x88\x01\x01\x12\x1a\n\tmin_count\x18\xe2\xa9\xbf\xf9\x01 \x01(\x03H\x04\x88\x01\x01\x12\x1d\n\x0cname_pattern\x18\xdc\xa3\xa9\xc5\x01 \x01(\tH\x05\x88\x01\x01\x12r\n\x17per_instance_properties\x18\xfb\xb9\xde\x33 \x03(\x0b\x32N.google.cloud.compute.v1.BulkInsertInstanceResource.PerInstancePropertiesEntry\x12)\n\x18source_instance_template\x18\xc0\xc3\xc1\x9e\x01 \x01(\tH\x06\x88\x01\x01\x1a\x86\x01\n\x1aPerInstancePropertiesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12W\n\x05value\x18\x02 \x01(\x0b\x32H.google.cloud.compute.v1.BulkInsertInstanceResourcePerInstanceProperties:\x02\x38\x01\x42\x08\n\x06_countB\x1e\n\x1c_instance_flexibility_policyB\x16\n\x14_instance_propertiesB\x12\n\x10_location_policyB\x0c\n\n_min_countB\x0f\n\r_name_patternB\x1b\n\x19_source_instance_template\"w\n/BulkInsertInstanceResourcePerInstanceProperties\x12\x18\n\x08hostname\x18\xb3\xb8\x85q \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_hostnameB\x07\n\x05_name\"\x9c\x03\n\x19\x42ulkInsertOperationStatus\x12!\n\x10\x63reated_vm_count\x18\xfe\xa9\xa2\xbd\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x10\x64\x65leted_vm_count\x18\xed\xd5\xca\x81\x01 \x01(\x05H\x01\x88\x01\x01\x12)\n\x19\x66\x61iled_to_create_vm_count\x18\xe8\xbd\xeb\x1b \x01(\x05H\x02\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x03\x88\x01\x01\x12 \n\x0ftarget_vm_count\x18\xf5\xa0\x92\xfe\x01 \x01(\x05H\x04\x88\x01\x01\"m\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x0b\n\x04\x44ONE\x10\x82\xb7\x80\x01\x12\x13\n\x0cROLLING_BACK\x10\xc1\x9d\xd9{\x12\x19\n\x12STATUS_UNSPECIFIED\x10\xca\xcc\x8b\x14\x42\x13\n\x11_created_vm_countB\x13\n\x11_deleted_vm_countB\x1c\n\x1a_failed_to_create_vm_countB\t\n\x07_statusB\x12\n\x10_target_vm_count\"\xf2\x01\n\x1b\x42ulkInsertRegionDiskRequest\x12\x64\n\"bulk_insert_disk_resource_resource\x18\xd6\xf9\x97\x8a\x01 \x01(\x0b\x32/.google.cloud.compute.v1.BulkInsertDiskResourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xfd\x01\n\x1f\x42ulkInsertRegionInstanceRequest\x12k\n&bulk_insert_instance_resource_resource\x18\xce\xc2\xe0\x13 \x01(\x0b\x32\x33.google.cloud.compute.v1.BulkInsertInstanceResourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x97\x02\n\x18\x42ulkSetLabelsDiskRequest\x12i\n%bulk_zone_set_labels_request_resource\x18\x9b\xa5\xac\xfd\x01 \x01(\x0b\x32\x31.google.cloud.compute.v1.BulkZoneSetLabelsRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x0b\n\t_resource\"\xcd\x01\n\x14\x42ulkSetLabelsRequest\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x00\x88\x01\x01\x12M\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x39.google.cloud.compute.v1.BulkSetLabelsRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x14\n\x12_label_fingerprint\"^\n\x18\x42ulkZoneSetLabelsRequest\x12\x42\n\x08requests\x18\xc4\xbf\xbd\x44 \x03(\x0b\x32-.google.cloud.compute.v1.BulkSetLabelsRequest\"\x81\x01\n\x10\x42undledLocalSsds\x12!\n\x11\x64\x65\x66\x61ult_interface\x18\xbb\xc1\xa0\x08 \x01(\tH\x00\x88\x01\x01\x12 \n\x0fpartition_count\x18\xfa\xde\xe5\xc2\x01 \x01(\x05H\x01\x88\x01\x01\x42\x14\n\x12_default_interfaceB\x12\n\x10_partition_count\"l\n\x15\x43\x61\x63heInvalidationRule\x12\x15\n\ncache_tags\x18\xb6\xbd\xee\r \x03(\t\x12\x14\n\x04host\x18\xa8\xeb\xc3\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04path\x18\xa5\xc8\xd1\x01 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_hostB\x07\n\x05_path\"\xc2\x02\n\x0e\x43\x61\x63heKeyPolicy\x12\x1d\n\x0cinclude_host\x18\xdf\x85\x94\xe8\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1f\n\x14include_http_headers\x18\x86\xfa\x97\x01 \x03(\t\x12 \n\x15include_named_cookies\x18\xb2\xb0\xd1) \x03(\t\x12!\n\x10include_protocol\x18\xcf\xd0\xdc\x90\x01 \x01(\x08H\x01\x88\x01\x01\x12%\n\x14include_query_string\x18\x9f\xf3\x84\xe2\x01 \x01(\x08H\x02\x88\x01\x01\x12\"\n\x16query_string_blacklist\x18\x86\xaa\xa1\xa9\x01 \x03(\t\x12!\n\x16query_string_whitelist\x18\xb0\xd8\x81\x19 \x03(\tB\x0f\n\r_include_hostB\x13\n\x11_include_protocolB\x17\n\x15_include_query_string\"\xf7\x01\n\x19\x43\x61lendarModeAdviceRequest\x12o\n\x16\x66uture_resources_specs\x18\x82\xde\xccy \x03(\x0b\x32L.google.cloud.compute.v1.CalendarModeAdviceRequest.FutureResourcesSpecsEntry\x1ai\n\x19\x46utureResourcesSpecsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12;\n\x05value\x18\x02 \x01(\x0b\x32,.google.cloud.compute.v1.FutureResourcesSpec:\x02\x38\x01\"n\n\x1a\x43\x61lendarModeAdviceResponse\x12P\n\x0frecommendations\x18\xda\xef\xde\x9a\x01 \x03(\x0b\x32\x33.google.cloud.compute.v1.CalendarModeRecommendation\"\xba\x01\n\x1c\x43\x61lendarModeAdviceRpcRequest\x12i\n%calendar_mode_advice_request_resource\x18\xea\xdd\xa5M \x01(\x0b\x32\x32.google.cloud.compute.v1.CalendarModeAdviceRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x89\x02\n\x1a\x43\x61lendarModeRecommendation\x12t\n\x18recommendations_per_spec\x18\xe2\xb0\x9f\x1d \x03(\x0b\x32O.google.cloud.compute.v1.CalendarModeRecommendation.RecommendationsPerSpecEntry\x1au\n\x1bRecommendationsPerSpecEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x45\n\x05value\x18\x02 \x01(\x0b\x32\x36.google.cloud.compute.v1.FutureResourcesRecommendation:\x02\x38\x01\"\xaf\x01\n\x1e\x43\x61ncelFutureReservationRequest\x12\"\n\x12\x66uture_reservation\x18\xd0\xc6\xe6\x1a \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe3\x01\n.CancelInstanceGroupManagerResizeRequestRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0eresize_request\x18\x84\x84\xb9g \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xb0\x02\n\x0f\x43ircuitBreakers\x12\x1f\n\x0fmax_connections\x18\xfa\xd5\xe1\x34 \x01(\x05H\x00\x88\x01\x01\x12%\n\x14max_pending_requests\x18\xe7\xa5\x8a\xb3\x01 \x01(\x05H\x01\x88\x01\x01\x12\x1c\n\x0cmax_requests\x18\xbf\xf8\xb2\r \x01(\x05H\x02\x88\x01\x01\x12,\n\x1bmax_requests_per_connection\x18\xc0\x96\xb8\xac\x01 \x01(\x05H\x03\x88\x01\x01\x12\x1b\n\x0bmax_retries\x18\xeb\xa2\xbe\x1a \x01(\x05H\x04\x88\x01\x01\x42\x12\n\x10_max_connectionsB\x17\n\x15_max_pending_requestsB\x0f\n\r_max_requestsB\x1e\n\x1c_max_requests_per_connectionB\x0e\n\x0c_max_retries\"\xb1\x01\n\x1f\x43loneRulesFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12&\n\x16source_firewall_policy\x18\xad\xda\xf6\x0b \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x19\n\x17_source_firewall_policy\"\xdb\x01\n&CloneRulesNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12&\n\x16source_firewall_policy\x18\xad\xda\xf6\x0b \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x19\n\x17_source_firewall_policy\"\x82\x02\n,CloneRulesRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12&\n\x16source_firewall_policy\x18\xad\xda\xf6\x0b \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x19\n\x17_source_firewall_policy\"\x9b\x15\n\nCommitment\x12\x1b\n\nauto_renew\x18\xfd\x97\xa4\xec\x01 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x08\x63\x61tegory\x18\xfe\xf9\x8a\x18 \x01(\tH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12$\n\x14\x63ustom_end_timestamp\x18\xe4\xb4\xd6V \x01(\tH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12\x1e\n\rend_timestamp\x18\xb2\xad\x9a\xdf\x01 \x01(\tH\x05\x88\x01\x01\x12!\n\x15\x65xisting_reservations\x18\xdb\x88\x8c\xeb\x01 \x03(\t\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x07\x88\x01\x01\x12U\n\x10license_resource\x18\xcc\xd4\xea\xd0\x01 \x01(\x0b\x32\x32.google.cloud.compute.v1.LicenseResourceCommitmentH\x08\x88\x01\x01\x12#\n\x18merge_source_commitments\x18\xc1\xaa\xd8Y \x03(\t\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04plan\x18\xa9\x96\xd2\x01 \x01(\tH\n\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0b\x88\x01\x01\x12>\n\x0creservations\x18\xa7\xec\xcc\xbe\x01 \x03(\x0b\x32$.google.cloud.compute.v1.Reservation\x12R\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32\x31.google.cloud.compute.v1.CommitmentResourceStatusH\x0c\x88\x01\x01\x12\x41\n\tresources\x18\xa5\xfc\xb2N \x03(\x0b\x32+.google.cloud.compute.v1.ResourceCommitment\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\r\x88\x01\x01\x12(\n\x17split_source_commitment\x18\xd4\xb7\xfd\xbf\x01 \x01(\tH\x0e\x88\x01\x01\x12\x1f\n\x0fstart_timestamp\x18\xf9\xaa\xf1\' \x01(\tH\x0f\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x10\x88\x01\x01\x12\x1f\n\x0estatus_message\x18\xba\xc9\xe9\x8d\x01 \x01(\tH\x11\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x12\x88\x01\x01\"b\n\x08\x43\x61tegory\x12\x16\n\x12UNDEFINED_CATEGORY\x10\x00\x12\x1c\n\x14\x43\x41TEGORY_UNSPECIFIED\x10\xd6\xba\xe6\xf2\x01\x12\x0f\n\x07LICENSE\x10\xa1\xa0\xf0\xa5\x01\x12\x0f\n\x07MACHINE\x10\xa7\xa0\xf3\xdf\x01\"Y\n\x04Plan\x12\x12\n\x0eUNDEFINED_PLAN\x10\x00\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\x17\n\x10THIRTY_SIX_MONTH\x10\x86\xb5\xfd~\x12\x13\n\x0cTWELVE_MONTH\x10\xba\x9a\xc4R\"z\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\tCANCELLED\x10\xb1\xf2\x80\x14\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x0f\n\x07\x45XPIRED\x10\x85\xe6\x88\xe6\x01\x12\x15\n\x0eNOT_YET_ACTIVE\x10\xe9\xe2\xe9\t\"\xd1\t\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x1d\n\x15\x41\x43\x43\x45LERATOR_OPTIMIZED\x10\x93\xd0\xf5\x85\x01\x12\x1f\n\x18\x41\x43\x43\x45LERATOR_OPTIMIZED_A3\x10\xbe\xcf\xceK\x12$\n\x1d\x41\x43\x43\x45LERATOR_OPTIMIZED_A3_MEGA\x10\xd3\x88\xd1J\x12%\n\x1e\x41\x43\x43\x45LERATOR_OPTIMIZED_A3_ULTRA\x10\xcb\xc7\xa1\r\x12\x1f\n\x18\x41\x43\x43\x45LERATOR_OPTIMIZED_A4\x10\xbf\xcf\xceK\x12\x18\n\x11\x43OMPUTE_OPTIMIZED\x10\xdf\xed\xc0K\x12\x1d\n\x15\x43OMPUTE_OPTIMIZED_C2D\x10\xf5\xc0\xdf\xb6\x01\x12\x1c\n\x14\x43OMPUTE_OPTIMIZED_C3\x10\xb0\xab\x8b\xcc\x01\x12\x1d\n\x15\x43OMPUTE_OPTIMIZED_C3D\x10\x94\xc1\xdf\xb6\x01\x12\x1c\n\x14\x43OMPUTE_OPTIMIZED_H3\x10\xcb\xac\x8b\xcc\x01\x12\x1d\n\x15\x43OMPUTE_OPTIMIZED_H4D\x10\xf8\xe6\xdf\xb6\x01\x12\x17\n\x0fGENERAL_PURPOSE\x10\x87\xf9\xf9\x8e\x01\x12\x1a\n\x12GENERAL_PURPOSE_C4\x10\x89\x9e\xfb\x8f\x01\x12\x1a\n\x13GENERAL_PURPOSE_C4A\x10\xd8\xa4\xecn\x12\x1a\n\x13GENERAL_PURPOSE_C4D\x10\xdb\xa4\xecn\x12\x1a\n\x12GENERAL_PURPOSE_E2\x10\xc5\x9e\xfb\x8f\x01\x12\x1a\n\x12GENERAL_PURPOSE_N2\x10\xdc\xa0\xfb\x8f\x01\x12\x1a\n\x13GENERAL_PURPOSE_N2D\x10\xe8\xf6\xecn\x12\x1a\n\x12GENERAL_PURPOSE_N4\x10\xde\xa0\xfb\x8f\x01\x12\x1a\n\x13GENERAL_PURPOSE_N4A\x10\xa3\xf7\xecn\x12\x1a\n\x13GENERAL_PURPOSE_N4D\x10\xa6\xf7\xecn\x12\x1a\n\x13GENERAL_PURPOSE_T2D\x10\xee\xa3\xedn\x12\x19\n\x12GRAPHICS_OPTIMIZED\x10\xd3\xf8\xd4 \x12\x1c\n\x15GRAPHICS_OPTIMIZED_G4\x10\xb9\xd8\xe1\x19\x12\x18\n\x10MEMORY_OPTIMIZED\x10\xc9\xee\xac\x86\x01\x12\x1b\n\x13MEMORY_OPTIMIZED_M3\x10\xbc\x8c\xe0\x83\x01\x12\x1b\n\x13MEMORY_OPTIMIZED_M4\x10\xbd\x8c\xe0\x83\x01\x12\x1e\n\x17MEMORY_OPTIMIZED_M4_6TB\x10\xa2\xc8\xb2\x64\x12#\n\x1cMEMORY_OPTIMIZED_X4_1440_24T\x10\xff\x8f\xc6\x62\x12\x1f\n\x18MEMORY_OPTIMIZED_X4_16TB\x10\xe0\xef\xa6W\x12$\n\x1cMEMORY_OPTIMIZED_X4_1920_32T\x10\x89\x85\x9c\x8b\x01\x12\x1f\n\x18MEMORY_OPTIMIZED_X4_24TB\x10\xbd\xc9\xa8W\x12\x1f\n\x18MEMORY_OPTIMIZED_X4_32TB\x10\x9a\xa3\xaaW\x12\"\n\x1aMEMORY_OPTIMIZED_X4_480_6T\x10\x9e\x9e\x98\xe4\x01\x12\"\n\x1aMEMORY_OPTIMIZED_X4_480_8T\x10\xdc\x9e\x98\xe4\x01\x12#\n\x1bMEMORY_OPTIMIZED_X4_960_12T\x10\x9a\xea\xc4\xca\x01\x12#\n\x1bMEMORY_OPTIMIZED_X4_960_16T\x10\x96\xeb\xc4\xca\x01\x12\x1c\n\x14STORAGE_OPTIMIZED_Z3\x10\xb5\xd9\x87\x97\x01\x12\x18\n\x10TYPE_UNSPECIFIED\x10\x92\xfb\xdb\xd0\x01\x42\r\n\x0b_auto_renewB\x0b\n\t_categoryB\x15\n\x13_creation_timestampB\x17\n\x15_custom_end_timestampB\x0e\n\x0c_descriptionB\x10\n\x0e_end_timestampB\x05\n\x03_idB\x07\n\x05_kindB\x13\n\x11_license_resourceB\x07\n\x05_nameB\x07\n\x05_planB\t\n\x07_regionB\x12\n\x10_resource_statusB\x0c\n\n_self_linkB\x1a\n\x18_split_source_commitmentB\x12\n\x10_start_timestampB\t\n\x07_statusB\x11\n\x0f_status_messageB\x07\n\x05_type\"\xbf\x03\n\x18\x43ommitmentAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12N\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32<.google.cloud.compute.v1.CommitmentAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\\\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.CommitmentsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa5\x02\n\x0e\x43ommitmentList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x35\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32#.google.cloud.compute.v1.Commitment\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"|\n\x18\x43ommitmentResourceStatus\x12\x36\n%custom_term_eligibility_end_timestamp\x18\xfb\xab\xc7\xad\x01 \x01(\tH\x00\x88\x01\x01\x42(\n&_custom_term_eligibility_end_timestamp\"\x9c\x01\n\x15\x43ommitmentsScopedList\x12<\n\x0b\x63ommitments\x18\xfe\xaf\xf2\xd6\x01 \x03(\x0b\x32#.google.cloud.compute.v1.Commitment\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xe1\x03\n\x14\x43ompositeHealthCheck\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12#\n\x12health_destination\x18\xab\xf5\xab\x94\x01 \x01(\tH\x03\x88\x01\x01\x12\x1a\n\x0ehealth_sources\x18\xd5\xd1\xdc\xbd\x01 \x03(\t\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\t\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x15\n\x13_health_destinationB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_id\"\xdd\x03\n\"CompositeHealthCheckAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12X\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x46.google.cloud.compute.v1.CompositeHealthCheckAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x66\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12G\n\x05value\x18\x02 \x01(\x0b\x32\x38.google.cloud.compute.v1.CompositeHealthChecksScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb9\x02\n\x18\x43ompositeHealthCheckList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.CompositeHealthCheck\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbc\x01\n\x1f\x43ompositeHealthChecksScopedList\x12R\n\x17\x63omposite_health_checks\x18\xf6\xc7\xf9\xf6\x01 \x03(\x0b\x32-.google.cloud.compute.v1.CompositeHealthCheck\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xd0\x02\n\x1a\x43onfidentialInstanceConfig\x12*\n\x1a\x63onfidential_instance_type\x18\xad\x8c\xde\x14 \x01(\tH\x00\x88\x01\x01\x12+\n\x1b\x65nable_confidential_compute\x18\xbc\xeb\xd9\x30 \x01(\x08H\x01\x88\x01\x01\"\x99\x01\n\x18\x43onfidentialInstanceType\x12(\n$UNDEFINED_CONFIDENTIAL_INSTANCE_TYPE\x10\x00\x12-\n&CONFIDENTIAL_INSTANCE_TYPE_UNSPECIFIED\x10\x85\xb0\xec\x36\x12\t\n\x03SEV\x10\xc4\x80\x05\x12\x0e\n\x07SEV_SNP\x10\xda\xdd\xaf\n\x12\t\n\x03TDX\x10\xe8\x87\x05\x42\x1d\n\x1b_confidential_instance_typeB\x1e\n\x1c_enable_confidential_compute\"S\n\x12\x43onnectionDraining\x12$\n\x14\x64raining_timeout_sec\x18\x9e\xd5\xack \x01(\x05H\x00\x88\x01\x01\x42\x17\n\x15_draining_timeout_sec\"\x88\x02\n\"ConsistentHashLoadBalancerSettings\x12\x62\n\x0bhttp_cookie\x18\xfb\xab\x97\x03 \x01(\x0b\x32\x45.google.cloud.compute.v1.ConsistentHashLoadBalancerSettingsHttpCookieH\x00\x88\x01\x01\x12 \n\x10http_header_name\x18\xc6\xf7\xfao \x01(\tH\x01\x88\x01\x01\x12!\n\x11minimum_ring_size\x18\xbf\xbb\xe1o \x01(\x03H\x02\x88\x01\x01\x42\x0e\n\x0c_http_cookieB\x13\n\x11_http_header_nameB\x14\n\x12_minimum_ring_size\"\xab\x01\n,ConsistentHashLoadBalancerSettingsHttpCookie\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04path\x18\xa5\xc8\xd1\x01 \x01(\tH\x01\x88\x01\x01\x12\x35\n\x03ttl\x18\xec\x83\x07 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x02\x88\x01\x01\x42\x07\n\x05_nameB\x07\n\x05_pathB\x06\n\x04_ttl\"\xbb\x01\n*CopyRulesOrganizationSecurityPolicyRequest\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12&\n\x16source_security_policy\x18\xed\xd5\xfao \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x19\n\x17_source_security_policy\"\x9e\x02\n\nCorsPolicy\x12\"\n\x11\x61llow_credentials\x18\x86\xfe\xbd\xe5\x01 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\rallow_headers\x18\x90\xc1\xc5\x15 \x03(\t\x12\x18\n\rallow_methods\x18\xbc\xf9\xf8\x61 \x03(\t\x12\x1f\n\x14\x61llow_origin_regexes\x18\xd2\x8d\xda\x66 \x03(\t\x12\x18\n\rallow_origins\x18\x97\xce\xf8\\ \x03(\t\x12\x19\n\x08\x64isabled\x18\xfc\xf4\x98\x81\x01 \x01(\x08H\x01\x88\x01\x01\x12\x19\n\x0e\x65xpose_headers\x18\x8b\xcc\x88v \x03(\t\x12\x18\n\x07max_age\x18\xa4\xf7\xd3\x92\x01 \x01(\x05H\x02\x88\x01\x01\x42\x14\n\x12_allow_credentialsB\x0b\n\t_disabledB\n\n\x08_max_age\"\xd1\x02\n*CreateInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x8f\x01\n9instance_group_managers_create_instances_request_resource\x18\x93\xfa\xda\x0b \x01(\x0b\x32\x44.google.cloud.compute.v1.InstanceGroupManagersCreateInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe9\x02\n0CreateInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9d\x01\n@region_instance_group_managers_create_instances_request_resource\x18\x88\xbf\x98\xab\x01 \x01(\x0b\x32J.google.cloud.compute.v1.RegionInstanceGroupManagersCreateInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf7\x01\n%CreateMembersInterconnectGroupRequest\x12#\n\x12interconnect_group\x18\x8e\xb7\xa9\xb9\x01 \x01(\tB\x03\xe0\x41\x02\x12\x85\x01\n3interconnect_groups_create_members_request_resource\x18\xed\xfc\x8b\xa6\x01 \x01(\x0b\x32?.google.cloud.compute.v1.InterconnectGroupsCreateMembersRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\"\x91\x02\n\x19\x43reateSnapshotDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1c\n\x0bguest_flush\x18\xdd\x93\xec\xb7\x01 \x01(\x08H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x45\n\x11snapshot_resource\x18\xa9\xb8\xc1\xe5\x01 \x01(\x0b\x32!.google.cloud.compute.v1.SnapshotB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x0e\n\x0c_guest_flushB\r\n\x0b_request_id\"\xed\x01\n\x1f\x43reateSnapshotRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x45\n\x11snapshot_resource\x18\xa9\xb8\xc1\xe5\x01 \x01(\x0b\x32!.google.cloud.compute.v1.SnapshotB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xfc\x01\n\x10\x43rossSiteNetwork\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x04\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x05\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x0c\n\n_self_link\"\xe9\x02\n\x14\x43rossSiteNetworkList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12;\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32).google.cloud.compute.v1.CrossSiteNetwork\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb8\x01\n\x19\x43ustomErrorResponsePolicy\x12j\n\x14\x65rror_response_rules\x18\x90\xad\xfc\x06 \x03(\x0b\x32I.google.cloud.compute.v1.CustomErrorResponsePolicyCustomErrorResponseRule\x12\x1d\n\rerror_service\x18\xfe\xee\xa6N \x01(\tH\x00\x88\x01\x01\x42\x10\n\x0e_error_service\"\xb6\x01\n0CustomErrorResponsePolicyCustomErrorResponseRule\x12\x1f\n\x14match_response_codes\x18\xe2\x88\x87\x32 \x03(\t\x12\'\n\x16override_response_code\x18\xf8\xd7\xf0\xfc\x01 \x01(\x05H\x00\x88\x01\x01\x12\x14\n\x04path\x18\xa5\xc8\xd1\x01 \x01(\tH\x01\x88\x01\x01\x42\x19\n\x17_override_response_codeB\x07\n\x05_path\"\x8f\x02\n\x15\x43ustomerEncryptionKey\x12\x1d\n\x0ckms_key_name\x18\x99\xeb\xfb\xe6\x01 \x01(\tH\x00\x88\x01\x01\x12\'\n\x17kms_key_service_account\x18\xd5\xc5\x90\x64 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x07raw_key\x18\xc8\xe3\x98\xd6\x01 \x01(\tH\x02\x88\x01\x01\x12\"\n\x11rsa_encrypted_key\x18\xa5\xc3\xfc\x9f\x01 \x01(\tH\x03\x88\x01\x01\x12\x16\n\x06sha256\x18\xa7\xec\x8eQ \x01(\tH\x04\x88\x01\x01\x42\x0f\n\r_kms_key_nameB\x1a\n\x18_kms_key_service_accountB\n\n\x08_raw_keyB\x14\n\x12_rsa_encrypted_keyB\t\n\x07_sha256\"\xb5\x01\n\"CustomerEncryptionKeyProtectedDisk\x12T\n\x13\x64isk_encryption_key\x18\x85\xed\xc4\x81\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x00\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\x01\x88\x01\x01\x42\x16\n\x14_disk_encryption_keyB\t\n\x07_source\"C\n\x04\x44\x61ta\x12\x12\n\x03key\x18\xdf\xbc\x06 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05value\x18\xf1\xa2\xb2\x35 \x01(\tH\x01\x88\x01\x01\x42\x06\n\x04_keyB\x08\n\x06_value\"b\n\x04\x44\x61te\x12\x12\n\x03\x64\x61y\x18\x9c\x87\x06 \x01(\x05H\x00\x88\x01\x01\x12\x15\n\x05month\x18\x80\xc5\xd0\x31 \x01(\x05H\x01\x88\x01\x01\x12\x14\n\x04year\x18\xbd\x90\xe2\x01 \x01(\x05H\x02\x88\x01\x01\x42\x06\n\x04_dayB\x08\n\x06_monthB\x07\n\x05_year\"\xeb\x01\n!DeleteAccessConfigInstanceRequest\x12\x1d\n\raccess_config\x18\xfd\xe4\xde\" \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11network_interface\x18\xe8\xc0\x9d\xae\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x9f\x01\n\x14\x44\x65leteAddressRequest\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa1\x01\n\x17\x44\x65leteAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x8a\x01\n\x1a\x44\x65leteBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x8d\x01\n\x1b\x44\x65leteBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x91\x01\n\x1d\x44\x65leteCrossSiteNetworkRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x94\x01\n\x11\x44\x65leteDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x95\x01\n\x1f\x44\x65leteExternalVpnGatewayRequest\x12$\n\x14\x65xternal_vpn_gateway\x18\x85\xd7\xb3\x34 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"j\n\x1b\x44\x65leteFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x80\x01\n\x15\x44\x65leteFirewallRequest\x12\x19\n\x08\x66irewall\x18\x80\xfa\xd5\xf3\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xae\x01\n\x1b\x44\x65leteForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xaf\x01\n\x1e\x44\x65leteFutureReservationRequest\x12\"\n\x12\x66uture_reservation\x18\xd0\xc6\xe6\x1a \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x84\x01\n\x1a\x44\x65leteGlobalAddressRequest\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x93\x01\n!DeleteGlobalForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa0\x01\n\'DeleteGlobalNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"R\n\x1c\x44\x65leteGlobalOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"\x1f\n\x1d\x44\x65leteGlobalOperationResponse\"o\n(DeleteGlobalOrganizationOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tH\x00\x88\x01\x01\x42\x0c\n\n_parent_id\"+\n)DeleteGlobalOrganizationOperationResponse\"\xa2\x01\n)DeleteGlobalPublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x87\x01\n\x18\x44\x65leteHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"y\n\x12\x44\x65leteImageRequest\x12\x15\n\x05image\x18\xdb\xd2\xea/ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb6\x01\n!DeleteInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe3\x01\n.DeleteInstanceGroupManagerResizeRequestRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0eresize_request\x18\x84\x84\xb9g \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa7\x01\n\x1a\x44\x65leteInstanceGroupRequest\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x9c\x01\n\x15\x44\x65leteInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x91\x01\n\x1d\x44\x65leteInstanceTemplateRequest\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd1\x02\n*DeleteInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x8f\x01\n9instance_group_managers_delete_instances_request_resource\x18\x84\xc6\xadO \x01(\x0b\x32\x44.google.cloud.compute.v1.InstanceGroupManagersDeleteInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe9\x02\n0DeleteInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9d\x01\n@region_instance_group_managers_delete_instances_request_resource\x18\xf9\x8a\xeb\xee\x01 \x01(\x0b\x32J.google.cloud.compute.v1.RegionInstanceGroupManagersDeleteInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xac\x01\n\x1c\x44\x65leteInstantSnapshotRequest\x12!\n\x10instant_snapshot\x18\xe2\xdc\xdf\xba\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa7\x01\n(DeleteInterconnectAttachmentGroupRequest\x12-\n\x1dinterconnect_attachment_group\x18\xf4\xef\x98$ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbe\x01\n#DeleteInterconnectAttachmentRequest\x12(\n\x17interconnect_attachment\x18\xf4\x8a\xf7\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x93\x01\n\x1e\x44\x65leteInterconnectGroupRequest\x12#\n\x12interconnect_group\x18\x8e\xb7\xa9\xb9\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x87\x01\n\x19\x44\x65leteInterconnectRequest\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"}\n\x14\x44\x65leteLicenseRequest\x12\x17\n\x07license\x18\xc1\x88\xc2O \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x88\x01\n\x19\x44\x65leteMachineImageRequest\x12\x1d\n\rmachine_image\x18\xe3\xfe\xfe \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb3\x01\n\x1e\x44\x65leteNetworkAttachmentRequest\x12\"\n\x12network_attachment\x18\xd4\x97\x8fk \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc7\x01\n\'DeleteNetworkEdgeSecurityServiceRequest\x12-\n\x1dnetwork_edge_security_service\x18\xa7\x9f\xefJ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb7\x01\n!DeleteNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x94\x01\n\"DeleteNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd5\x01\n%DeleteNetworkInterfaceInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16network_interface_name\x18\x82\xa8\xeb\xb5\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"}\n\x14\x44\x65leteNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa0\x01\n\x16\x44\x65leteNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xaa\x01\n\x19\x44\x65leteNodeTemplateRequest\x12\x1e\n\rnode_template\x18\x97\xe4\x8b\x9a\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x97\x02\n\x1b\x44\x65leteNodesNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12p\n)node_groups_delete_nodes_request_resource\x18\x92\xd7\xb3W \x01(\x0b\x32\x35.google.cloud.compute.v1.NodeGroupsDeleteNodesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"u\n\'DeleteOrganizationSecurityPolicyRequest\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xaf\x01\n\x1c\x44\x65letePacketMirroringRequest\x12 \n\x10packet_mirroring\x18\xcc\xb9\xd1\n \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbc\x02\n3DeletePerInstanceConfigsInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x9c\x01\n@instance_group_managers_delete_per_instance_configs_req_resource\x18\xa0\xea\xe8\xac\x01 \x01(\x0b\x32I.google.cloud.compute.v1.InstanceGroupManagersDeletePerInstanceConfigsReqB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zone\"\xc6\x02\n9DeletePerInstanceConfigsRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9c\x01\nAregion_instance_group_manager_delete_instance_config_req_resource\x18\x85\x9b- \x01(\x0b\x32J.google.cloud.compute.v1.RegionInstanceGroupManagerDeleteInstanceConfigReqB\x03\xe0\x41\x02\"\x9e\x01\n$DeletePublicAdvertisedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12(\n\x18public_advertised_prefix\x18\x9e\xf7\xc9\x30 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbd\x01\n#DeletePublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xab\x01\n\x1d\x44\x65leteRegionAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb4\x01\n!DeleteRegionBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc1\x01\n\'DeleteRegionCompositeHealthCheckRequest\x12\'\n\x16\x63omposite_health_check\x18\x9d\xc0\xd6\xde\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9e\x01\n\x17\x44\x65leteRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc6\x01\n*DeleteRegionHealthAggregationPolicyRequest\x12)\n\x19health_aggregation_policy\x18\xf2\xcf\xcbr \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xae\x01\n\x1e\x44\x65leteRegionHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbd\x01\n%DeleteRegionHealthCheckServiceRequest\x12%\n\x14health_check_service\x18\xdb\x9b\xdd\xc2\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb0\x01\n\x1f\x44\x65leteRegionHealthSourceRequest\x12\x1e\n\rhealth_source\x18\xde\x86\xc5\xb3\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc0\x01\n\'DeleteRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb8\x01\n#DeleteRegionInstanceTemplateRequest\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb6\x01\n\"DeleteRegionInstantSnapshotRequest\x12!\n\x10instant_snapshot\x18\xe2\xdc\xdf\xba\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc1\x01\n\'DeleteRegionNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbb\x01\n(DeleteRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc0\x01\n\'DeleteRegionNotificationEndpointRequest\x12&\n\x15notification_endpoint\x18\xe9\xbc\xd6\xb3\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"j\n\x1c\x44\x65leteRegionOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x1f\n\x1d\x44\x65leteRegionOperationResponse\"\xb3\x01\n!DeleteRegionSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb3\x01\n!DeleteRegionSslCertificateRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fssl_certificate\x18\xe4\xd7\x92\x16 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xaa\x01\n\x1c\x44\x65leteRegionSslPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb6\x01\n\"DeleteRegionTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb8\x01\n#DeleteRegionTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb5\x01\n!DeleteRegionTargetTcpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x10target_tcp_proxy\x18\xe2\xd6\xf0\xef\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa4\x01\n\x19\x44\x65leteRegionUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa2\x01\n\x18\x44\x65leteReservationRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xad\x01\n\x1b\x44\x65leteResourcePolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fresource_policy\x18\x83\xa5\xf7K \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xca\x01\n\x1e\x44\x65leteRoutePolicyRouterRequest\x12\x16\n\x06policy\x18\xb2\xca\xb6+ \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_policyB\r\n\x0b_request_id\"y\n\x12\x44\x65leteRouteRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05route\x18\xc9\xe4\xea\x33 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x9c\x01\n\x13\x44\x65leteRouterRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8c\x01\n\x1b\x44\x65leteSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb4\x01\n\x1e\x44\x65leteServiceAttachmentRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12#\n\x12service_attachment\x18\xed\xa9\xd0\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb1\x01\n&DeleteSignedUrlKeyBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08key_name\x18\xeb\xf0\xee\xee\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb4\x01\n\'DeleteSignedUrlKeyBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08key_name\x18\xeb\xf0\xee\xee\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x80\x01\n\x15\x44\x65leteSnapshotRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x08snapshot\x18\xc4\xab\xeb\x87\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8c\x01\n\x1b\x44\x65leteSslCertificateRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fssl_certificate\x18\xe4\xd7\x92\x16 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x83\x01\n\x16\x44\x65leteSslPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa4\x01\n\x18\x44\x65leteStoragePoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0cstorage_pool\x18\xe0\xc6\xf1\xab\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa5\x01\n\x17\x44\x65leteSubnetworkRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8f\x01\n\x1c\x44\x65leteTargetGrpcProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_grpc_proxy\x18\xfb\xb4\xb2\x02 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8f\x01\n\x1c\x44\x65leteTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x91\x01\n\x1d\x44\x65leteTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xaa\x01\n\x1b\x44\x65leteTargetInstanceRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12 \n\x0ftarget_instance\x18\x83\x8f\x96\x8a\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa5\x01\n\x17\x44\x65leteTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8e\x01\n\x1b\x44\x65leteTargetSslProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8e\x01\n\x1b\x44\x65leteTargetTcpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x10target_tcp_proxy\x18\xe2\xd6\xf0\xef\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb3\x01\n\x1d\x44\x65leteTargetVpnGatewayRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12#\n\x12target_vpn_gateway\x18\xcb\x80\xf6\xfd\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"}\n\x13\x44\x65leteUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa6\x01\n\x17\x44\x65leteVpnGatewayRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bvpn_gateway\x18\xf9\x83\xf6\xc1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa3\x01\n\x16\x44\x65leteVpnTunnelRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\nvpn_tunnel\x18\x93\x94\xca\x44 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa6\x01\n\x16\x44\x65leteWireGroupRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\nwire_group\x18\xc5\xa4\xb7: \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"f\n\x1a\x44\x65leteZoneOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\x1d\n\x1b\x44\x65leteZoneOperationResponse\"J\n\x06\x44\x65nied\x12\x1d\n\x0cI_p_protocol\x18\xbd\xf6\xde\xe8\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x05ports\x18\x92\xf0\xf9\x32 \x03(\tB\x0f\n\r_I_p_protocol\"\xd6\x01\n\x15\x44\x65precateImageRequest\x12X\n\x1b\x64\x65precation_status_resource\x18\xf0\x89\xe5\x9e\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusB\x03\xe0\x41\x02\x12\x15\n\x05image\x18\xdb\xd2\xea/ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbf\x02\n\x11\x44\x65precationStatus\x12\x18\n\x07\x64\x65leted\x18\x99\xe0\xa8\xe3\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\tH\x01\x88\x01\x01\x12\x19\n\x08obsolete\x18\x99\x8b\xc5\xaa\x01 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0breplacement\x18\x92\x9c\xbd\xcd\x01 \x01(\tH\x03\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x04\x88\x01\x01\"a\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0e\n\x07\x44\x45LETED\x10\xf9\xf7\xd6\x39\x12\x12\n\nDEPRECATED\x10\xb3\xa3\xf9\xdc\x01\x12\x0f\n\x08OBSOLETE\x10\x99\xeb\xdc\x1f\x42\n\n\x08_deletedB\r\n\x0b_deprecatedB\x0b\n\t_obsoleteB\x0e\n\x0c_replacementB\x08\n\x06_state\"\xbd\x01\n\x19\x44\x65tachDiskInstanceRequest\x12\x1b\n\x0b\x64\x65vice_name\x18\xd4\xb5\x9a \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xcf\x02\n7DetachNetworkEndpointsGlobalNetworkEndpointGroupRequest\x12\x9c\x01\n@global_network_endpoint_groups_detach_endpoints_request_resource\x18\xdd\x8d\x9f\x04 \x01(\x0b\x32J.google.cloud.compute.v1.GlobalNetworkEndpointGroupsDetachEndpointsRequestB\x03\xe0\x41\x02\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xda\x02\n1DetachNetworkEndpointsNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x90\x01\n9network_endpoint_groups_detach_endpoints_request_resource\x18\xf9\xa0\xee\xf5\x01 \x01(\x0b\x32\x44.google.cloud.compute.v1.NetworkEndpointGroupsDetachEndpointsRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf1\x02\n7DetachNetworkEndpointsRegionNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9d\x01\n@region_network_endpoint_groups_detach_endpoints_request_resource\x18\xee\xe5\xab\x95\x01 \x01(\x0b\x32J.google.cloud.compute.v1.RegionNetworkEndpointGroupsDetachEndpointsRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"l\n\x1c\x44isableXpnHostProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xec\x01\n DisableXpnResourceProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12z\n.projects_disable_xpn_resource_request_resource\x18\xaa\xd4\xdc\x63 \x01(\x0b\x32:.google.cloud.compute.v1.ProjectsDisableXpnResourceRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xcf\x1a\n\x04\x44isk\x12\x1b\n\x0b\x61\x63\x63\x65ss_mode\x18\x9e\xf7\xcf\x13 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x01\x88\x01\x01\x12Q\n\x12\x61sync_primary_disk\x18\x9d\xf5\x89V \x01(\x0b\x32-.google.cloud.compute.v1.DiskAsyncReplicationH\x02\x88\x01\x01\x12Y\n\x15\x61sync_secondary_disks\x18\xa8\xe8\xfd\x99\x01 \x03(\x0b\x32\x36.google.cloud.compute.v1.Disk.AsyncSecondaryDisksEntry\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12T\n\x13\x64isk_encryption_key\x18\x85\xed\xc4\x81\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x05\x88\x01\x01\x12+\n\x1b\x65nable_confidential_compute\x18\xbc\xeb\xd9\x30 \x01(\x08H\x06\x88\x01\x01\x12\x45\n\x11guest_os_features\x18\xd1\xe0\xe7% \x03(\x0b\x32\'.google.cloud.compute.v1.GuestOsFeature\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x07\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\t\x88\x01\x01\x12=\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32).google.cloud.compute.v1.Disk.LabelsEntry\x12%\n\x15last_attach_timestamp\x18\xa5\x9c\x8d\x14 \x01(\tH\n\x88\x01\x01\x12%\n\x15last_detach_timestamp\x18\xf3\xdb\xf6\x1a \x01(\tH\x0b\x88\x01\x01\x12\x18\n\rlicense_codes\x18\xa8\x85\xd8\x15 \x03(\x03\x12\x14\n\x08licenses\x18\xd2\x88\x80\xa1\x01 \x03(\t\x12\x1e\n\rlocation_hint\x18\xd1\x81\x92\xa7\x01 \x01(\tH\x0c\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\r\x88\x01\x01\x12\x18\n\x07options\x18\x9e\x8d\x9a\xac\x01 \x01(\tH\x0e\x88\x01\x01\x12;\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32#.google.cloud.compute.v1.DiskParamsH\x0f\x88\x01\x01\x12*\n\x19physical_block_size_bytes\x18\x87\xa0\xa3\xc8\x01 \x01(\x03H\x10\x88\x01\x01\x12 \n\x10provisioned_iops\x18\xd4\xbd\x87Y \x01(\x03H\x11\x88\x01\x01\x12\'\n\x16provisioned_throughput\x18\x95\xbe\x88\xfb\x01 \x01(\x03H\x12\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x13\x88\x01\x01\x12\x18\n\rreplica_zones\x18\x80\xb8\x8c\x17 \x03(\t\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\x12L\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32+.google.cloud.compute.v1.DiskResourceStatusH\x14\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\x15\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x16\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x17\x88\x01\x01\x12\x18\n\x07size_gb\x18\xd9\x8b\x80\xec\x01 \x01(\x03H\x18\x88\x01\x01\x12/\n\x1fsource_consistency_group_policy\x18\xdd\xa2\xad\t \x01(\tH\x19\x88\x01\x01\x12\x32\n\"source_consistency_group_policy_id\x18\xbd\x8e\xcb\x7f \x01(\tH\x1a\x88\x01\x01\x12\x1c\n\x0bsource_disk\x18\xc1\xee\xb4\xd7\x01 \x01(\tH\x1b\x88\x01\x01\x12\x1f\n\x0esource_disk_id\x18\xd9\xcd\xc9\xd8\x01 \x01(\tH\x1c\x88\x01\x01\x12\x1c\n\x0csource_image\x18\xb7\xe8\x86\x18 \x01(\tH\x1d\x88\x01\x01\x12\\\n\x1bsource_image_encryption_key\x18\xab\x91\xf5\xb5\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x1e\x88\x01\x01\x12\x1f\n\x0fsource_image_id\x18\xa3\xfc\xb0\x1a \x01(\tH\x1f\x88\x01\x01\x12\'\n\x17source_instant_snapshot\x18\x86\x84\xc3h \x01(\tH \x88\x01\x01\x12+\n\x1asource_instant_snapshot_id\x18\xf4\xd3\x90\x89\x01 \x01(\tH!\x88\x01\x01\x12\x1f\n\x0fsource_snapshot\x18\xe8\x9a\x8e< \x01(\tH\"\x88\x01\x01\x12_\n\x1esource_snapshot_encryption_key\x18\xda\x8e\xe7\x90\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH#\x88\x01\x01\x12\"\n\x12source_snapshot_id\x18\xd2\x96\x98/ \x01(\tH$\x88\x01\x01\x12%\n\x15source_storage_object\x18\xa7\xb4\x90o \x01(\tH%\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH&\x88\x01\x01\x12\x1d\n\x0cstorage_pool\x18\xe0\xc6\xf1\xab\x01 \x01(\tH\'\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH(\x88\x01\x01\x12\x10\n\x05users\x18\x88\x9c\x9a\x35 \x03(\t\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH)\x88\x01\x01\x1am\n\x18\x41syncSecondaryDisksEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12@\n\x05value\x18\x02 \x01(\x0b\x32\x31.google.cloud.compute.v1.DiskAsyncReplicationList:\x02\x38\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"q\n\nAccessMode\x12\x19\n\x15UNDEFINED_ACCESS_MODE\x10\x00\x12\x15\n\x0eREAD_ONLY_MANY\x10\xa9\xa7\xa1\x1e\x12\x17\n\x0fREAD_WRITE_MANY\x10\xa8\xc2\x86\xe9\x01\x12\x18\n\x11READ_WRITE_SINGLE\x10\xd1\x99\xae/\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\"\x88\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x11\n\tRESTORING\x10\xab\xa7\xe2\xc0\x01\x12\x13\n\x0bUNAVAILABLE\x10\xb0\xd8\xa5\xc5\x01\x42\x0e\n\x0c_access_modeB\x0f\n\r_architectureB\x15\n\x13_async_primary_diskB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x16\n\x14_disk_encryption_keyB\x1e\n\x1c_enable_confidential_computeB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x18\n\x16_last_attach_timestampB\x18\n\x16_last_detach_timestampB\x10\n\x0e_location_hintB\x07\n\x05_nameB\n\n\x08_optionsB\t\n\x07_paramsB\x1c\n\x1a_physical_block_size_bytesB\x13\n\x11_provisioned_iopsB\x19\n\x17_provisioned_throughputB\t\n\x07_regionB\x12\n\x10_resource_statusB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\n\n\x08_size_gbB\"\n _source_consistency_group_policyB%\n#_source_consistency_group_policy_idB\x0e\n\x0c_source_diskB\x11\n\x0f_source_disk_idB\x0f\n\r_source_imageB\x1e\n\x1c_source_image_encryption_keyB\x12\n\x10_source_image_idB\x1a\n\x18_source_instant_snapshotB\x1d\n\x1b_source_instant_snapshot_idB\x12\n\x10_source_snapshotB!\n\x1f_source_snapshot_encryption_keyB\x15\n\x13_source_snapshot_idB\x18\n\x16_source_storage_objectB\t\n\x07_statusB\x0f\n\r_storage_poolB\x07\n\x05_typeB\x07\n\x05_zone\"\xad\x03\n\x12\x44iskAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12H\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x36.google.cloud.compute.v1.DiskAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aV\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x37\n\x05value\x18\x02 \x01(\x0b\x32(.google.cloud.compute.v1.DisksScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xed\x01\n\x14\x44iskAsyncReplication\x12\'\n\x18\x63onsistency_group_policy\x18\xb9\xc3y \x01(\tH\x00\x88\x01\x01\x12+\n\x1b\x63onsistency_group_policy_id\x18\xe1\x92\xbe| \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tH\x02\x88\x01\x01\x12\x17\n\x07\x64isk_id\x18\xfd\xc5\x8a\x1d \x01(\tH\x03\x88\x01\x01\x42\x1b\n\x19_consistency_group_policyB\x1e\n\x1c_consistency_group_policy_idB\x07\n\x05_diskB\n\n\x08_disk_id\"\x8c\x01\n\x18\x44iskAsyncReplicationList\x12U\n\x16\x61sync_replication_disk\x18\x93\xcb\xc3n \x01(\x0b\x32-.google.cloud.compute.v1.DiskAsyncReplicationH\x00\x88\x01\x01\x42\x19\n\x17_async_replication_disk\"\xa4\x03\n\x17\x44iskInstantiationConfig\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1c\n\x0c\x63ustom_image\x18\x8d\xfe\xe5W \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x64\x65vice_name\x18\xd4\xb5\x9a \x01(\tH\x02\x88\x01\x01\x12!\n\x10instantiate_from\x18\xdf\x9f\xca\xbb\x01 \x01(\tH\x03\x88\x01\x01\"\xc6\x01\n\x0fInstantiateFrom\x12\x1e\n\x1aUNDEFINED_INSTANTIATE_FROM\x10\x00\x12\x18\n\x10\x41TTACH_READ_ONLY\x10\xbb\xae\xfe\xf4\x01\x12\x0c\n\x05\x42LANK\x10\xb4\xb2\x96\x1e\x12\x13\n\x0c\x43USTOM_IMAGE\x10\xed\xf5\xcd]\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\x12\x15\n\x0e\x44O_NOT_INCLUDE\x10\xc8\x82\xd9\x31\x12\x13\n\x0cSOURCE_IMAGE\x10\x97\xe0\xee\x1d\x12\x1a\n\x13SOURCE_IMAGE_FAMILY\x10\x8c\xc9\xd2$B\x0e\n\x0c_auto_deleteB\x0f\n\r_custom_imageB\x0e\n\x0c_device_nameB\x13\n\x11_instantiate_from\"\x99\x02\n\x08\x44iskList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12/\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1d.google.cloud.compute.v1.Disk\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"u\n\x0f\x44iskMoveRequest\x12 \n\x10\x64\x65stination_zone\x18\xbd\xe2\xef> \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0btarget_disk\x18\x8b\xcf\xe2\x1d \x01(\tH\x01\x88\x01\x01\x42\x13\n\x11_destination_zoneB\x0e\n\x0c_target_disk\"\xa9\x01\n\nDiskParams\x12_\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32<.google.cloud.compute.v1.DiskParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xfa\x02\n\x12\x44iskResourceStatus\x12\x65\n\x12\x61sync_primary_disk\x18\x9d\xf5\x89V \x01(\x0b\x32\x41.google.cloud.compute.v1.DiskResourceStatusAsyncReplicationStatusH\x00\x88\x01\x01\x12g\n\x15\x61sync_secondary_disks\x18\xa8\xe8\xfd\x99\x01 \x03(\x0b\x32\x44.google.cloud.compute.v1.DiskResourceStatus.AsyncSecondaryDisksEntry\x1a}\n\x18\x41syncSecondaryDisksEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12P\n\x05value\x18\x02 \x01(\x0b\x32\x41.google.cloud.compute.v1.DiskResourceStatusAsyncReplicationStatus:\x02\x38\x01\x42\x15\n\x13_async_primary_disk\"\xda\x01\n(DiskResourceStatusAsyncReplicationStatus\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x00\x88\x01\x01\"\x8c\x01\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0e\n\x07\x43REATED\x10\xc8\x95\xe8@\x12\x10\n\x08STARTING\x10\xc0\xa0\x8b\xe9\x01\x12\x19\n\x11STATE_UNSPECIFIED\x10\xc9\xd0\xbc\xe0\x01\x12\x0f\n\x07STOPPED\x10\xad\xbb\xec\xd3\x01\x12\x10\n\x08STOPPING\x10\xf4\xd0\xa2\xa7\x01\x42\x08\n\x06_state\"\x84\x04\n\x08\x44iskType\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12%\n\x14\x64\x65\x66\x61ult_disk_size_gb\x18\xf5\xa4\x85\x81\x01 \x01(\x03H\x01\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12 \n\x0fvalid_disk_size\x18\xe0\x89\xc5\xeb\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\n\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x17\n\x15_default_disk_size_gbB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x0c\n\n_self_linkB\x12\n\x10_valid_disk_sizeB\x07\n\x05_zone\"\xb9\x03\n\x16\x44iskTypeAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12L\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32:.google.cloud.compute.v1.DiskTypeAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aZ\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12;\n\x05value\x18\x02 \x01(\x0b\x32,.google.cloud.compute.v1.DiskTypesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa1\x02\n\x0c\x44iskTypeList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x33\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32!.google.cloud.compute.v1.DiskType\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x96\x01\n\x13\x44iskTypesScopedList\x12\x38\n\ndisk_types\x18\xd7\xbe\xed^ \x03(\x0b\x32!.google.cloud.compute.v1.DiskType\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"?\n\x1f\x44isksAddResourcePoliciesRequest\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\"B\n\"DisksRemoveResourcePoliciesRequest\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\":\n\x12\x44isksResizeRequest\x12\x18\n\x07size_gb\x18\xd9\x8b\x80\xec\x01 \x01(\x03H\x00\x88\x01\x01\x42\n\n\x08_size_gb\"\x89\x01\n\x0f\x44isksScopedList\x12/\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32\x1d.google.cloud.compute.v1.Disk\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"b\n!DisksStartAsyncReplicationRequest\x12$\n\x14\x61sync_secondary_disk\x18\xab\x83\xe3> \x01(\tH\x00\x88\x01\x01\x42\x17\n\x15_async_secondary_disk\"]\n&DisksStopGroupAsyncReplicationResource\x12\x1f\n\x0fresource_policy\x18\x83\xa5\xf7K \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_resource_policy\"B\n\rDisplayDevice\x12\x1e\n\x0e\x65nable_display\x18\x86\xe4\xe6\x06 \x01(\x08H\x00\x88\x01\x01\x42\x11\n\x0f_enable_display\"\x81\x02\n\x12\x44istributionPolicy\x12\x1d\n\x0ctarget_shape\x18\xf3\xe6\xbb\xa1\x01 \x01(\tH\x00\x88\x01\x01\x12N\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\x0b\x32<.google.cloud.compute.v1.DistributionPolicyZoneConfiguration\"k\n\x0bTargetShape\x12\x1a\n\x16UNDEFINED_TARGET_SHAPE\x10\x00\x12\t\n\x03\x41NY\x10\xcc\xfb\x03\x12\x16\n\x0f\x41NY_SINGLE_ZONE\x10\xd0\xa6\x91\x1d\x12\x10\n\x08\x42\x41LANCED\x10\x88\xba\xad\xdf\x01\x12\x0b\n\x04\x45VEN\x10\x9a\xd2\x82\x01\x42\x0f\n\r_target_shape\"D\n#DistributionPolicyZoneConfiguration\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_zone\"Q\n\x08\x44uration\x12\x15\n\x05nanos\x18\xbf\xb8\xef\x31 \x01(\x05H\x00\x88\x01\x01\x12\x18\n\x07seconds\x18\xff\x94\xb5\xab\x01 \x01(\x03H\x01\x88\x01\x01\x42\x08\n\x06_nanosB\n\n\x08_seconds\"k\n\x1b\x45nableXpnHostProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xea\x01\n\x1f\x45nableXpnResourceProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12y\n-projects_enable_xpn_resource_request_resource\x18\xaf\xd0\x9b\xc9\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.ProjectsEnableXpnResourceRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"<\n\x05\x45rror\x12\x33\n\x06\x65rrors\x18\xeb\xde\xd5\x96\x01 \x03(\x0b\x32\x1f.google.cloud.compute.v1.Errors\"\xd7\x02\n\x0c\x45rrorDetails\x12>\n\nerror_info\x18\x85\xa1\x85\x0c \x01(\x0b\x32\".google.cloud.compute.v1.ErrorInfoH\x00\x88\x01\x01\x12\x33\n\x04help\x18\xc1\x9e\xc3\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.HelpH\x01\x88\x01\x01\x12M\n\x11localized_message\x18\xc3\xfe\xf2\xc0\x01 \x01(\x0b\x32).google.cloud.compute.v1.LocalizedMessageH\x02\x88\x01\x01\x12\x46\n\nquota_info\x18\x95\xd4\xe4, \x01(\x0b\x32*.google.cloud.compute.v1.QuotaExceededInfoH\x03\x88\x01\x01\x42\r\n\x0b_error_infoB\x07\n\x05_helpB\x14\n\x12_localized_messageB\r\n\x0b_quota_info\"\xcd\x01\n\tErrorInfo\x12\x17\n\x06\x64omain\x18\xc4\xa9\xcf\x87\x01 \x01(\tH\x00\x88\x01\x01\x12G\n\tmetadatas\x18\xa4\xd6\x87\x04 \x03(\x0b\x32\x31.google.cloud.compute.v1.ErrorInfo.MetadatasEntry\x12\x16\n\x06reason\x18\xc4\xa4\x96\x42 \x01(\tH\x01\x88\x01\x01\x1a\x30\n\x0eMetadatasEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\t\n\x07_domainB\t\n\x07_reason\"\xb7\x01\n\x06\x45rrors\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\tH\x00\x88\x01\x01\x12@\n\rerror_details\x18\x8b\xc6\xfb\x82\x01 \x03(\x0b\x32%.google.cloud.compute.v1.ErrorDetails\x12\x19\n\x08location\x18\xb5\xbf\xbe\x8a\x01 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x02\x88\x01\x01\x42\x07\n\x05_codeB\x0b\n\t_locationB\n\n\x08_message\"\xdd\x02\n\x15\x45xchangedPeeringRoute\x12\x1b\n\ndest_range\x18\xe0\xb2\xea\xb5\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08imported\x18\x84\xd6\xcc\x36 \x01(\x08H\x01\x88\x01\x01\x12\x1f\n\x0fnext_hop_region\x18\xf6\xc0\xb9: \x01(\tH\x02\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\rH\x03\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x04\x88\x01\x01\"u\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x1d\n\x15\x44YNAMIC_PEERING_ROUTE\x10\xaa\x80\x82\xe0\x01\x12\x1c\n\x14STATIC_PEERING_ROUTE\x10\xb9\xc0\xde\xe1\x01\x12\x1c\n\x14SUBNET_PEERING_ROUTE\x10\xe8\x8d\x8d\xde\x01\x42\r\n\x0b_dest_rangeB\x0b\n\t_importedB\x12\n\x10_next_hop_regionB\x0b\n\t_priorityB\x07\n\x05_type\"\xbc\x02\n\x1a\x45xchangedPeeringRoutesList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12@\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32..google.cloud.compute.v1.ExchangedPeeringRoute\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb3\x02\n\"ExpandIpCidrRangeSubnetworkRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x80\x01\n1subnetworks_expand_ip_cidr_range_request_resource\x18\xde\xd0\xba\xe3\x01 \x01(\x0b\x32<.google.cloud.compute.v1.SubnetworksExpandIpCidrRangeRequestB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa9\x01\n\x04\x45xpr\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nexpression\x18\x98\xa5\xee\xa7\x01 \x01(\tH\x01\x88\x01\x01\x12\x19\n\x08location\x18\xb5\xbf\xbe\x8a\x01 \x01(\tH\x02\x88\x01\x01\x12\x15\n\x05title\x18\xd8\xc4\xd0\x34 \x01(\tH\x03\x88\x01\x01\x42\x0e\n\x0c_descriptionB\r\n\x0b_expressionB\x0b\n\t_locationB\x08\n\x06_title\"\x9e\x06\n\x12\x45xternalVpnGateway\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12K\n\ninterfaces\x18\xda\xf4\xe0\x05 \x03(\x0b\x32\x34.google.cloud.compute.v1.ExternalVpnGatewayInterface\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x04\x88\x01\x01\x12K\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x37.google.cloud.compute.v1.ExternalVpnGateway.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12I\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32\x31.google.cloud.compute.v1.ExternalVpnGatewayParamsH\x06\x88\x01\x01\x12 \n\x0fredundancy_type\x18\x9c\xce\xb7\x81\x01 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8f\x01\n\x0eRedundancyType\x12\x1d\n\x19UNDEFINED_REDUNDANCY_TYPE\x10\x00\x12\x1b\n\x13\x46OUR_IPS_REDUNDANCY\x10\xe9\xd2\xff\xf7\x01\x12%\n\x1eSINGLE_IP_INTERNALLY_REDUNDANT\x10\xf9\xc1\xed?\x12\x1a\n\x12TWO_IPS_REDUNDANCY\x10\xa3\xf7\x82\xaf\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\t\n\x07_paramsB\x12\n\x10_redundancy_typeB\x0c\n\n_self_link\"\x92\x01\n\x1b\x45xternalVpnGatewayInterface\x12\x10\n\x02id\x18\x9b\x1a \x01(\rH\x00\x88\x01\x01\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x0cipv6_address\x18\x9c\xb3\xef\xa2\x01 \x01(\tH\x02\x88\x01\x01\x42\x05\n\x03_idB\r\n\x0b_ip_addressB\x0f\n\r_ipv6_address\"\xd4\x02\n\x16\x45xternalVpnGatewayList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12=\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32+.google.cloud.compute.v1.ExternalVpnGateway\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xc5\x01\n\x18\x45xternalVpnGatewayParams\x12m\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32J.google.cloud.compute.v1.ExternalVpnGatewayParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xb2\x01\n\x11\x46ileContentBuffer\x12\x18\n\x07\x63ontent\x18\xf9\xe8\xdc\xc5\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\tfile_type\x18\x9d\xc0\xad\x8c\x01 \x01(\tH\x01\x88\x01\x01\"M\n\x08\x46ileType\x12\x17\n\x13UNDEFINED_FILE_TYPE\x10\x00\x12\t\n\x03\x42IN\x10\xe7\x81\x04\x12\x10\n\tUNDEFINED\x10\xb0\xe2\xdd\x41\x12\x0b\n\x04X509\x10\xa6\x9b\xa3\x01\x42\n\n\x08_contentB\x0c\n\n_file_type\"\x9c\x07\n\x08\x46irewall\x12\x34\n\x07\x61llowed\x18\xa8\x83\xb8M \x03(\x0b\x32 .google.cloud.compute.v1.Allowed\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x33\n\x06\x64\x65nied\x18\x9b\xf7\x9d\x83\x01 \x03(\x0b\x32\x1f.google.cloud.compute.v1.Denied\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1e\n\x12\x64\x65stination_ranges\x18\xa7\xb8\xe2\x91\x01 \x03(\t\x12\x19\n\tdirection\x18\xff\x8e\x80\x35 \x01(\tH\x02\x88\x01\x01\x12\x19\n\x08\x64isabled\x18\xfc\xf4\x98\x81\x01 \x01(\x08H\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12G\n\nlog_config\x18\x9d\xd1\xc1\xa7\x01 \x01(\x0b\x32*.google.cloud.compute.v1.FirewallLogConfigH\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x08\x88\x01\x01\x12?\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallParamsH\t\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\n\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0b\x88\x01\x01\x12\x18\n\rsource_ranges\x18\xfa\xfe\xb4_ \x03(\t\x12\"\n\x17source_service_accounts\x18\xd4\xeb\x8e\x32 \x03(\t\x12\x17\n\x0bsource_tags\x18\xbd\xbb\xd1\xd7\x01 \x03(\t\x12#\n\x17target_service_accounts\x18\x9e\x8e\x9c\xda\x01 \x03(\t\x12\x16\n\x0btarget_tags\x18\x87\x9c\xff\x1d \x03(\t\"E\n\tDirection\x12\x17\n\x13UNDEFINED_DIRECTION\x10\x00\x12\x0e\n\x06\x45GRESS\x10\xf5\xf6\xb4\xce\x01\x12\x0f\n\x07INGRESS\x10\x95\xfd\xbe\xf6\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0c\n\n_directionB\x0b\n\t_disabledB\x05\n\x03_idB\x07\n\x05_kindB\r\n\x0b_log_configB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_paramsB\x0b\n\t_priorityB\x0c\n\n_self_link\"\xa1\x02\n\x0c\x46irewallList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x33\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32!.google.cloud.compute.v1.Firewall\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbd\x01\n\x11\x46irewallLogConfig\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x08metadata\x18\xaf\xf6\xb5) \x01(\tH\x01\x88\x01\x01\"]\n\x08Metadata\x12\x16\n\x12UNDEFINED_METADATA\x10\x00\x12\x1c\n\x14\x45XCLUDE_ALL_METADATA\x10\x92\xbd\xc1\x9f\x01\x12\x1b\n\x14INCLUDE_ALL_METADATA\x10\x84\xcd\xbfNB\t\n\x07_enableB\x0b\n\t_metadata\"\xb1\x01\n\x0e\x46irewallParams\x12\x63\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32@.google.cloud.compute.v1.FirewallParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x97\x01\n(FirewallPoliciesListAssociationsResponse\x12L\n\x0c\x61ssociations\x18\x92\xe8\xca\xf2\x01 \x03(\x0b\x32\x32.google.cloud.compute.v1.FirewallPolicyAssociation\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_kind\"\xab\x01\n\x1a\x46irewallPoliciesScopedList\x12\x46\n\x11\x66irewall_policies\x18\xaf\x8b\x95\xbb\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x99\x07\n\x0e\x46irewallPolicy\x12L\n\x0c\x61ssociations\x18\x92\xe8\xca\xf2\x01 \x03(\x0b\x32\x32.google.cloud.compute.v1.FirewallPolicyAssociation\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0c\x64isplay_name\x18\xe8\x87\x91\x02 \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12O\n\x16packet_mirroring_rules\x18\xc4\xff\xc0\xfd\x01 \x03(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRule\x12\x16\n\x06parent\x18\xaa\x91\xac% \x01(\tH\x07\x88\x01\x01\x12\x1b\n\x0bpolicy_type\x18\xa7\xa4\xd4\x08 \x01(\tH\x08\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\t\x88\x01\x01\x12!\n\x10rule_tuple_count\x18\x95\xc2\x96\xb9\x01 \x01(\x05H\n\x88\x01\x01\x12=\n\x05rules\x18\xf7\x91\xf5\x33 \x03(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRule\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0b\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x0c\x88\x01\x01\x12\x1b\n\nshort_name\x18\xee\xb8\xd0\xea\x01 \x01(\tH\r\x88\x01\x01\"S\n\nPolicyType\x12\x19\n\x15UNDEFINED_POLICY_TYPE\x10\x00\x12\x17\n\x10RDMA_ROCE_POLICY\x10\x99\xb5\xf7\x46\x12\x11\n\nVPC_POLICY\x10\xe8\x8a\xb8#B\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0f\n\r_display_nameB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_parentB\x0e\n\x0c_policy_typeB\t\n\x07_regionB\x13\n\x11_rule_tuple_countB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\r\n\x0b_short_name\"\x8a\x02\n\x19\x46irewallPolicyAssociation\x12!\n\x11\x61ttachment_target\x18\xad\xb0\xe8S \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0c\x64isplay_name\x18\xe8\x87\x91\x02 \x01(\tH\x01\x88\x01\x01\x12#\n\x12\x66irewall_policy_id\x18\xc9\xbd\xaa\xaa\x01 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\nshort_name\x18\xee\xb8\xd0\xea\x01 \x01(\tH\x04\x88\x01\x01\x42\x14\n\x12_attachment_targetB\x0f\n\r_display_nameB\x15\n\x13_firewall_policy_idB\x07\n\x05_nameB\r\n\x0b_short_name\"\x83\x02\n\x12\x46irewallPolicyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x03\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\n\n\x08_warning\"\xb7\x06\n\x12\x46irewallPolicyRule\x12\x16\n\x06\x61\x63tion\x18\xb6\xfc\xbdY \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x19\n\tdirection\x18\xff\x8e\x80\x35 \x01(\tH\x02\x88\x01\x01\x12\x19\n\x08\x64isabled\x18\xfc\xf4\x98\x81\x01 \x01(\x08H\x03\x88\x01\x01\x12\x1f\n\x0e\x65nable_logging\x18\xa3\xc9\xed\x8c\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12I\n\x05match\x18\xc5\xb3\xb7\x31 \x01(\x0b\x32\x32.google.cloud.compute.v1.FirewallPolicyRuleMatcherH\x06\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x07\x88\x01\x01\x12\x19\n\trule_name\x18\xee\xb3\xae\x1a \x01(\tH\x08\x88\x01\x01\x12!\n\x10rule_tuple_count\x18\x95\xc2\x96\xb9\x01 \x01(\x05H\t\x88\x01\x01\x12&\n\x16security_profile_group\x18\xaa\xb3\xf3\x62 \x01(\tH\n\x88\x01\x01\x12\x1c\n\x10target_resources\x18\xf7\xd1\xf0\xfb\x01 \x03(\t\x12T\n\x12target_secure_tags\x18\xb3\xc4\x9c\xdf\x01 \x03(\x0b\x32\x34.google.cloud.compute.v1.FirewallPolicyRuleSecureTag\x12#\n\x17target_service_accounts\x18\x9e\x8e\x9c\xda\x01 \x03(\t\x12\x1b\n\x0btls_inspect\x18\xd0\xbd\xda\x14 \x01(\x08H\x0b\x88\x01\x01\"E\n\tDirection\x12\x17\n\x13UNDEFINED_DIRECTION\x10\x00\x12\x0e\n\x06\x45GRESS\x10\xf5\xf6\xb4\xce\x01\x12\x0f\n\x07INGRESS\x10\x95\xfd\xbe\xf6\x01\x42\t\n\x07_actionB\x0e\n\x0c_descriptionB\x0c\n\n_directionB\x0b\n\t_disabledB\x11\n\x0f_enable_loggingB\x07\n\x05_kindB\x08\n\x06_matchB\x0b\n\t_priorityB\x0c\n\n_rule_nameB\x13\n\x11_rule_tuple_countB\x19\n\x17_security_profile_groupB\x0e\n\x0c_tls_inspect\"\xd7\x07\n\x19\x46irewallPolicyRuleMatcher\x12\x1f\n\x13\x64\x65st_address_groups\x18\xbc\xef\xc2\xdf\x01 \x03(\t\x12\x16\n\ndest_fqdns\x18\xa1\xc1\xe2\xb0\x01 \x03(\t\x12\x1a\n\x0e\x64\x65st_ip_ranges\x18\x91\xd7\xee\xa0\x01 \x03(\t\x12$\n\x14\x64\x65st_network_context\x18\x81\xf2\xb3$ \x01(\tH\x00\x88\x01\x01\x12\"\n\x11\x64\x65st_network_type\x18\xa8\xba\xb7\xc3\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x11\x64\x65st_region_codes\x18\x98\xab\xf9^ \x03(\t\x12$\n\x19\x64\x65st_threat_intelligences\x18\xac\xf3\x95\x39 \x03(\t\x12Z\n\x0elayer4_configs\x18\xb5\xdc\x8e\xb2\x01 \x03(\x0b\x32>.google.cloud.compute.v1.FirewallPolicyRuleMatcherLayer4Config\x12\x1e\n\x12src_address_groups\x18\xba\x98\x8d\xd0\x01 \x03(\t\x12\x15\n\tsrc_fqdns\x18\xe3\xcc\xed\xcf\x01 \x03(\t\x12\x19\n\rsrc_ip_ranges\x18\xd3\x80\x87\xce\x01 \x03(\t\x12#\n\x13src_network_context\x18\xc3\xe8\xb3\x46 \x01(\tH\x02\x88\x01\x01\x12!\n\x10src_network_type\x18\xa6\xf2\xdd\x93\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0csrc_networks\x18\x80\x80\xebu \x03(\t\x12\x1b\n\x10src_region_codes\x18\x96\xe3\x9f/ \x03(\t\x12Q\n\x0fsrc_secure_tags\x18\x86\x94\xce\xf2\x01 \x03(\x0b\x32\x34.google.cloud.compute.v1.FirewallPolicyRuleSecureTag\x12$\n\x18src_threat_intelligences\x18\xaa\xef\xa8\x9a\x01 \x03(\t\"8\n\x12\x44\x65stNetworkContext\x12\"\n\x1eUNDEFINED_DEST_NETWORK_CONTEXT\x10\x00\"2\n\x0f\x44\x65stNetworkType\x12\x1f\n\x1bUNDEFINED_DEST_NETWORK_TYPE\x10\x00\"6\n\x11SrcNetworkContext\x12!\n\x1dUNDEFINED_SRC_NETWORK_CONTEXT\x10\x00\"0\n\x0eSrcNetworkType\x12\x1e\n\x1aUNDEFINED_SRC_NETWORK_TYPE\x10\x00\x42\x17\n\x15_dest_network_contextB\x14\n\x12_dest_network_typeB\x16\n\x14_src_network_contextB\x13\n\x11_src_network_type\"g\n%FirewallPolicyRuleMatcherLayer4Config\x12\x1c\n\x0bip_protocol\x18\xb0\x9d\xfa\xe2\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x05ports\x18\x92\xf0\xf9\x32 \x03(\tB\x0e\n\x0c_ip_protocol\"\xa2\x01\n\x1b\x46irewallPolicyRuleSecureTag\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x01\x88\x01\x01\"C\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x10\n\tEFFECTIVE\x10\x87\xf3\xb8t\x12\x13\n\x0bINEFFECTIVE\x10\x82\xd4\x96\x91\x01\x42\x07\n\x05_nameB\x08\n\x06_state\"\x83\x01\n\x0e\x46ixedOrPercent\x12\x1b\n\ncalculated\x18\xbe\xd3\x8d\xe1\x01 \x01(\x05H\x00\x88\x01\x01\x12\x15\n\x05\x66ixed\x18\xf4\xce\xbb. \x01(\x05H\x01\x88\x01\x01\x12\x18\n\x07percent\x18\xc5\xc8\xa1\xbc\x01 \x01(\x05H\x02\x88\x01\x01\x42\r\n\x0b_calculatedB\x08\n\x06_fixedB\n\n\x08_percent\"\x89\x02\n\x11\x46lexibleTimeRange\x12\x1c\n\x0cmax_duration\x18\x8f\xd4\x86\x13 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0cmin_duration\x18\xe1\xa9\xa3\xf5\x01 \x01(\tH\x01\x88\x01\x01\x12,\n\x1bstart_time_not_earlier_than\x18\xc1\xe8\xea\xe9\x01 \x01(\tH\x02\x88\x01\x01\x12)\n\x19start_time_not_later_than\x18\xb5\x91\xba\x65 \x01(\tH\x03\x88\x01\x01\x42\x0f\n\r_max_durationB\x0f\n\r_min_durationB\x1e\n\x1c_start_time_not_earlier_thanB\x1c\n\x1a_start_time_not_later_than\"\x8f\x18\n\x0e\x46orwardingRule\x12\x1b\n\x0bI_p_address\x18\xaf\x8d\xbf\x14 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0cI_p_protocol\x18\xbd\xf6\xde\xe8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1a\n\tall_ports\x18\xf4\xaf\xa3\xd4\x01 \x01(\x08H\x02\x88\x01\x01\x12$\n\x13\x61llow_global_access\x18\x8a\xc6\x91\xee\x01 \x01(\x08H\x03\x88\x01\x01\x12\'\n\x17\x61llow_psc_global_access\x18\xcb\x85\xd1} \x01(\x08H\x04\x88\x01\x01\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tH\x05\x88\x01\x01\x12%\n\x14\x62\x61se_forwarding_rule\x18\x90\xdb\xa3\xfa\x01 \x01(\tH\x06\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x07\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x08\x88\x01\x01\x12?\n/external_managed_backend_bucket_migration_state\x18\xaa\xa4\xb4\x33 \x01(\tH\t\x88\x01\x01\x12L\n \x03(\x0b\x32*.google.cloud.compute.v1.FutureReservation\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xf0\x04\n\x1d\x46utureResourcesRecommendation\x12\x18\n\x08\x65nd_time\x18\xb1\xa7\xe7\x36 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x08location\x18\xb5\xbf\xbe\x8a\x01 \x01(\tH\x01\x88\x01\x01\x12\x66\n\x0fother_locations\x18\xef\xf9\xc0U \x03(\x0b\x32J.google.cloud.compute.v1.FutureResourcesRecommendation.OtherLocationsEntry\x12\"\n\x11recommendation_id\x18\xe1\xd6\xa3\xe2\x01 \x01(\tH\x02\x88\x01\x01\x12#\n\x13recommendation_type\x18\x80\xe8\x83n \x01(\tH\x03\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x04\x88\x01\x01\x1az\n\x13OtherLocationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12R\n\x05value\x18\x02 \x01(\x0b\x32\x43.google.cloud.compute.v1.FutureResourcesRecommendationOtherLocation:\x02\x38\x01\"z\n\x12RecommendationType\x12!\n\x1dUNDEFINED_RECOMMENDATION_TYPE\x10\x00\x12\x19\n\x12\x46UTURE_RESERVATION\x10\xb0\xd6\xc8\x13\x12&\n\x1fRECOMMENDATION_TYPE_UNSPECIFIED\x10\xd8\x8a\x88\x43\x42\x0b\n\t_end_timeB\x0b\n\t_locationB\x14\n\x12_recommendation_idB\x16\n\x14_recommendation_typeB\r\n\x0b_start_time\"\x9b\x02\n*FutureResourcesRecommendationOtherLocation\x12\x18\n\x07\x64\x65tails\x18\xc2\xe4\xe3\xe6\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x01\x88\x01\x01\"\xa3\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x1a\n\x12\x43ONDITIONS_NOT_MET\x10\xa9\x8f\xb2\xad\x01\x12\x15\n\rNOT_SUPPORTED\x10\x82\x94\xce\x97\x01\x12\x13\n\x0bNO_CAPACITY\x10\xf8\xaa\xe2\x82\x01\x12&\n\x1fOTHER_LOCATION_STATUS_UNDEFINED\x10\xde\x9f\x96j\x12\x13\n\x0bRECOMMENDED\x10\xbb\xe4\xa1\xb0\x01\x42\n\n\x08_detailsB\t\n\x07_status\"\xf6\x03\n\x13\x46utureResourcesSpec\x12 \n\x0f\x64\x65ployment_type\x18\xf4\x80\x96\xbd\x01 \x01(\tH\x00\x88\x01\x01\x12\\\n\x0flocation_policy\x18\xfc\xb9\x87\xde\x01 \x01(\x0b\x32:.google.cloud.compute.v1.FutureResourcesSpecLocationPolicyH\x01\x88\x01\x01\x12^\n\x10target_resources\x18\xf7\xd1\xf0\xfb\x01 \x01(\x0b\x32;.google.cloud.compute.v1.FutureResourcesSpecTargetResourcesH\x02\x88\x01\x01\x12K\n\x0ftime_range_spec\x18\xaf\xcc\xc7\x37 \x01(\x0b\x32*.google.cloud.compute.v1.FlexibleTimeRangeH\x03\x88\x01\x01\"a\n\x0e\x44\x65ploymentType\x12\x1d\n\x19UNDEFINED_DEPLOYMENT_TYPE\x10\x00\x12\x0c\n\x05\x44\x45NSE\x10\xff\x95\xfb\x1e\x12\"\n\x1b\x44\x45PLOYMENT_TYPE_UNSPECIFIED\x10\xcc\xf7\xfdoB\x12\n\x10_deployment_typeB\x12\n\x10_location_policyB\x13\n\x11_target_resourcesB\x12\n\x10_time_range_spec\"\xa9\x05\n%FutureResourcesSpecAggregateResources\x12\"\n\x11\x61\x63\x63\x65lerator_count\x18\xbb\xb4\xdf\xf0\x01 \x01(\x03H\x00\x88\x01\x01\x12\x19\n\tvm_family\x18\xec\xbb\xce; \x01(\tH\x01\x88\x01\x01\x12\x1e\n\rworkload_type\x18\x82\xfe\xb0\x82\x01 \x01(\tH\x02\x88\x01\x01\"\x8a\x03\n\x08VmFamily\x12\x17\n\x13UNDEFINED_VM_FAMILY\x10\x00\x12%\n\x1eVM_FAMILY_CLOUD_TPU_DEVICE_CT3\x10\xfc\x8d\xb7\x14\x12+\n$VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L\x10\xe3\x82\xc1\x33\x12/\n(VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP\x10\xf3\xd6\xf5\x08\x12/\n\'VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT6E\x10\x95\xc9\x9c\xbe\x01\x12*\n\"VM_FAMILY_CLOUD_TPU_POD_SLICE_CT3P\x10\xb8\xd1\xda\xf6\x01\x12*\n\"VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P\x10\xd7\xd1\xda\xf6\x01\x12*\n\"VM_FAMILY_CLOUD_TPU_POD_SLICE_CT5P\x10\xf6\xd1\xda\xf6\x01\x12+\n#VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X\x10\xd0\xd2\xb2\xe7\x01\"^\n\x0cWorkloadType\x12\x1b\n\x17UNDEFINED_WORKLOAD_TYPE\x10\x00\x12\x0c\n\x05\x42\x41TCH\x10\x9a\xbe\x83\x1e\x12\x0e\n\x07SERVING\x10\xec\xa7\xbd\x08\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x14\n\x12_accelerator_countB\x0c\n\n_vm_familyB\x10\n\x0e_workload_type\"\xd2\x01\n$FutureResourcesSpecLocalSsdPartition\x12\x1e\n\x0e\x64isk_interface\x18\x97\xaa\xeb\x1f \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x01\x88\x01\x01\"G\n\rDiskInterface\x12\x1c\n\x18UNDEFINED_DISK_INTERFACE\x10\x00\x12\x0b\n\x04NVME\x10\xe0\x82\x93\x01\x12\x0b\n\x04SCSI\x10\xa6\x81\x9b\x01\x42\x11\n\x0f_disk_interfaceB\x0f\n\r_disk_size_gb\"\xfb\x01\n!FutureResourcesSpecLocationPolicy\x12`\n\tlocations\x18\xde\xae\x91\xc5\x01 \x03(\x0b\x32I.google.cloud.compute.v1.FutureResourcesSpecLocationPolicy.LocationsEntry\x1at\n\x0eLocationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12Q\n\x05value\x18\x02 \x01(\x0b\x32\x42.google.cloud.compute.v1.FutureResourcesSpecLocationPolicyLocation:\x02\x38\x01\"\xb8\x01\n)FutureResourcesSpecLocationPolicyLocation\x12\x1a\n\npreference\x18\xdb\xf9\xf2G \x01(\tH\x00\x88\x01\x01\"`\n\nPreference\x12\x18\n\x14UNDEFINED_PREFERENCE\x10\x00\x12\x0c\n\x05\x41LLOW\x10\xa9\xd6\xde\x1d\x12\n\n\x04\x44\x45NY\x10\x8c\xec\x7f\x12\x1e\n\x16PREFERENCE_UNSPECIFIED\x10\xb3\xeb\xce\xec\x01\x42\r\n\x0b_preference\"\xec\x01\n\'FutureResourcesSpecSpecificSKUResources\x12\x1e\n\x0einstance_count\x18\xe5\x89\xef$ \x01(\x03H\x00\x88\x01\x01\x12_\n\x14local_ssd_partitions\x18\xb8\xc6\xb8\xe0\x01 \x03(\x0b\x32=.google.cloud.compute.v1.FutureResourcesSpecLocalSsdPartition\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x01\x88\x01\x01\x42\x11\n\x0f_instance_countB\x0f\n\r_machine_type\"\xa6\x02\n\"FutureResourcesSpecTargetResources\x12\x63\n\x13\x61ggregate_resources\x18\xa5\xa7\x9fV \x01(\x0b\x32>.google.cloud.compute.v1.FutureResourcesSpecAggregateResourcesH\x00\x88\x01\x01\x12h\n\x16specific_sku_resources\x18\xb6\xe2\xac\x7f \x01(\x0b\x32@.google.cloud.compute.v1.FutureResourcesSpecSpecificSKUResourcesH\x01\x88\x01\x01\x42\x16\n\x14_aggregate_resourcesB\x19\n\x17_specific_sku_resources\"\xcd\x02\n\x0fGRPCHealthCheck\x12!\n\x11grpc_service_name\x18\xd6\xa8\x8d\x41 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x01\x88\x01\x01\x12\x19\n\tport_name\x18\x89\x87\xe7\x13 \x01(\tH\x02\x88\x01\x01\x12\"\n\x12port_specification\x18\xc5\xeb\xcc\x18 \x01(\tH\x03\x88\x01\x01\"~\n\x11PortSpecification\x12 \n\x1cUNDEFINED_PORT_SPECIFICATION\x10\x00\x12\x15\n\x0eUSE_FIXED_PORT\x10\xe4\x88\xdbZ\x12\x16\n\x0eUSE_NAMED_PORT\x10\xbf\xcf\xc7\xa6\x01\x12\x18\n\x10USE_SERVING_PORT\x10\xcc\xd1\xf5\xac\x01\x42\x14\n\x12_grpc_service_nameB\x07\n\x05_portB\x0c\n\n_port_nameB\x15\n\x13_port_specification\"\xa7\x02\n\x12GRPCTLSHealthCheck\x12!\n\x11grpc_service_name\x18\xd6\xa8\x8d\x41 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x01\x88\x01\x01\x12\"\n\x12port_specification\x18\xc5\xeb\xcc\x18 \x01(\tH\x02\x88\x01\x01\"~\n\x11PortSpecification\x12 \n\x1cUNDEFINED_PORT_SPECIFICATION\x10\x00\x12\x15\n\x0eUSE_FIXED_PORT\x10\xe4\x88\xdbZ\x12\x16\n\x0eUSE_NAMED_PORT\x10\xbf\xcf\xc7\xa6\x01\x12\x18\n\x10USE_SERVING_PORT\x10\xcc\xd1\xf5\xac\x01\x42\x14\n\x12_grpc_service_nameB\x07\n\x05_portB\x15\n\x13_port_specification\"l\n\x19GetAcceleratorTypeRequest\x12 \n\x10\x61\x63\x63\x65lerator_type\x18\x8e\xe1\xe8\x41 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"^\n\x11GetAddressRequest\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"f\n#GetAssociationFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_name\"\x86\x01\n*GetAssociationNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x42\x07\n\x05_name\"q\n/GetAssociationOrganizationSecurityPolicyRequest\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x07\n\x05_name\"\xa4\x01\n0GetAssociationRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x42\x07\n\x05_name\"b\n\x14GetAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"R\n\x17GetBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"U\n\x18GetBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"Y\n\x1aGetCrossSiteNetworkRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"Z\n!GetDiagnosticsInterconnectRequest\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"U\n\x0eGetDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"^\n\x12GetDiskTypeRequest\x12\x19\n\tdisk_type\x18\x9c\xe9\xac, \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\x93\x01\n$GetEffectiveFirewallsInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11network_interface\x18\xe8\xc0\x9d\xae\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"W\n#GetEffectiveFirewallsNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"\x83\x01\n7GetEffectiveFirewallsRegionNetworkFirewallPolicyRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"n\n1GetEffectiveSecurityPoliciesBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"4\n2GetEffectiveSecurityPoliciesBackendServiceResponse\"]\n\x1cGetExternalVpnGatewayRequest\x12$\n\x14\x65xternal_vpn_gateway\x18\x85\xd7\xb3\x34 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"<\n\x18GetFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\"H\n\x12GetFirewallRequest\x12\x19\n\x08\x66irewall\x18\x80\xfa\xd5\xf3\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"m\n\x18GetForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"M\n\x19GetFromFamilyImageRequest\x12\x17\n\x06\x66\x61mily\x18\xe4\xb6\xe1\x9c\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"p\n\x1bGetFutureReservationRequest\x12\"\n\x12\x66uture_reservation\x18\xd0\xc6\xe6\x1a \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"L\n\x17GetGlobalAddressRequest\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"[\n\x1eGetGlobalForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"h\n$GetGlobalNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"V\n\x19GetGlobalOperationRequest\x12 \n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\n\xe0\x41\x02\xfaG\x04name\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"s\n%GetGlobalOrganizationOperationRequest\x12 \n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\n\xe0\x41\x02\xfaG\x04name\x12\x1a\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tH\x00\x88\x01\x01\x42\x0c\n\n_parent_id\"j\n&GetGlobalPublicDelegatedPrefixeRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\"\xc7\x01\n!GetGuestAttributesInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\nquery_path\x18\xbc\x82\xe1\xaf\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0cvariable_key\x18\x9c\x84\xb0N \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_query_pathB\x0f\n\r_variable_key\"\xbf\x01\n\x1eGetHealthBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x62\n!resource_group_reference_resource\x18\xd3\xfe\xed\x35 \x01(\x0b\x32/.google.cloud.compute.v1.ResourceGroupReferenceB\x03\xe0\x41\x02\"O\n\x15GetHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"\xdd\x01\n$GetHealthRegionBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x62\n!resource_group_reference_resource\x18\xd3\xfe\xed\x35 \x01(\x0b\x32/.google.cloud.compute.v1.ResourceGroupReferenceB\x03\xe0\x41\x02\"\xc4\x01\n\x1aGetHealthTargetPoolRequest\x12X\n\x1binstance_reference_resource\x18\xec\xe4\xd6\x8b\x01 \x01(\x0b\x32*.google.cloud.compute.v1.InstanceReferenceB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\"\xad\x01\n GetIamPolicyBackendBucketRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xae\x01\n!GetIamPolicyBackendServiceRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xba\x01\n\x17GetIamPolicyDiskRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\x95\x01\n!GetIamPolicyFirewallPolicyRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xa5\x01\n\x18GetIamPolicyImageRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xbe\x01\n\x1bGetIamPolicyInstanceRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xb0\x01\n#GetIamPolicyInstanceTemplateRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc5\x01\n\"GetIamPolicyInstantSnapshotRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xbb\x01\n.GetIamPolicyInterconnectAttachmentGroupRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xb1\x01\n$GetIamPolicyInterconnectGroupRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xa7\x01\n\x1aGetIamPolicyLicenseRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xac\x01\n\x1fGetIamPolicyMachineImageRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc9\x01\n$GetIamPolicyNetworkAttachmentRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xb5\x01\n(GetIamPolicyNetworkFirewallPolicyRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xbf\x01\n\x1cGetIamPolicyNodeGroupRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc4\x01\n\x1fGetIamPolicyNodeTemplateRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xcc\x01\n\'GetIamPolicyRegionBackendServiceRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc2\x01\n\x1dGetIamPolicyRegionDiskRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xcd\x01\n(GetIamPolicyRegionInstantSnapshotRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xd3\x01\n.GetIamPolicyRegionNetworkFirewallPolicyRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xe7\x01\n#GetIamPolicyReservationBlockRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1f\n\x0fparent_resource\x18\x83\x98\xd0\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc1\x01\n\x1eGetIamPolicyReservationRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xea\x01\n&GetIamPolicyReservationSubBlockRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1f\n\x0fparent_resource\x18\x83\x98\xd0\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc6\x01\n!GetIamPolicyResourcePolicyRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc9\x01\n$GetIamPolicyServiceAttachmentRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xa8\x01\n\x1bGetIamPolicySnapshotRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc1\x01\n\x1eGetIamPolicyStoragePoolRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc2\x01\n\x1dGetIamPolicySubnetworkRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"c\n\x19GetImageFamilyViewRequest\x12\x17\n\x06\x66\x61mily\x18\xe4\xb6\xe1\x9c\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"A\n\x0fGetImageRequest\x12\x15\n\x05image\x18\xdb\xd2\xea/ \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"w\n\x1eGetInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xa4\x01\n+GetInstanceGroupManagerResizeRequestRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x0eresize_request\x18\x84\x84\xb9g \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"h\n\x17GetInstanceGroupRequest\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"]\n\x12GetInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"J\n\x19GetInstanceSettingRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"Y\n\x1aGetInstanceTemplateRequest\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"m\n\x19GetInstantSnapshotRequest\x12!\n\x10instant_snapshot\x18\xe2\xdc\xdf\xba\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"o\n%GetInterconnectAttachmentGroupRequest\x12-\n\x1dinterconnect_attachment_group\x18\xf4\xef\x98$ \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"}\n GetInterconnectAttachmentRequest\x12(\n\x17interconnect_attachment\x18\xf4\x8a\xf7\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"[\n\x1bGetInterconnectGroupRequest\x12#\n\x12interconnect_group\x18\x8e\xb7\xa9\xb9\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"a\n\x1eGetInterconnectLocationRequest\x12&\n\x15interconnect_location\x18\xc6\xd8\xdb\xea\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"n\n$GetInterconnectRemoteLocationRequest\x12-\n\x1cinterconnect_remote_location\x18\xdd\xcb\xad\x8a\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"O\n\x16GetInterconnectRequest\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"M\n\x15GetLicenseCodeRequest\x12\x1b\n\x0clicense_code\x18\xab\xc6Y \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"E\n\x11GetLicenseRequest\x12\x17\n\x07license\x18\xc1\x88\xc2O \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"P\n\x16GetMachineImageRequest\x12\x1d\n\rmachine_image\x18\xe3\xfe\xfe \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"d\n\x15GetMachineTypeRequest\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"[\n\"GetMacsecConfigInterconnectRequest\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"\x8c\x01\n\x19GetNatIpInfoRouterRequest\x12\x19\n\x08nat_name\x18\xe9\xad\xf8\xca\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_nat_name\"\xf9\x02\n\x1fGetNatMappingInfoRoutersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x19\n\x08nat_name\x18\xe9\xad\xf8\xca\x01 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_nat_nameB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"r\n\x1bGetNetworkAttachmentRequest\x12\"\n\x12network_attachment\x18\xd4\x97\x8fk \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x86\x01\n$GetNetworkEdgeSecurityServiceRequest\x12-\n\x1dnetwork_edge_security_service\x18\xa7\x9f\xefJ \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"x\n\x1eGetNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\\\n\x1fGetNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"T\n\x18GetNetworkProfileRequest\x12\x1f\n\x0fnetwork_profile\x18\x98\xf9\xc5R \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"E\n\x11GetNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"a\n\x13GetNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"i\n\x16GetNodeTemplateRequest\x12\x1e\n\rnode_template\x18\x97\xe4\x8b\x9a\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"_\n\x12GetNodeTypeRequest\x12\x1a\n\tnode_type\x18\xd7\x96\x90\xde\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\x80\x01\n6GetOperationalStatusInterconnectAttachmentGroupRequest\x12-\n\x1dinterconnect_attachment_group\x18\xf4\xef\x98$ \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"l\n,GetOperationalStatusInterconnectGroupRequest\x12#\n\x12interconnect_group\x18\x8e\xb7\xa9\xb9\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"G\n$GetOrganizationSecurityPolicyRequest\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\"n\n\x19GetPacketMirroringRequest\x12 \n\x10packet_mirroring\x18\xcc\xb9\xd1\n \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x97\x01\n2GetPacketMirroringRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"U\n\x18GetPreviewFeatureRequest\x12 \n\x0fpreview_feature\x18\xff\xfa\xfa\xd8\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\",\n\x11GetProjectRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"f\n!GetPublicAdvertisedPrefixeRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12(\n\x18public_advertised_prefix\x18\x9e\xf7\xc9\x30 \x01(\tB\x03\xe0\x41\x02\"|\n GetPublicDelegatedPrefixeRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"j\n\x1aGetRegionAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"s\n\x1eGetRegionBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"j\n\x1aGetRegionCommitmentRequest\x12\x1b\n\ncommitment\x18\x95\x96\xf3\xe5\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x80\x01\n$GetRegionCompositeHealthCheckRequest\x12\'\n\x16\x63omposite_health_check\x18\x9d\xc0\xd6\xde\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"]\n\x14GetRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"f\n\x18GetRegionDiskTypeRequest\x12\x19\n\tdisk_type\x18\x9c\xe9\xac, \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x85\x01\n\'GetRegionHealthAggregationPolicyRequest\x12)\n\x19health_aggregation_policy\x18\xf2\xcf\xcbr \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"m\n\x1bGetRegionHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"|\n\"GetRegionHealthCheckServiceRequest\x12%\n\x14health_check_service\x18\xdb\x9b\xdd\xc2\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"o\n\x1cGetRegionHealthSourceRequest\x12\x1e\n\rhealth_source\x18\xde\x86\xc5\xb3\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x7f\n$GetRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"p\n\x1dGetRegionInstanceGroupRequest\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"w\n GetRegionInstanceTemplateRequest\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"u\n\x1fGetRegionInstantSnapshotRequest\x12!\n\x10instant_snapshot\x18\xe2\xdc\xdf\xba\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x80\x01\n$GetRegionNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"z\n%GetRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x7f\n$GetRegionNotificationEndpointRequest\x12&\n\x15notification_endpoint\x18\xe9\xbc\xd6\xb3\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"n\n\x19GetRegionOperationRequest\x12 \n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\n\xe0\x41\x02\xfaG\x04name\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"C\n\x10GetRegionRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"r\n\x1eGetRegionSecurityPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\"r\n\x1eGetRegionSslCertificateRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fssl_certificate\x18\xe4\xd7\x92\x16 \x01(\tB\x03\xe0\x41\x02\"i\n\x19GetRegionSslPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tB\x03\xe0\x41\x02\"u\n\x1fGetRegionTargetHttpProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\"w\n GetRegionTargetHttpsProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\"t\n\x1eGetRegionTargetTcpProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12!\n\x10target_tcp_proxy\x18\xe2\xd6\xf0\xef\x01 \x01(\tB\x03\xe0\x41\x02\"c\n\x16GetRegionUrlMapRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\"\x82\x02\n\x1aGetReservationBlockRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11reservation_block\x18\xda\xc4\x89\xfe\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04view\x18\xa5\xf5\xdc\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"U\n\x04View\x12\x12\n\x0eUNDEFINED_VIEW\x10\x00\x12\x0c\n\x05\x42\x41SIC\x10\x8e\xb8\x83\x1e\x12\x1e\n\x16\x42LOCK_VIEW_UNSPECIFIED\x10\x8f\xfc\x94\x83\x01\x12\x0b\n\x04\x46ULL\x10\x8f\xb5\x84\x01\x42\x07\n\x05_view\"c\n\x15GetReservationRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\x8b\x01\n\x19GetReservationSlotRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12!\n\x10reservation_slot\x18\x91\xbd\xa7\x84\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xab\x02\n\x1dGetReservationSubBlockRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12%\n\x15reservation_sub_block\x18\x9b\xca\xec\n \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04view\x18\xa5\xf5\xdc\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"w\n\x04View\x12\x12\n\x0eUNDEFINED_VIEW\x10\x00\x12\x1b\n\x14SUB_BLOCK_VIEW_BASIC\x10\xc5\xf2\xc4p\x12\x1b\n\x13SUB_BLOCK_VIEW_FULL\x10\xf8\xf4\x92\xd2\x01\x12!\n\x1aSUB_BLOCK_VIEW_UNSPECIFIED\x10\x8e\xee\xcduB\x07\n\x05_view\"l\n\x18GetResourcePolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fresource_policy\x18\x83\xa5\xf7K \x01(\tB\x03\xe0\x41\x02\"\x89\x01\n\x1bGetRoutePolicyRouterRequest\x12\x16\n\x06policy\x18\xb2\xca\xb6+ \x01(\tH\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_policy\"A\n\x0fGetRouteRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x05route\x18\xc9\xe4\xea\x33 \x01(\tB\x03\xe0\x41\x02\"[\n\x10GetRouterRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\"g\n\x1cGetRouterStatusRouterRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\"h\n\x1cGetRuleFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x42\x0b\n\t_priority\"\x88\x01\n#GetRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"s\n(GetRuleOrganizationSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"\xa6\x01\n)GetRuleRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"\x9e\x01\n\"GetRuleRegionSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"\x80\x01\n\x1cGetRuleSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"g\n\x1cGetScreenshotInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"T\n\x18GetSecurityPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\"\xad\x01\n\"GetSerialPortOutputInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x05start\x18\xe2\x88\xab\x34 \x01(\x03H\x01\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\x07\n\x05_portB\x08\n\x06_start\"\xa3\x01\n\x1bGetServiceAttachmentRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12#\n\x12service_attachment\x18\xed\xa9\xd0\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1d\n\x0cshow_nat_ips\x18\xcc\xd9\xc0\xe7\x01 \x01(\x08H\x00\x88\x01\x01\x42\x0f\n\r_show_nat_ips\"u\n*GetShieldedInstanceIdentityInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"H\n\x12GetSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08snapshot\x18\xc4\xab\xeb\x87\x01 \x01(\tB\x03\xe0\x41\x02\"4\n\x19GetSnapshotSettingRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"T\n\x18GetSslCertificateRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fssl_certificate\x18\xe4\xd7\x92\x16 \x01(\tB\x03\xe0\x41\x02\"K\n\x13GetSslPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tB\x03\xe0\x41\x02\"k\n\x1aGetStatusVpnGatewayRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1c\n\x0bvpn_gateway\x18\xf9\x83\xf6\xc1\x01 \x01(\tB\x03\xe0\x41\x02\"e\n\x15GetStoragePoolRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1d\n\x0cstorage_pool\x18\xe0\xc6\xf1\xab\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"n\n\x19GetStoragePoolTypeRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11storage_pool_type\x18\xb9\x81\xb0\x88\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xcd\x01\n\x14GetSubnetworkRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x05views\x18\xee\xb4\xc0\x35 \x01(\tH\x00\x88\x01\x01\"F\n\x05Views\x12\x13\n\x0fUNDEFINED_VIEWS\x10\x00\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\x12\x18\n\x10WITH_UTILIZATION\x10\x89\xa0\xaf\xf0\x01\x42\x08\n\x06_views\"W\n\x19GetTargetGrpcProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12!\n\x11target_grpc_proxy\x18\xfb\xb4\xb2\x02 \x01(\tB\x03\xe0\x41\x02\"W\n\x19GetTargetHttpProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\"Y\n\x1aGetTargetHttpsProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\"k\n\x18GetTargetInstanceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12 \n\x0ftarget_instance\x18\x83\x8f\x96\x8a\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"d\n\x14GetTargetPoolRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\"V\n\x18GetTargetSslProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\"V\n\x18GetTargetTcpProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12!\n\x10target_tcp_proxy\x18\xe2\xd6\xf0\xef\x01 \x01(\tB\x03\xe0\x41\x02\"r\n\x1aGetTargetVpnGatewayRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12#\n\x12target_vpn_gateway\x18\xcb\x80\xf6\xfd\x01 \x01(\tB\x03\xe0\x41\x02\"E\n\x10GetUrlMapRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\"\x92\x01\n\x1bGetVersionOperationMetadata\x12^\n\x10inline_sbom_info\x18\x9a\x8e\xb0\x03 \x01(\x0b\x32<.google.cloud.compute.v1.GetVersionOperationMetadataSbomInfoH\x00\x88\x01\x01\x42\x13\n\x11_inline_sbom_info\"\xae\x03\n#GetVersionOperationMetadataSbomInfo\x12\x82\x01\n\x1a\x63urrent_component_versions\x18\xa3\xb8\xaa\x82\x01 \x03(\x0b\x32Z.google.cloud.compute.v1.GetVersionOperationMetadataSbomInfo.CurrentComponentVersionsEntry\x12\x80\x01\n\x19target_component_versions\x18\x8b\x82\xfe\xa4\x01 \x03(\x0b\x32Y.google.cloud.compute.v1.GetVersionOperationMetadataSbomInfo.TargetComponentVersionsEntry\x1a?\n\x1d\x43urrentComponentVersionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a>\n\x1cTargetComponentVersionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xcb\x02\n GetVersionReservationSlotRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x10reservation_slot\x18\x91\xbd\xa7\x84\x01 \x01(\tB\x03\xe0\x41\x02\x12{\n.reservation_slots_get_version_request_resource\x18\xab\x88\xf2\x9f\x01 \x01(\x0b\x32:.google.cloud.compute.v1.ReservationSlotsGetVersionRequestB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xdc\x02\n$GetVersionReservationSubBlockRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12%\n\x15reservation_sub_block\x18\x9b\xca\xec\n \x01(\tB\x03\xe0\x41\x02\x12\x83\x01\n3reservation_sub_blocks_get_version_request_resource\x18\xb5\xfa\xacj \x01(\x0b\x32>.google.cloud.compute.v1.ReservationSubBlocksGetVersionRequestB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"e\n\x14GetVpnGatewayRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1c\n\x0bvpn_gateway\x18\xf9\x83\xf6\xc1\x01 \x01(\tB\x03\xe0\x41\x02\"b\n\x13GetVpnTunnelRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nvpn_tunnel\x18\x93\x94\xca\x44 \x01(\tB\x03\xe0\x41\x02\"n\n\x13GetWireGroupRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nwire_group\x18\xc5\xa4\xb7: \x01(\tB\x03\xe0\x41\x02\"3\n\x18GetXpnHostProjectRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"\xa0\x02\n\x1eGetXpnResourcesProjectsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"j\n\x17GetZoneOperationRequest\x12 \n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\n\xe0\x41\x02\xfaG\x04name\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"?\n\x0eGetZoneRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\x88\x01\n\x1aGlobalAddressesMoveRequest\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12$\n\x13\x64\x65stination_address\x18\xc3\xb1\x9e\xb1\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x16\n\x14_destination_address\"{\n1GlobalNetworkEndpointGroupsAttachEndpointsRequest\x12\x46\n\x11network_endpoints\x18\xad\x91\xbaG \x03(\x0b\x32(.google.cloud.compute.v1.NetworkEndpoint\"{\n1GlobalNetworkEndpointGroupsDetachEndpointsRequest\x12\x46\n\x11network_endpoints\x18\xad\x91\xbaG \x03(\x0b\x32(.google.cloud.compute.v1.NetworkEndpoint\"\xbf\x01\n\"GlobalOrganizationSetPolicyRequest\x12\x36\n\x08\x62indings\x18\x8e\xc5\xa4\xc0\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Binding\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x06policy\x18\xb2\xca\xb6+ \x01(\x0b\x32\x1f.google.cloud.compute.v1.PolicyH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_policy\"\xd1\x01\n\x16GlobalSetLabelsRequest\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x00\x88\x01\x01\x12O\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32;.google.cloud.compute.v1.GlobalSetLabelsRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x14\n\x12_label_fingerprint\"\xb3\x01\n\x16GlobalSetPolicyRequest\x12\x36\n\x08\x62indings\x18\x8e\xc5\xa4\xc0\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Binding\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x06policy\x18\xb2\xca\xb6+ \x01(\x0b\x32\x1f.google.cloud.compute.v1.PolicyH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_policy\"\xe0\x06\n\x14GroupMaintenanceInfo\x12\x32\n\"instance_maintenance_ongoing_count\x18\xf5\x8f\xcf\x41 \x01(\x05H\x00\x88\x01\x01\x12\x32\n\"instance_maintenance_pending_count\x18\x91\x8a\xc4$ \x01(\x05H\x01\x88\x01\x01\x12)\n\x19maintenance_ongoing_count\x18\x9f\xb6\xe6h \x01(\x05H\x02\x88\x01\x01\x12)\n\x19maintenance_pending_count\x18\xbb\xb0\xdbK \x01(\x05H\x03\x88\x01\x01\x12\x1f\n\x0fscheduling_type\x18\x85\xfe\xa4_ \x01(\tH\x04\x88\x01\x01\x12\x39\n(subblock_infra_maintenance_ongoing_count\x18\xfe\xde\xcc\xae\x01 \x01(\x05H\x05\x88\x01\x01\x12\x39\n(subblock_infra_maintenance_pending_count\x18\x9a\xd9\xc1\x91\x01 \x01(\x05H\x06\x88\x01\x01\x12Y\n\x1aupcoming_group_maintenance\x18\xf0\xc9\xcd\xbb\x01 \x01(\x0b\x32,.google.cloud.compute.v1.UpcomingMaintenanceH\x07\x88\x01\x01\"\x80\x01\n\x0eSchedulingType\x12\x1d\n\x19UNDEFINED_SCHEDULING_TYPE\x10\x00\x12\x0f\n\x07GROUPED\x10\xbe\xd6\xa3\xe2\x01\x12*\n\"GROUP_MAINTENANCE_TYPE_UNSPECIFIED\x10\xbe\xf6\x9d\xd5\x01\x12\x12\n\x0bINDEPENDENT\x10\xda\x96\xc8.google.cloud.compute.v1.HealthChecksAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a]\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12>\n\x05value\x18\x02 \x01(\x0b\x32/.google.cloud.compute.v1.HealthChecksScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa0\x01\n\x16HealthChecksScopedList\x12?\n\rhealth_checks\x18\xae\xaf\xe6\xd5\x01 \x03(\x0b\x32$.google.cloud.compute.v1.HealthCheck\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xce\x04\n\x0cHealthSource\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12)\n\x19health_aggregation_policy\x18\xf2\xcf\xcbr \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\t\x88\x01\x01\x12\x1c\n\x0bsource_type\x18\xde\xf1\xd2\xd7\x01 \x01(\tH\n\x88\x01\x01\x12\x12\n\x07sources\x18\xb8\xb7\xf2; \x03(\t\"@\n\nSourceType\x12\x19\n\x15UNDEFINED_SOURCE_TYPE\x10\x00\x12\x17\n\x0f\x42\x41\x43KEND_SERVICE\x10\xca\xaf\xa3\x88\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x1c\n\x1a_health_aggregation_policyB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x0e\n\x0c_source_type\"\xc5\x03\n\x1aHealthSourceAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12P\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32>.google.cloud.compute.v1.HealthSourceAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a^\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12?\n\x05value\x18\x02 \x01(\x0b\x32\x30.google.cloud.compute.v1.HealthSourcesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa9\x02\n\x10HealthSourceList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x37\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32%.google.cloud.compute.v1.HealthSource\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa3\x01\n\x17HealthSourcesScopedList\x12\x41\n\x0ehealth_sources\x18\xd5\xd1\xdc\xbd\x01 \x03(\x0b\x32%.google.cloud.compute.v1.HealthSource\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xf2\x06\n\x0cHealthStatus\x12N\n\x0b\x61nnotations\x18\xa4\xf6\xb5\x35 \x03(\x0b\x32\x36.google.cloud.compute.v1.HealthStatus.AnnotationsEntry\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x66orwarding_rule_ip\x18\x88\xac\x91R \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x0chealth_state\x18\xee\xe9\xbf\x9a\x01 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x0cipv6_address\x18\x9c\xb3\xef\xa2\x01 \x01(\tH\x05\x88\x01\x01\x12!\n\x11ipv6_health_state\x18\xc6\x80\xe0Z \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x07\x88\x01\x01\x12\x17\n\x06weight\x18\xf8\x84\xc5\x86\x01 \x01(\tH\x08\x88\x01\x01\x12\x1d\n\x0cweight_error\x18\x81\xfb\x92\xf9\x01 \x01(\tH\t\x88\x01\x01\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"M\n\x0bHealthState\x12\x1a\n\x16UNDEFINED_HEALTH_STATE\x10\x00\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12\x11\n\tUNHEALTHY\x10\xc4\xb9\xad\xdc\x01\"2\n\x0fIpv6HealthState\x12\x1f\n\x1bUNDEFINED_IPV6_HEALTH_STATE\x10\x00\"\x8a\x01\n\x0bWeightError\x12\x1a\n\x16UNDEFINED_WEIGHT_ERROR\x10\x00\x12\x16\n\x0eINVALID_WEIGHT\x10\xe0\x8b\xfb\xb6\x01\x12\x16\n\x0eMISSING_WEIGHT\x10\x91\x97\x8f\xb7\x01\x12\x1a\n\x12UNAVAILABLE_WEIGHT\x10\xe7\xe2\xc6\xd1\x01\x12\x13\n\x0bWEIGHT_NONE\x10\x9f\xe9\xc9\xef\x01\x42\x12\n\x10_forwarding_ruleB\x15\n\x13_forwarding_rule_ipB\x0f\n\r_health_stateB\x0b\n\t_instanceB\r\n\x0b_ip_addressB\x0f\n\r_ipv6_addressB\x14\n\x12_ipv6_health_stateB\x07\n\x05_portB\t\n\x07_weightB\x0f\n\r_weight_error\"\xd4\x05\n\x1eHealthStatusForNetworkEndpoint\x12R\n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.BackendServiceReferenceH\x00\x88\x01\x01\x12R\n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.ForwardingRuleReferenceH\x01\x88\x01\x01\x12L\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\x0b\x32-.google.cloud.compute.v1.HealthCheckReferenceH\x02\x88\x01\x01\x12[\n\x14health_check_service\x18\xdb\x9b\xdd\xc2\x01 \x01(\x0b\x32\x34.google.cloud.compute.v1.HealthCheckServiceReferenceH\x03\x88\x01\x01\x12\x1d\n\x0chealth_state\x18\xee\xe9\xbf\x9a\x01 \x01(\tH\x04\x88\x01\x01\x12!\n\x11ipv6_health_state\x18\xc6\x80\xe0Z \x01(\tH\x05\x88\x01\x01\"p\n\x0bHealthState\x12\x1a\n\x16UNDEFINED_HEALTH_STATE\x10\x00\x12\x10\n\x08\x44RAINING\x10\xea\xd5\x8c\xe5\x01\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12\x11\n\tUNHEALTHY\x10\xc4\xb9\xad\xdc\x01\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\"2\n\x0fIpv6HealthState\x12\x1f\n\x1bUNDEFINED_IPV6_HEALTH_STATE\x10\x00\x42\x12\n\x10_backend_serviceB\x12\n\x10_forwarding_ruleB\x0f\n\r_health_checkB\x17\n\x15_health_check_serviceB\x0f\n\r_health_stateB\x14\n\x12_ipv6_health_state\";\n\x04Help\x12\x33\n\x05links\x18\xb9\x9f\x8d\x31 \x03(\x0b\x32!.google.cloud.compute.v1.HelpLink\"T\n\x08HelpLink\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03url\x18\xef\x8a\x07 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x06\n\x04_url\"z\n\x08HostRule\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x05hosts\x18\xcb\xff\xb6/ \x03(\t\x12\x1d\n\x0cpath_matcher\x18\x98\xbe\x8a\xa1\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0f\n\r_path_matcher\"i\n\x0eHttpFaultAbort\x12\x1c\n\x0bhttp_status\x18\x89\xb7\xce\xdf\x01 \x01(\rH\x00\x88\x01\x01\x12\x1a\n\npercentage\x18\x9a\xe5\xb7H \x01(\x01H\x01\x88\x01\x01\x42\x0e\n\x0c_http_statusB\r\n\x0b_percentage\"\x8c\x01\n\x0eHttpFaultDelay\x12?\n\x0b\x66ixed_delay\x18\xf8\xb9\x96\x97\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x00\x88\x01\x01\x12\x1a\n\npercentage\x18\x9a\xe5\xb7H \x01(\x01H\x01\x88\x01\x01\x42\x0e\n\x0c_fixed_delayB\r\n\x0b_percentage\"\xa8\x01\n\x12HttpFaultInjection\x12>\n\x05\x61\x62ort\x18\xb0\xc6\x94, \x01(\x0b\x32\'.google.cloud.compute.v1.HttpFaultAbortH\x00\x88\x01\x01\x12>\n\x05\x64\x65lay\x18\x83\xf3\xc2- \x01(\x0b\x32\'.google.cloud.compute.v1.HttpFaultDelayH\x01\x88\x01\x01\x42\x08\n\x06_abortB\x08\n\x06_delay\"\xfc\x01\n\x10HttpHeaderAction\x12L\n\x16request_headers_to_add\x18\xe6\xae\xb1\" \x03(\x0b\x32).google.cloud.compute.v1.HttpHeaderOption\x12$\n\x19request_headers_to_remove\x18\x9f\xcf\x93h \x03(\t\x12M\n\x17response_headers_to_add\x18\xf4\xb6\xa9\x0f \x03(\x0b\x32).google.cloud.compute.v1.HttpHeaderOption\x12%\n\x1aresponse_headers_to_remove\x18\xd1\x81\xfb# \x03(\t\"\xb0\x03\n\x0fHttpHeaderMatch\x12\x1c\n\x0b\x65xact_match\x18\x85\x99\x9c\xda\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bheader_name\x18\xfd\xc1\xc7\x34 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x0cinvert_match\x18\x9c\xc8\xfa\xee\x01 \x01(\x08H\x02\x88\x01\x01\x12\x1c\n\x0cprefix_match\x18\xd8\xf3\xfcz \x01(\tH\x03\x88\x01\x01\x12\x1d\n\rpresent_match\x18\xc1\xfa\x93 \x01(\x08H\x04\x88\x01\x01\x12\x45\n\x0brange_match\x18\xc3\xa8\xaf. \x01(\x0b\x32(.google.cloud.compute.v1.Int64RangeMatchH\x05\x88\x01\x01\x12\x1b\n\x0bregex_match\x18\xcd\xb7\x9a\x33 \x01(\tH\x06\x88\x01\x01\x12\x1d\n\x0csuffix_match\x18\xd7\xe6\xae\xcb\x01 \x01(\tH\x07\x88\x01\x01\x42\x0e\n\x0c_exact_matchB\x0e\n\x0c_header_nameB\x0f\n\r_invert_matchB\x0f\n\r_prefix_matchB\x10\n\x0e_present_matchB\x0e\n\x0c_range_matchB\x0e\n\x0c_regex_matchB\x0f\n\r_suffix_match\"\x93\x01\n\x10HttpHeaderOption\x12\x1b\n\x0bheader_name\x18\xfd\xc1\xc7\x34 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0cheader_value\x18\xbf\xf2\xeb` \x01(\tH\x01\x88\x01\x01\x12\x17\n\x07replace\x18\xb4\xe5\xf2\t \x01(\x08H\x02\x88\x01\x01\x42\x0e\n\x0c_header_nameB\x0f\n\r_header_valueB\n\n\x08_replace\"\xc4\x01\n\x17HttpQueryParameterMatch\x12\x1c\n\x0b\x65xact_match\x18\x85\x99\x9c\xda\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\rpresent_match\x18\xc1\xfa\x93 \x01(\x08H\x02\x88\x01\x01\x12\x1b\n\x0bregex_match\x18\xcd\xb7\x9a\x33 \x01(\tH\x03\x88\x01\x01\x42\x0e\n\x0c_exact_matchB\x07\n\x05_nameB\x10\n\x0e_present_matchB\x0e\n\x0c_regex_match\"\x8c\x04\n\x12HttpRedirectAction\x12\x1d\n\rhost_redirect\x18\x93\xa1\x9c\x33 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0ehttps_redirect\x18\xb0\xf1\x97Q \x01(\x08H\x01\x88\x01\x01\x12\x1e\n\rpath_redirect\x18\xb6\xbd\xee\x81\x01 \x01(\tH\x02\x88\x01\x01\x12 \n\x0fprefix_redirect\x18\xe9\xf5\xe0\xd4\x01 \x01(\tH\x03\x88\x01\x01\x12\'\n\x16redirect_response_code\x18\x88\xd8\x9e\xd0\x01 \x01(\tH\x04\x88\x01\x01\x12\x1b\n\x0bstrip_query\x18\xe1\x99\xf7\x18 \x01(\x08H\x05\x88\x01\x01\"\xb8\x01\n\x14RedirectResponseCode\x12$\n UNDEFINED_REDIRECT_RESPONSE_CODE\x10\x00\x12\x0c\n\x05\x46OUND\x10\xe2\xbe\xfe\x1f\x12!\n\x19MOVED_PERMANENTLY_DEFAULT\x10\xd1\x99\xb2\xb8\x01\x12\x1a\n\x12PERMANENT_REDIRECT\x10\xed\xe8\x93\xb6\x01\x12\x11\n\tSEE_OTHER\x10\xe4\xef\xaf\xd4\x01\x12\x1a\n\x12TEMPORARY_REDIRECT\x10\xaa\xe4\xb7\xe9\x01\x42\x10\n\x0e_host_redirectB\x11\n\x0f_https_redirectB\x10\n\x0e_path_redirectB\x12\n\x10_prefix_redirectB\x19\n\x17_redirect_response_codeB\x0e\n\x0c_strip_query\"\xb4\x01\n\x0fHttpRetryPolicy\x12\x1b\n\x0bnum_retries\x18\x8d\xab\x81x \x01(\rH\x00\x88\x01\x01\x12\x43\n\x0fper_try_timeout\x18\xbb\xad\xc4\x85\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x01\x88\x01\x01\x12\x1b\n\x10retry_conditions\x18\xaf\xe1\xde\r \x03(\tB\x0e\n\x0c_num_retriesB\x12\n\x10_per_try_timeout\"\xf1\x05\n\x0fHttpRouteAction\x12\x41\n\x0b\x63ors_policy\x18\x84\xcc\x9d\xbe\x01 \x01(\x0b\x32#.google.cloud.compute.v1.CorsPolicyH\x00\x88\x01\x01\x12T\n\x16\x66\x61ult_injection_policy\x18\x97\x94\xea\xc4\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HttpFaultInjectionH\x01\x88\x01\x01\x12\x46\n\x13max_stream_duration\x18\x98\xa5\xa5\x1d \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x02\x88\x01\x01\x12S\n\x15request_mirror_policy\x18\x82\xe0\xffh \x01(\x0b\x32,.google.cloud.compute.v1.RequestMirrorPolicyH\x03\x88\x01\x01\x12\x46\n\x0cretry_policy\x18\xa9\xe5\x8a\x1b \x01(\x0b\x32(.google.cloud.compute.v1.HttpRetryPolicyH\x04\x88\x01\x01\x12;\n\x07timeout\x18\xe1\x9a\xbd\x8d\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x05\x88\x01\x01\x12\x41\n\x0burl_rewrite\x18\xbc\xfd\xaa\x82\x01 \x01(\x0b\x32#.google.cloud.compute.v1.UrlRewriteH\x06\x88\x01\x01\x12V\n\x19weighted_backend_services\x18\xd1\xc7\xda\xa0\x01 \x03(\x0b\x32/.google.cloud.compute.v1.WeightedBackendServiceB\x0e\n\x0c_cors_policyB\x19\n\x17_fault_injection_policyB\x16\n\x14_max_stream_durationB\x18\n\x16_request_mirror_policyB\x0f\n\r_retry_policyB\n\n\x08_timeoutB\x0e\n\x0c_url_rewrite\"\xe8\x04\n\rHttpRouteRule\x12`\n\x1c\x63ustom_error_response_policy\x18\xeb\xf8\xda` \x01(\x0b\x32\x32.google.cloud.compute.v1.CustomErrorResponsePolicyH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12I\n\rheader_action\x18\xa8\xa0\xb8\x9c\x01 \x01(\x0b\x32).google.cloud.compute.v1.HttpHeaderActionH\x02\x88\x01\x01\x12\x44\n\x0bmatch_rules\x18\xfd\xbb\xb1\xb3\x01 \x03(\x0b\x32+.google.cloud.compute.v1.HttpRouteRuleMatch\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x03\x88\x01\x01\x12G\n\x0croute_action\x18\xec\xa9\xb9\xca\x01 \x01(\x0b\x32(.google.cloud.compute.v1.HttpRouteActionH\x04\x88\x01\x01\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x05\x88\x01\x01\x12J\n\x0curl_redirect\x18\xac\xa1\x98\xc1\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HttpRedirectActionH\x06\x88\x01\x01\x42\x1f\n\x1d_custom_error_response_policyB\x0e\n\x0c_descriptionB\x10\n\x0e_header_actionB\x0b\n\t_priorityB\x0f\n\r_route_actionB\n\n\x08_serviceB\x0f\n\r_url_redirect\"\xf5\x03\n\x12HttpRouteRuleMatch\x12\x1f\n\x0f\x66ull_path_match\x18\xdb\x89\xaa\x66 \x01(\tH\x00\x88\x01\x01\x12\x44\n\x0eheader_matches\x18\x81\xeb\xc8\xac\x01 \x03(\x0b\x32(.google.cloud.compute.v1.HttpHeaderMatch\x12\x1c\n\x0bignore_case\x18\xfd\x92\xb4\xdd\x01 \x01(\x08H\x01\x88\x01\x01\x12\x45\n\x10metadata_filters\x18\xeb\xcd\xcc\xdd\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.MetadataFilter\x12$\n\x13path_template_match\x18\x9a\xc2\xb3\x8b\x01 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0cprefix_match\x18\xd8\xf3\xfcz \x01(\tH\x03\x88\x01\x01\x12U\n\x17query_parameter_matches\x18\xe6\x95\xbe\x88\x01 \x03(\x0b\x32\x30.google.cloud.compute.v1.HttpQueryParameterMatch\x12\x1b\n\x0bregex_match\x18\xcd\xb7\x9a\x33 \x01(\tH\x04\x88\x01\x01\x42\x12\n\x10_full_path_matchB\x0e\n\x0c_ignore_caseB\x16\n\x14_path_template_matchB\x0f\n\r_prefix_matchB\x0e\n\x0c_regex_match\"\x82\x13\n\x05Image\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12\x61rchive_size_bytes\x18\xca\x8c\xdc\xb5\x01 \x01(\x03H\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x05\x88\x01\x01\x12+\n\x1b\x65nable_confidential_compute\x18\xbc\xeb\xd9\x30 \x01(\x08H\x06\x88\x01\x01\x12\x17\n\x06\x66\x61mily\x18\xe4\xb6\xe1\x9c\x01 \x01(\tH\x07\x88\x01\x01\x12\x45\n\x11guest_os_features\x18\xd1\xe0\xe7% \x03(\x0b\x32\'.google.cloud.compute.v1.GuestOsFeature\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x08\x88\x01\x01\x12U\n\x14image_encryption_key\x18\x87\xce\xfb\xb4\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\t\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\n\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x0b\x88\x01\x01\x12>\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32*.google.cloud.compute.v1.Image.LabelsEntry\x12\x18\n\rlicense_codes\x18\xa8\x85\xd8\x15 \x03(\x03\x12\x14\n\x08licenses\x18\xd2\x88\x80\xa1\x01 \x03(\t\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0c\x88\x01\x01\x12<\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32$.google.cloud.compute.v1.ImageParamsH\r\x88\x01\x01\x12;\n\x08raw_disk\x18\xd4\xce\xf3\xef\x01 \x01(\x0b\x32 .google.cloud.compute.v1.RawDiskH\x0e\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\x0f\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x10\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x11\x88\x01\x01\x12\\\n\x1fshielded_instance_initial_state\x18\x83\xc4\xdc[ \x01(\x0b\x32+.google.cloud.compute.v1.InitialStateConfigH\x12\x88\x01\x01\x12\x1c\n\x0bsource_disk\x18\xc1\xee\xb4\xd7\x01 \x01(\tH\x13\x88\x01\x01\x12[\n\x1asource_disk_encryption_key\x18\xe1\xa0\xb8\xfd\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x14\x88\x01\x01\x12\x1f\n\x0esource_disk_id\x18\xd9\xcd\xc9\xd8\x01 \x01(\tH\x15\x88\x01\x01\x12\x1c\n\x0csource_image\x18\xb7\xe8\x86\x18 \x01(\tH\x16\x88\x01\x01\x12\\\n\x1bsource_image_encryption_key\x18\xab\x91\xf5\xb5\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x17\x88\x01\x01\x12\x1f\n\x0fsource_image_id\x18\xa3\xfc\xb0\x1a \x01(\tH\x18\x88\x01\x01\x12\x1f\n\x0fsource_snapshot\x18\xe8\x9a\x8e< \x01(\tH\x19\x88\x01\x01\x12_\n\x1esource_snapshot_encryption_key\x18\xda\x8e\xe7\x90\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x1a\x88\x01\x01\x12\"\n\x12source_snapshot_id\x18\xd2\x96\x98/ \x01(\tH\x1b\x88\x01\x01\x12\x1c\n\x0bsource_type\x18\xde\xf1\xd2\xd7\x01 \x01(\tH\x1c\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x1d\x88\x01\x01\x12\x1d\n\x11storage_locations\x18\x9a\xed\xb3\x9c\x01 \x03(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\"2\n\nSourceType\x12\x19\n\x15UNDEFINED_SOURCE_TYPE\x10\x00\x12\t\n\x03RAW\x10\x88\xf8\x04\"^\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B\x0f\n\r_architectureB\x15\n\x13_archive_size_bytesB\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\x0f\n\r_disk_size_gbB\x1e\n\x1c_enable_confidential_computeB\t\n\x07_familyB\x05\n\x03_idB\x17\n\x15_image_encryption_keyB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\t\n\x07_paramsB\x0b\n\t_raw_diskB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\"\n _shielded_instance_initial_stateB\x0e\n\x0c_source_diskB\x1d\n\x1b_source_disk_encryption_keyB\x11\n\x0f_source_disk_idB\x0f\n\r_source_imageB\x1e\n\x1c_source_image_encryption_keyB\x12\n\x10_source_image_idB\x12\n\x10_source_snapshotB!\n\x1f_source_snapshot_encryption_keyB\x15\n\x13_source_snapshot_idB\x0e\n\x0c_source_typeB\t\n\x07_status\"R\n\x0fImageFamilyView\x12\x35\n\x05image\x18\xdb\xd2\xea/ \x01(\x0b\x32\x1e.google.cloud.compute.v1.ImageH\x00\x88\x01\x01\x42\x08\n\x06_image\"\x9b\x02\n\tImageList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x30\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1e.google.cloud.compute.v1.Image\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xab\x01\n\x0bImageParams\x12`\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32=.google.cloud.compute.v1.ImageParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8e\x02\n\x12InitialStateConfig\x12\x39\n\x03\x64\x62s\x18\xb5\x87\x06 \x03(\x0b\x32*.google.cloud.compute.v1.FileContentBuffer\x12;\n\x04\x64\x62xs\x18\xf9\xe7\xbb\x01 \x03(\x0b\x32*.google.cloud.compute.v1.FileContentBuffer\x12;\n\x04keks\x18\xc2\xd8\xc8\x01 \x03(\x0b\x32*.google.cloud.compute.v1.FileContentBuffer\x12<\n\x02pk\x18\xfb\x1b \x01(\x0b\x32*.google.cloud.compute.v1.FileContentBufferH\x00\x88\x01\x01\x42\x05\n\x03_pk\"\xca\x01\n\x14InsertAddressRequest\x12\x43\n\x10\x61\x64\x64ress_resource\x18\xf9\x97\xde\xe6\x01 \x01(\x0b\x32 .google.cloud.compute.v1.AddressB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xce\x01\n\x17InsertAutoscalerRequest\x12H\n\x13\x61utoscaler_resource\x18\xf6\xf0\xff\x62 \x01(\x0b\x32#.google.cloud.compute.v1.AutoscalerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xbc\x01\n\x1aInsertBackendBucketRequest\x12P\n\x17\x62\x61\x63kend_bucket_resource\x18\x98\xce\xc7\xb5\x01 \x01(\x0b\x32&.google.cloud.compute.v1.BackendBucketB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbf\x01\n\x1bInsertBackendServiceRequest\x12R\n\x18\x62\x61\x63kend_service_resource\x18\xa3\x81\xdf\xa5\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.BackendServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf6\x01\n\x1dInsertCrossSiteNetworkRequest\x12V\n\x1b\x63ross_site_network_resource\x18\xb8\xe4\xdd\x0e \x01(\x0b\x32).google.cloud.compute.v1.CrossSiteNetworkB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x10\n\x0e_validate_only\"\xeb\x01\n\x11InsertDiskRequest\x12<\n\rdisk_resource\x18\xf0\xd0\xab\x0c \x01(\x0b\x32\x1d.google.cloud.compute.v1.DiskB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0csource_image\x18\xb7\xe8\x86\x18 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x0f\n\r_source_image\"\xcc\x01\n\x1fInsertExternalVpnGatewayRequest\x12[\n\x1d\x65xternal_vpn_gateway_resource\x18\x88\xdf\x90\xe8\x01 \x01(\x0b\x32+.google.cloud.compute.v1.ExternalVpnGatewayB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc4\x01\n\x1bInsertFirewallPolicyRequest\x12R\n\x18\x66irewall_policy_resource\x18\xbc\xb6\x87\xec\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicyB\x03\xe0\x41\x02\x12&\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tB\x0f\xe0\x41\x02\xf2G\tparent_id\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xab\x01\n\x15InsertFirewallRequest\x12\x44\n\x11\x66irewall_resource\x18\xed\xb0\xe0\x13 \x01(\x0b\x32!.google.cloud.compute.v1.FirewallB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe0\x01\n\x1bInsertForwardingRuleRequest\x12R\n\x18\x66orwarding_rule_resource\x18\xaf\xc0\xd0\x8f\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.ForwardingRuleB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe5\x01\n\x1eInsertFutureReservationRequest\x12X\n\x1b\x66uture_reservation_resource\x18\x9d\x98\xc8\xde\x01 \x01(\x0b\x32*.google.cloud.compute.v1.FutureReservationB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xaf\x01\n\x1aInsertGlobalAddressRequest\x12\x43\n\x10\x61\x64\x64ress_resource\x18\xf9\x97\xde\xe6\x01 \x01(\x0b\x32 .google.cloud.compute.v1.AddressB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc5\x01\n!InsertGlobalForwardingRuleRequest\x12R\n\x18\x66orwarding_rule_resource\x18\xaf\xc0\xd0\x8f\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.ForwardingRuleB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd8\x01\n\'InsertGlobalNetworkEndpointGroupRequest\x12_\n\x1fnetwork_endpoint_group_resource\x18\xa7\xcd\xdb\xfa\x01 \x01(\x0b\x32-.google.cloud.compute.v1.NetworkEndpointGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xdb\x01\n)InsertGlobalPublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12`\n public_delegated_prefix_resource\x18\x85\xf8\xd8\x16 \x01(\x0b\x32..google.cloud.compute.v1.PublicDelegatedPrefixB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb5\x01\n\x18InsertHealthCheckRequest\x12K\n\x15health_check_resource\x18\xa8\xc3\xa4` \x01(\x0b\x32$.google.cloud.compute.v1.HealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd2\x01\n\x12InsertImageRequest\x12\x1c\n\x0c\x66orce_create\x18\xd0\x89\xa4^ \x01(\x08H\x00\x88\x01\x01\x12?\n\x0eimage_resource\x18\xf2\xc4\xfe\xb0\x01 \x01(\x0b\x32\x1e.google.cloud.compute.v1.ImageB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0f\n\r_force_createB\r\n\x0b_request_id\"\xee\x01\n!InsertInstanceGroupManagerRequest\x12^\n\x1finstance_group_manager_resource\x18\x8a\x8a\xbe| \x01(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManagerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xc0\x02\n.InsertInstanceGroupManagerResizeRequestRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12{\n.instance_group_manager_resize_request_resource\x18\xed\xbe\xb5\xdf\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InstanceGroupManagerResizeRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xd9\x01\n\x1aInsertInstanceGroupRequest\x12P\n\x17instance_group_resource\x18\xb8\xb5\xd5\x88\x01 \x01(\x0b\x32&.google.cloud.compute.v1.InstanceGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xcf\x02\n\x15InsertInstanceRequest\x12\x44\n\x11instance_resource\x18\xf8\xf0\xfe\x66 \x01(\x0b\x32!.google.cloud.compute.v1.InstanceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12)\n\x18source_instance_template\x18\xc0\xc3\xc1\x9e\x01 \x01(\tH\x01\x88\x01\x01\x12$\n\x14source_machine_image\x18\xbf\xdc\xb0\n \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x1b\n\x19_source_instance_templateB\x17\n\x15_source_machine_image\"\xc4\x01\n\x1dInsertInstanceTemplateRequest\x12U\n\x1ainstance_template_resource\x18\x89\xea\x8b\x05 \x01(\x0b\x32).google.cloud.compute.v1.InstanceTemplateB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xdf\x01\n\x1cInsertInstantSnapshotRequest\x12T\n\x19instant_snapshot_resource\x18\xcb\xaa\x88\xb7\x01 \x01(\x0b\x32(.google.cloud.compute.v1.InstantSnapshotB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe6\x01\n(InsertInterconnectAttachmentGroupRequest\x12l\n&interconnect_attachment_group_resource\x18\xf9\xdf\xe1\x04 \x01(\x0b\x32\x34.google.cloud.compute.v1.InterconnectAttachmentGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa8\x02\n#InsertInterconnectAttachmentRequest\x12\x61\n interconnect_attachment_resource\x18\xf9\xa4\xa0\x65 \x01(\x0b\x32/.google.cloud.compute.v1.InterconnectAttachmentB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x10\n\x0e_validate_only\"\xc7\x01\n\x1eInsertInterconnectGroupRequest\x12W\n\x1binterconnect_group_resource\x18\x9f\xf3\xe6( \x01(\x0b\x32*.google.cloud.compute.v1.InterconnectGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb8\x01\n\x19InsertInterconnectRequest\x12M\n\x15interconnect_resource\x18\x9f\xa1\xcc\xbd\x01 \x01(\x0b\x32%.google.cloud.compute.v1.InterconnectB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa9\x01\n\x14InsertLicenseRequest\x12\x43\n\x10license_resource\x18\xcc\xd4\xea\xd0\x01 \x01(\x0b\x32 .google.cloud.compute.v1.LicenseB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xee\x01\n\x19InsertMachineImageRequest\x12M\n\x16machine_image_resource\x18\xea\xaa\xfb\x1c \x01(\x0b\x32%.google.cloud.compute.v1.MachineImageB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12 \n\x0fsource_instance\x18\xb9\x98\xfd\xbc\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x12\n\x10_source_instance\"\xe8\x01\n\x1eInsertNetworkAttachmentRequest\x12W\n\x1bnetwork_attachment_resource\x18\x99\xf0\xcc\x64 \x01(\x0b\x32*.google.cloud.compute.v1.NetworkAttachmentB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb7\x02\n\'InsertNetworkEdgeSecurityServiceRequest\x12l\n&network_edge_security_service_resource\x18\xa6\xa3\xdb\xe3\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.NetworkEdgeSecurityServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x10\n\x0e_validate_only\"\xef\x01\n!InsertNetworkEndpointGroupRequest\x12_\n\x1fnetwork_endpoint_group_resource\x18\xa7\xcd\xdb\xfa\x01 \x01(\x0b\x32-.google.cloud.compute.v1.NetworkEndpointGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xc6\x01\n\"InsertNetworkFirewallPolicyRequest\x12R\n\x18\x66irewall_policy_resource\x18\xbc\xb6\x87\xec\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicyB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa8\x01\n\x14InsertNetworkRequest\x12\x42\n\x10network_resource\x18\xff\xdd\x9c: \x01(\x0b\x32 .google.cloud.compute.v1.NetworkB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf1\x01\n\x16InsertNodeGroupRequest\x12\"\n\x12initial_node_count\x18\xed\xc8\xa7\" \x01(\x05\x42\x03\xe0\x41\x02\x12H\n\x13node_group_resource\x18\xab\xb3\xfa\xf0\x01 \x01(\x0b\x32\".google.cloud.compute.v1.NodeGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xd9\x01\n\x19InsertNodeTemplateRequest\x12M\n\x16node_template_resource\x18\xb6\xda\xdd< \x01(\x0b\x32%.google.cloud.compute.v1.NodeTemplateB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xdf\x01\n\'InsertOrganizationSecurityPolicyRequest\x12(\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tB\x0c\xf2G\tparent_idH\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12Q\n\x18security_policy_resource\x18\xfc\xaa\x89g \x01(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicyB\x03\xe0\x41\x02\x42\x0c\n\n_parent_idB\r\n\x0b_request_id\"\xe3\x01\n\x1cInsertPacketMirroringRequest\x12T\n\x19packet_mirroring_resource\x18\xa1\xfc\xa8\xeb\x01 \x01(\x0b\x32(.google.cloud.compute.v1.PacketMirroringB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd8\x01\n$InsertPublicAdvertisedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x62\n!public_advertised_prefix_resource\x18\x8f\xd7\xb2o \x01(\x0b\x32/.google.cloud.compute.v1.PublicAdvertisedPrefixB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf6\x01\n#InsertPublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12`\n public_delegated_prefix_resource\x18\x85\xf8\xd8\x16 \x01(\x0b\x32..google.cloud.compute.v1.PublicDelegatedPrefixB\x03\xe0\x41\x02\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd8\x01\n\x1dInsertRegionAutoscalerRequest\x12H\n\x13\x61utoscaler_resource\x18\xf6\xf0\xff\x62 \x01(\x0b\x32#.google.cloud.compute.v1.AutoscalerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe6\x01\n!InsertRegionBackendServiceRequest\x12R\n\x18\x62\x61\x63kend_service_resource\x18\xa3\x81\xdf\xa5\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.BackendServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd8\x01\n\x1dInsertRegionCommitmentRequest\x12H\n\x13\x63ommitment_resource\x18\xf8\xa3\xbbt \x01(\x0b\x32#.google.cloud.compute.v1.CommitmentB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf8\x01\n\'InsertRegionCompositeHealthCheckRequest\x12^\n\x1f\x63omposite_health_check_resource\x18\xf0\xcb\x84? \x01(\x0b\x32-.google.cloud.compute.v1.CompositeHealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf5\x01\n\x17InsertRegionDiskRequest\x12<\n\rdisk_resource\x18\xf0\xd0\xab\x0c \x01(\x0b\x32\x1d.google.cloud.compute.v1.DiskB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0csource_image\x18\xb7\xe8\x86\x18 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0f\n\r_source_image\"\x82\x02\n*InsertRegionHealthAggregationPolicyRequest\x12\x65\n\"health_aggregation_policy_resource\x18\xbb\xbb\xfb\x8b\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.HealthAggregationPolicyB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xdc\x01\n\x1eInsertRegionHealthCheckRequest\x12K\n\x15health_check_resource\x18\xa8\xc3\xa4` \x01(\x0b\x32$.google.cloud.compute.v1.HealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf3\x01\n%InsertRegionHealthCheckServiceRequest\x12[\n\x1dhealth_check_service_resource\x18\xf2\x9b\xd0\xe3\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HealthCheckServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe0\x01\n\x1fInsertRegionHealthSourceRequest\x12N\n\x16health_source_resource\x18\xcf\xb7\xca\xaa\x01 \x01(\x0b\x32%.google.cloud.compute.v1.HealthSourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf8\x01\n\'InsertRegionInstanceGroupManagerRequest\x12^\n\x1finstance_group_manager_resource\x18\x8a\x8a\xbe| \x01(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManagerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xeb\x01\n#InsertRegionInstanceTemplateRequest\x12U\n\x1ainstance_template_resource\x18\x89\xea\x8b\x05 \x01(\x0b\x32).google.cloud.compute.v1.InstanceTemplateB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe9\x01\n\"InsertRegionInstantSnapshotRequest\x12T\n\x19instant_snapshot_resource\x18\xcb\xaa\x88\xb7\x01 \x01(\x0b\x32(.google.cloud.compute.v1.InstantSnapshotB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf9\x01\n\'InsertRegionNetworkEndpointGroupRequest\x12_\n\x1fnetwork_endpoint_group_resource\x18\xa7\xcd\xdb\xfa\x01 \x01(\x0b\x32-.google.cloud.compute.v1.NetworkEndpointGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xed\x01\n(InsertRegionNetworkFirewallPolicyRequest\x12R\n\x18\x66irewall_policy_resource\x18\xbc\xb6\x87\xec\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicyB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf8\x01\n\'InsertRegionNotificationEndpointRequest\x12^\n\x1enotification_endpoint_resource\x18\xa4\xfa\xb1\xa1\x01 \x01(\x0b\x32-.google.cloud.compute.v1.NotificationEndpointB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x96\x02\n!InsertRegionSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Q\n\x18security_policy_resource\x18\xfc\xaa\x89g \x01(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicyB\x03\xe0\x41\x02\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x10\n\x0e_validate_only\"\xe5\x01\n!InsertRegionSslCertificateRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Q\n\x18ssl_certificate_resource\x18\x89\xd4\x95V \x01(\x0b\x32\'.google.cloud.compute.v1.SslCertificateB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd7\x01\n\x1cInsertRegionSslPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12H\n\x13ssl_policy_resource\x18\xc8\x88\x8a\x83\x01 \x01(\x0b\x32\".google.cloud.compute.v1.SslPolicyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe9\x01\n\"InsertRegionTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12T\n\x1atarget_http_proxy_resource\x18\xa8\xaf\xe3\x0b \x01(\x0b\x32(.google.cloud.compute.v1.TargetHttpProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xed\x01\n#InsertRegionTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12W\n\x1btarget_https_proxy_resource\x18\x81\xad\xe4\xce\x01 \x01(\x0b\x32).google.cloud.compute.v1.TargetHttpsProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe6\x01\n!InsertRegionTargetTcpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12R\n\x19target_tcp_proxy_resource\x18\xcb\xf0\xc9\x45 \x01(\x0b\x32\'.google.cloud.compute.v1.TargetTcpProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xcd\x01\n\x19InsertRegionUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x41\n\x10url_map_resource\x18\xe1\x90\xb7P \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd2\x01\n\x18InsertReservationRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12K\n\x14reservation_resource\x18\xa1\xee\xf4\x87\x01 \x01(\x0b\x32$.google.cloud.compute.v1.ReservationB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xdf\x01\n\x1bInsertResourcePolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Q\n\x18resource_policy_resource\x18\xca\x8c\xd1$ \x01(\x0b\x32\'.google.cloud.compute.v1.ResourcePolicyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa2\x01\n\x12InsertRouteRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12>\n\x0eroute_resource\x18\xc4\x8a\xbfk \x01(\x0b\x32\x1e.google.cloud.compute.v1.RouteB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xc6\x01\n\x13InsertRouterRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12@\n\x0frouter_resource\x18\xc4\x80\x82J \x01(\x0b\x32\x1f.google.cloud.compute.v1.RouterB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xef\x01\n\x1bInsertSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Q\n\x18security_policy_resource\x18\xfc\xaa\x89g \x01(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicyB\x03\xe0\x41\x02\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x10\n\x0e_validate_only\"\xe9\x01\n\x1eInsertServiceAttachmentRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12X\n\x1bservice_attachment_resource\x18\xa0\xb6\xc4\xe1\x01 \x01(\x0b\x32*.google.cloud.compute.v1.ServiceAttachmentB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xac\x01\n\x15InsertSnapshotRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x45\n\x11snapshot_resource\x18\xa9\xb8\xc1\xe5\x01 \x01(\x0b\x32!.google.cloud.compute.v1.SnapshotB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xbe\x01\n\x1bInsertSslCertificateRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Q\n\x18ssl_certificate_resource\x18\x89\xd4\x95V \x01(\x0b\x32\'.google.cloud.compute.v1.SslCertificateB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb0\x01\n\x16InsertSslPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12H\n\x13ssl_policy_resource\x18\xc8\x88\x8a\x83\x01 \x01(\x0b\x32\".google.cloud.compute.v1.SslPolicyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd2\x01\n\x18InsertStoragePoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12K\n\x15storage_pool_resource\x18\x8d\xbc\xf9J \x01(\x0b\x32$.google.cloud.compute.v1.StoragePoolB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xd2\x01\n\x17InsertSubnetworkRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12H\n\x13subnetwork_resource\x18\xbf\xda\x91\x14 \x01(\x0b\x32#.google.cloud.compute.v1.SubnetworkB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xc3\x01\n\x1cInsertTargetGrpcProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12U\n\x1atarget_grpc_proxy_resource\x18\xd2\xea\xeb\x9c\x01 \x01(\x0b\x32(.google.cloud.compute.v1.TargetGrpcProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xc2\x01\n\x1cInsertTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12T\n\x1atarget_http_proxy_resource\x18\xa8\xaf\xe3\x0b \x01(\x0b\x32(.google.cloud.compute.v1.TargetHttpProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xc6\x01\n\x1dInsertTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12W\n\x1btarget_https_proxy_resource\x18\x81\xad\xe4\xce\x01 \x01(\x0b\x32).google.cloud.compute.v1.TargetHttpsProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xdc\x01\n\x1bInsertTargetInstanceRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12R\n\x18target_instance_resource\x18\xca\xe2\xa0\xcd\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.TargetInstanceB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xd3\x01\n\x17InsertTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12I\n\x14target_pool_resource\x18\xa3\xdd\xa5\x30 \x01(\x0b\x32#.google.cloud.compute.v1.TargetPoolB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xbf\x01\n\x1bInsertTargetSslProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12R\n\x19target_ssl_proxy_resource\x18\xc0\xfd\xdb\x43 \x01(\x0b\x32\'.google.cloud.compute.v1.TargetSslProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xbf\x01\n\x1bInsertTargetTcpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12R\n\x19target_tcp_proxy_resource\x18\xcb\xf0\xc9\x45 \x01(\x0b\x32\'.google.cloud.compute.v1.TargetTcpProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe5\x01\n\x1dInsertTargetVpnGatewayRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12U\n\x1btarget_vpn_gateway_resource\x18\x82\xb3\x1e \x01(\x0b\x32).google.cloud.compute.v1.TargetVpnGatewayB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa6\x01\n\x13InsertUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x41\n\x10url_map_resource\x18\xe1\x90\xb7P \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd3\x01\n\x17InsertVpnGatewayRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12I\n\x14vpn_gateway_resource\x18\x94\xb7\x8eW \x01(\x0b\x32#.google.cloud.compute.v1.VpnGatewayB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd0\x01\n\x16InsertVpnTunnelRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12G\n\x13vpn_tunnel_resource\x18\xba\xa1\xb4) \x01(\x0b\x32\".google.cloud.compute.v1.VpnTunnelB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x84\x02\n\x16InsertWireGroupRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x01\x88\x01\x01\x12G\n\x13wire_group_resource\x18\xc8\xc1\xeb\x37 \x01(\x0b\x32\".google.cloud.compute.v1.WireGroupB\x03\xe0\x41\x02\x42\r\n\x0b_request_idB\x10\n\x0e_validate_only\"\xf0\x1e\n\x08Instance\x12\\\n\x19\x61\x64vanced_machine_features\x18\xb2\xe7\xaa\xc3\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.AdvancedMachineFeaturesH\x00\x88\x01\x01\x12\x1f\n\x0e\x63\x61n_ip_forward\x18\xfc\x86\x84\xdf\x01 \x01(\x08H\x01\x88\x01\x01\x12\x62\n\x1c\x63onfidential_instance_config\x18\xf5\x92\xfa\xe9\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.ConfidentialInstanceConfigH\x02\x88\x01\x01\x12\x1d\n\x0c\x63pu_platform\x18\xaa\xea\xd1\xc3\x01 \x01(\tH\x03\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x04\x88\x01\x01\x12$\n\x13\x64\x65letion_protection\x18\xea\xff\xb2\xda\x01 \x01(\x08H\x05\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x06\x88\x01\x01\x12\x37\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32%.google.cloud.compute.v1.AttachedDisk\x12\x46\n\x0e\x64isplay_device\x18\xf3\x88\xbc{ \x01(\x0b\x32&.google.cloud.compute.v1.DisplayDeviceH\x07\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x08\x88\x01\x01\x12J\n\x12guest_accelerators\x18\xef\xcc\x87\xdd\x01 \x03(\x0b\x32*.google.cloud.compute.v1.AcceleratorConfig\x12\x18\n\x08hostname\x18\xb3\xb8\x85q \x01(\tH\t\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\n\x88\x01\x01\x12W\n\x17instance_encryption_key\x18\x8d\xc1\xef\x1e \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x0b\x88\x01\x01\x12*\n\x1akey_revocation_action_type\x18\xe2\xdc\xc0p \x01(\tH\x0c\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\r\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x0e\x88\x01\x01\x12\x41\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32-.google.cloud.compute.v1.Instance.LabelsEntry\x12%\n\x14last_start_timestamp\x18\xd0\xa3\xd1\xd3\x01 \x01(\tH\x0f\x88\x01\x01\x12$\n\x13last_stop_timestamp\x18\xe2\xdb\xec\xc4\x01 \x01(\tH\x10\x88\x01\x01\x12)\n\x18last_suspended_timestamp\x18\x89\xa9\xf1\xa9\x01 \x01(\tH\x11\x88\x01\x01\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x12\x88\x01\x01\x12;\n\x08metadata\x18\xaf\xf6\xb5) \x01(\x0b\x32!.google.cloud.compute.v1.MetadataH\x13\x88\x01\x01\x12 \n\x10min_cpu_platform\x18\xf7\x9b\xeas \x01(\tH\x14\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x15\x88\x01\x01\x12H\n\x12network_interfaces\x18\x8b\xda\x92\x19 \x03(\x0b\x32).google.cloud.compute.v1.NetworkInterface\x12^\n\x1anetwork_performance_config\x18\xe2\x97\xf8\xbd\x01 \x01(\x0b\x32\x31.google.cloud.compute.v1.NetworkPerformanceConfigH\x16\x88\x01\x01\x12?\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32\'.google.cloud.compute.v1.InstanceParamsH\x17\x88\x01\x01\x12*\n\x1aprivate_ipv6_google_access\x18\x8e\xcc\x82\x17 \x01(\tH\x18\x88\x01\x01\x12R\n\x14reservation_affinity\x18\xbb\xb8\xa2K \x01(\x0b\x32,.google.cloud.compute.v1.ReservationAffinityH\x19\x88\x01\x01\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\x12H\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32\'.google.cloud.compute.v1.ResourceStatusH\x1a\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\x1b\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x1c\x88\x01\x01\x12@\n\nscheduling\x18\x94\xcb\xb1\xb8\x01 \x01(\x0b\x32#.google.cloud.compute.v1.SchedulingH\x1d\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x1e\x88\x01\x01\x12\x45\n\x10service_accounts\x18\xb0\xc4\xab\x84\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.ServiceAccount\x12Y\n\x18shielded_instance_config\x18\xb5\x8b\x91\x06 \x01(\x0b\x32/.google.cloud.compute.v1.ShieldedInstanceConfigH\x1f\x88\x01\x01\x12l\n\"shielded_instance_integrity_policy\x18\x97\xa2\x87N \x01(\x0b\x32\x38.google.cloud.compute.v1.ShieldedInstanceIntegrityPolicyH \x88\x01\x01\x12$\n\x14source_machine_image\x18\xbf\xdc\xb0\n \x01(\tH!\x88\x01\x01\x12\x63\n#source_machine_image_encryption_key\x18\xa3\xfb\xf9[ \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\"\x88\x01\x01\x12 \n\x10start_restricted\x18\xd8\xd0\xfd: \x01(\x08H#\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH$\x88\x01\x01\x12\x1f\n\x0estatus_message\x18\xba\xc9\xe9\x8d\x01 \x01(\tH%\x88\x01\x01\x12\x33\n\x04tags\x18\x99\xe8\xd8\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.TagsH&\x88\x01\x01\x12Z\n\x18workload_identity_config\x18\x9b\x82\xa2\xa1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.WorkloadIdentityConfigH\'\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH(\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8d\x01\n\x17KeyRevocationActionType\x12(\n$UNDEFINED_KEY_REVOCATION_ACTION_TYPE\x10\x00\x12.\n&KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED\x10\xda\x91\xde\xde\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x0b\n\x04STOP\x10\x82\x80\x9c\x01\"\xc0\x01\n\x17PrivateIpv6GoogleAccess\x12(\n$UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS\x10\x00\x12-\n%ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE\x10\xba\xca\x89\xcc\x01\x12+\n#ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE\x10\xd7\xfa\xb6\x89\x01\x12\x1f\n\x17INHERIT_FROM_SUBNETWORK\x10\xbf\xa8\xec\xfc\x01\"\xec\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x16\n\x0e\x44\x45PROVISIONING\x10\xee\x93\xc4\xcc\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x14\n\x0cPROVISIONING\x10\xed\xf5\xda\x8a\x01\x12\x11\n\tREPAIRING\x10\x95\x82\x95\xc5\x01\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x12\x0f\n\x07STAGING\x10\x9b\xc8\xc6\xcd\x01\x12\x0f\n\x07STOPPED\x10\xad\xbb\xec\xd3\x01\x12\x10\n\x08STOPPING\x10\xf4\xd0\xa2\xa7\x01\x12\x10\n\tSUSPENDED\x10\xbb\xbb\xb6\x18\x12\x12\n\nSUSPENDING\x10\xa6\xd4\x98\xf5\x01\x12\x11\n\nTERMINATED\x10\xa3\xf4\x9bwB\x1c\n\x1a_advanced_machine_featuresB\x11\n\x0f_can_ip_forwardB\x1f\n\x1d_confidential_instance_configB\x0f\n\r_cpu_platformB\x15\n\x13_creation_timestampB\x16\n\x14_deletion_protectionB\x0e\n\x0c_descriptionB\x11\n\x0f_display_deviceB\x0e\n\x0c_fingerprintB\x0b\n\t_hostnameB\x05\n\x03_idB\x1a\n\x18_instance_encryption_keyB\x1d\n\x1b_key_revocation_action_typeB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x17\n\x15_last_start_timestampB\x16\n\x14_last_stop_timestampB\x1b\n\x19_last_suspended_timestampB\x0f\n\r_machine_typeB\x0b\n\t_metadataB\x13\n\x11_min_cpu_platformB\x07\n\x05_nameB\x1d\n\x1b_network_performance_configB\t\n\x07_paramsB\x1d\n\x1b_private_ipv6_google_accessB\x17\n\x15_reservation_affinityB\x12\n\x10_resource_statusB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\r\n\x0b_schedulingB\x0c\n\n_self_linkB\x1b\n\x19_shielded_instance_configB%\n#_shielded_instance_integrity_policyB\x17\n\x15_source_machine_imageB&\n$_source_machine_image_encryption_keyB\x13\n\x11_start_restrictedB\t\n\x07_statusB\x11\n\x0f_status_messageB\x07\n\x05_tagsB\x1b\n\x19_workload_identity_configB\x07\n\x05_zone\"\xb9\x03\n\x16InstanceAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12L\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32:.google.cloud.compute.v1.InstanceAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aZ\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12;\n\x05value\x18\x02 \x01(\x0b\x32,.google.cloud.compute.v1.InstancesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa9\x01\n\x17InstanceConsumptionData\x12R\n\x10\x63onsumption_info\x18\xd2\xe5\xe4\x45 \x01(\x0b\x32\x30.google.cloud.compute.v1.InstanceConsumptionInfoH\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x01\x88\x01\x01\x42\x13\n\x11_consumption_infoB\x0b\n\t_instance\"\xd0\x01\n\x17InstanceConsumptionInfo\x12\x1b\n\nguest_cpus\x18\xd2\xcb\xc8\xbb\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1d\n\x0clocal_ssd_gb\x18\xca\x88\xff\x9c\x01 \x01(\x05H\x01\x88\x01\x01\x12\x19\n\tmemory_mb\x18\x93\x93\xa8\x37 \x01(\x05H\x02\x88\x01\x01\x12\x1e\n\rmin_node_cpus\x18\xbb\xa4\xa2\x97\x01 \x01(\x05H\x03\x88\x01\x01\x42\r\n\x0b_guest_cpusB\x0f\n\r_local_ssd_gbB\x0c\n\n_memory_mbB\x10\n\x0e_min_node_cpus\"\x87\x02\n\x19InstanceFlexibilityPolicy\x12j\n\x13instance_selections\x18\xd1\x84\xf9\n \x03(\x0b\x32J.google.cloud.compute.v1.InstanceFlexibilityPolicy.InstanceSelectionsEntry\x1a~\n\x17InstanceSelectionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12R\n\x05value\x18\x02 \x01(\x0b\x32\x43.google.cloud.compute.v1.InstanceFlexibilityPolicyInstanceSelection:\x02\x38\x01\"\x9e\x01\n*InstanceFlexibilityPolicyInstanceSelection\x12\x37\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32%.google.cloud.compute.v1.AttachedDisk\x12\x18\n\rmachine_types\x18\x81\xdd\x81& \x03(\t\x12\x14\n\x04rank\x18\xac\x98\xd5\x01 \x01(\x03H\x00\x88\x01\x01\x42\x07\n\x05_rank\"\x95\x04\n\rInstanceGroup\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12;\n\x0bnamed_ports\x18\x8c\xc7\xf2\xcb\x01 \x03(\x0b\x32\".google.cloud.compute.v1.NamedPort\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12\x14\n\x04size\x18\x81\xc0\xd7\x01 \x01(\x05H\t\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\n\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0b\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_regionB\x0c\n\n_self_linkB\x07\n\x05_sizeB\r\n\x0b_subnetworkB\x07\n\x05_zone\"\xc8\x03\n\x1bInstanceGroupAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12Q\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32?.google.cloud.compute.v1.InstanceGroupAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a_\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12@\n\x05value\x18\x02 \x01(\x0b\x32\x31.google.cloud.compute.v1.InstanceGroupsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xab\x02\n\x11InstanceGroupList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x38\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32&.google.cloud.compute.v1.InstanceGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xf7\x13\n\x14InstanceGroupManager\x12\x65\n\x14\x61ll_instances_config\x18\x81\xae\xd8\x35 \x01(\x0b\x32?.google.cloud.compute.v1.InstanceGroupManagerAllInstancesConfigH\x00\x88\x01\x01\x12\x61\n\x15\x61uto_healing_policies\x18\x85\xe7\xe8\xd9\x01 \x03(\x0b\x32>.google.cloud.compute.v1.InstanceGroupManagerAutoHealingPolicy\x12#\n\x12\x62\x61se_instance_name\x18\x87\x96\xc5\xb9\x01 \x01(\tH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\\\n\x0f\x63urrent_actions\x18\xb7\xc8\x9cN \x01(\x0b\x32;.google.cloud.compute.v1.InstanceGroupManagerActionsSummaryH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12Q\n\x13\x64istribution_policy\x18\xcd\xee\xf2\xfe\x01 \x01(\x0b\x32+.google.cloud.compute.v1.DistributionPolicyH\x05\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x06\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x07\x88\x01\x01\x12s\n\x1binstance_flexibility_policy\x18\x82\x8e\xec\x0c \x01(\x0b\x32\x46.google.cloud.compute.v1.InstanceGroupManagerInstanceFlexibilityPolicyH\x08\x88\x01\x01\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tH\t\x88\x01\x01\x12p\n\x19instance_lifecycle_policy\x18\x91\xb4\xcd\xd5\x01 \x01(\x0b\x32\x44.google.cloud.compute.v1.InstanceGroupManagerInstanceLifecyclePolicyH\n\x88\x01\x01\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tH\x0b\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x0c\x88\x01\x01\x12/\n\x1elist_managed_instances_results\x18\xb4\xa4\x95\x8d\x01 \x01(\tH\r\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0e\x88\x01\x01\x12;\n\x0bnamed_ports\x18\x8c\xc7\xf2\xcb\x01 \x03(\x0b\x32\".google.cloud.compute.v1.NamedPort\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0f\x88\x01\x01\x12`\n\x11resource_policies\x18\xe1\x9c\xcc\n \x01(\x0b\x32=.google.cloud.compute.v1.InstanceGroupManagerResourcePoliciesH\x10\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\x11\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x12\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x13\x88\x01\x01\x12[\n\x0estandby_policy\x18\x84\x86\x8e\xee\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InstanceGroupManagerStandbyPolicyH\x14\x88\x01\x01\x12H\n\x0fstateful_policy\x18\x85\xc3\xd5\x16 \x01(\x0b\x32\'.google.cloud.compute.v1.StatefulPolicyH\x15\x88\x01\x01\x12K\n\x06status\x18\xf2\x9f\xb7V \x01(\x0b\x32\x33.google.cloud.compute.v1.InstanceGroupManagerStatusH\x16\x88\x01\x01\x12\x18\n\x0ctarget_pools\x18\xa9\x9f\xa0\xa0\x01 \x03(\t\x12\x1b\n\x0btarget_size\x18\xef\xf3\xfd\x1d \x01(\x05H\x17\x88\x01\x01\x12\x61\n\x12target_size_policy\x18\x82\xdb\xb3= \x01(\x0b\x32=.google.cloud.compute.v1.InstanceGroupManagerTargetSizePolicyH\x18\x88\x01\x01\x12#\n\x13target_stopped_size\x18\xa1\xd6\x93\x01 \x01(\x05H\x19\x88\x01\x01\x12&\n\x15target_suspended_size\x18\xd3\x88\xf4\x92\x01 \x01(\x05H\x1a\x88\x01\x01\x12X\n\rupdate_policy\x18\xe8\xca\xeaS \x01(\x0b\x32\x39.google.cloud.compute.v1.InstanceGroupManagerUpdatePolicyH\x1b\x88\x01\x01\x12I\n\x08versions\x18\x9b\xfd\xb9M \x03(\x0b\x32\x34.google.cloud.compute.v1.InstanceGroupManagerVersion\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x1c\x88\x01\x01\"n\n\x1bListManagedInstancesResults\x12,\n(UNDEFINED_LIST_MANAGED_INSTANCES_RESULTS\x10\x00\x12\x0f\n\x08PAGELESS\x10\xa8\xa9\xac\x0f\x12\x10\n\tPAGINATED\x10\xad\x85\x95\x13\x42\x17\n\x15_all_instances_configB\x15\n\x13_base_instance_nameB\x15\n\x13_creation_timestampB\x12\n\x10_current_actionsB\x0e\n\x0c_descriptionB\x16\n\x14_distribution_policyB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x1e\n\x1c_instance_flexibility_policyB\x11\n\x0f_instance_groupB\x1c\n\x1a_instance_lifecycle_policyB\x14\n\x12_instance_templateB\x07\n\x05_kindB!\n\x1f_list_managed_instances_resultsB\x07\n\x05_nameB\t\n\x07_regionB\x14\n\x12_resource_policiesB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\x11\n\x0f_standby_policyB\x12\n\x10_stateful_policyB\t\n\x07_statusB\x0e\n\x0c_target_sizeB\x15\n\x13_target_size_policyB\x16\n\x14_target_stopped_sizeB\x18\n\x16_target_suspended_sizeB\x10\n\x0e_update_policyB\x07\n\x05_zone\"\xd3\x04\n\"InstanceGroupManagerActionsSummary\x12\x1b\n\nabandoning\x18\xcd\xf2\xe8\xd1\x01 \x01(\x05H\x00\x88\x01\x01\x12\x18\n\x08\x63reating\x18\xb9\xdd\x85\x64 \x01(\x05H\x01\x88\x01\x01\x12)\n\x18\x63reating_without_retries\x18\xc9\xf6\xb1\xb0\x01 \x01(\x05H\x02\x88\x01\x01\x12\x19\n\x08\x64\x65leting\x18\xa8\xc7\xef\x86\x01 \x01(\x05H\x03\x88\x01\x01\x12\x14\n\x04none\x18\xb8\xde\xce\x01 \x01(\x05H\x04\x88\x01\x01\x12\x1b\n\nrecreating\x18\xec\xb3\xd6\xa1\x01 \x01(\x05H\x05\x88\x01\x01\x12\x1a\n\nrefreshing\x18\xa7\xa6\xc5\x66 \x01(\x05H\x06\x88\x01\x01\x12\x1b\n\nrestarting\x18\xf3\x96\xc4\xb1\x01 \x01(\x05H\x07\x88\x01\x01\x12\x18\n\x08resuming\x18\xaa\x9b\xf2_ \x01(\x05H\x08\x88\x01\x01\x12\x18\n\x08starting\x18\xc0\xc0\xf3s \x01(\x05H\t\x88\x01\x01\x12\x18\n\x08stopping\x18\xf4\xf0\x8a\x32 \x01(\x05H\n\x88\x01\x01\x12\x1a\n\nsuspending\x18\xa6\xfc\xf0\r \x01(\x05H\x0b\x88\x01\x01\x12\x1a\n\tverifying\x18\xc9\xa1\xac\xd7\x01 \x01(\x05H\x0c\x88\x01\x01\x42\r\n\x0b_abandoningB\x0b\n\t_creatingB\x1b\n\x19_creating_without_retriesB\x0b\n\t_deletingB\x07\n\x05_noneB\r\n\x0b_recreatingB\r\n\x0b_refreshingB\r\n\x0b_restartingB\x0b\n\t_resumingB\x0b\n\t_startingB\x0b\n\t_stoppingB\r\n\x0b_suspendingB\x0c\n\n_verifying\"\xdd\x03\n\"InstanceGroupManagerAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12X\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x46.google.cloud.compute.v1.InstanceGroupManagerAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x66\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12G\n\x05value\x18\x02 \x01(\x0b\x32\x38.google.cloud.compute.v1.InstanceGroupManagersScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x85\x01\n&InstanceGroupManagerAllInstancesConfig\x12L\n\nproperties\x18\xb3\x9a\xb6\x46 \x01(\x0b\x32\x30.google.cloud.compute.v1.InstancePropertiesPatchH\x00\x88\x01\x01\x42\r\n\x0b_properties\"\x90\x01\n%InstanceGroupManagerAutoHealingPolicy\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tH\x00\x88\x01\x01\x12!\n\x11initial_delay_sec\x18\xda\xf0\xc0} \x01(\x05H\x01\x88\x01\x01\x42\x0f\n\r_health_checkB\x14\n\x12_initial_delay_sec\"\xc4\x02\n-InstanceGroupManagerInstanceFlexibilityPolicy\x12~\n\x13instance_selections\x18\xd1\x84\xf9\n \x03(\x0b\x32^.google.cloud.compute.v1.InstanceGroupManagerInstanceFlexibilityPolicy.InstanceSelectionsEntry\x1a\x92\x01\n\x17InstanceSelectionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x66\n\x05value\x18\x02 \x01(\x0b\x32W.google.cloud.compute.v1.InstanceGroupManagerInstanceFlexibilityPolicyInstanceSelection:\x02\x38\x01\"y\n>InstanceGroupManagerInstanceFlexibilityPolicyInstanceSelection\x12\x18\n\rmachine_types\x18\x81\xdd\x81& \x03(\t\x12\x14\n\x04rank\x18\xac\x98\xd5\x01 \x01(\x05H\x00\x88\x01\x01\x42\x07\n\x05_rank\"\x89\x04\n+InstanceGroupManagerInstanceLifecyclePolicy\x12)\n\x19\x64\x65\x66\x61ult_action_on_failure\x18\xd5\xc4\xa2\x1d \x01(\tH\x00\x88\x01\x01\x12\'\n\x16\x66orce_update_on_repair\x18\xcb\xf9\xf2\xa9\x01 \x01(\tH\x01\x88\x01\x01\x12&\n\x16on_failed_health_check\x18\xc7\xd7\xfd\x12 \x01(\tH\x02\x88\x01\x01\"d\n\x16\x44\x65\x66\x61ultActionOnFailure\x12\'\n#UNDEFINED_DEFAULT_ACTION_ON_FAILURE\x10\x00\x12\x12\n\nDO_NOTHING\x10\xf9\xcf\x99\xd7\x01\x12\r\n\x06REPAIR\x10\x8d\xa7\xfc~\"O\n\x13\x46orceUpdateOnRepair\x12$\n UNDEFINED_FORCE_UPDATE_ON_REPAIR\x10\x00\x12\x07\n\x02NO\x10\xc1\x13\x12\t\n\x03YES\x10\xc7\xad\x05\"S\n\x13OnFailedHealthCheck\x12$\n UNDEFINED_ON_FAILED_HEALTH_CHECK\x10\x00\x12\x16\n\x0e\x44\x45\x46\x41ULT_ACTION\x10\x94\xac\x9e\xdd\x01\x42\x1c\n\x1a_default_action_on_failureB\x19\n\x17_force_update_on_repairB\x19\n\x17_on_failed_health_check\"\xb9\x02\n\x18InstanceGroupManagerList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManager\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x8d\x06\n!InstanceGroupManagerResizeRequest\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x04\x88\x01\x01\x12I\n\x16requested_run_duration\x18\xf9\x8b\xd9n \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x05\x88\x01\x01\x12\x1a\n\tresize_by\x18\xc2\xcf\xc0\xfe\x01 \x01(\x05H\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x08\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\t\x88\x01\x01\x12X\n\x06status\x18\xf2\x9f\xb7V \x01(\x0b\x32@.google.cloud.compute.v1.InstanceGroupManagerResizeRequestStatusH\n\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0b\x88\x01\x01\"\x8f\x01\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0f\n\x08\x41\x43\x43\x45PTED\x10\xa7\x9f\xd2u\x12\x10\n\tCANCELLED\x10\xb1\xf2\x80\x14\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x19\n\x11STATE_UNSPECIFIED\x10\xc9\xd0\xbc\xe0\x01\x12\x11\n\tSUCCEEDED\x10\xc1\xa4\xdb\xf3\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x19\n\x17_requested_run_durationB\x0c\n\n_resize_byB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x08\n\x06_stateB\t\n\x07_statusB\x07\n\x05_zone\"\xe7\x01\n\'InstanceGroupManagerResizeRequestStatus\x12\x35\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x1e.google.cloud.compute.v1.ErrorH\x00\x88\x01\x01\x12j\n\x0clast_attempt\x18\xa4\xac\xa8\xcf\x01 \x01(\x0b\x32K.google.cloud.compute.v1.InstanceGroupManagerResizeRequestStatusLastAttemptH\x01\x88\x01\x01\x42\x08\n\x06_errorB\x0f\n\r_last_attempt\"u\n2InstanceGroupManagerResizeRequestStatusLastAttempt\x12\x35\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x1e.google.cloud.compute.v1.ErrorH\x00\x88\x01\x01\x42\x08\n\x06_error\"\xdc\x02\n.InstanceGroupManagerResizeRequestsListResponse\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12L\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32:.google.cloud.compute.v1.InstanceGroupManagerResizeRequest\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"[\n$InstanceGroupManagerResourcePolicies\x12\x1f\n\x0fworkload_policy\x18\xfa\x85\xda\x36 \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_workload_policy\"\xbc\x01\n!InstanceGroupManagerStandbyPolicy\x12!\n\x11initial_delay_sec\x18\xda\xf0\xc0} \x01(\x05H\x00\x88\x01\x01\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x01\x88\x01\x01\"?\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\r\n\x06MANUAL\x10\xc6\xb7\xf7\x38\x12\x14\n\x0eSCALE_OUT_POOL\x10\x82\xe4&B\x14\n\x12_initial_delay_secB\x07\n\x05_mode\"\xd5\x05\n\x1aInstanceGroupManagerStatus\x12k\n\x14\x61ll_instances_config\x18\x81\xae\xd8\x35 \x01(\x0b\x32\x45.google.cloud.compute.v1.InstanceGroupManagerStatusAllInstancesConfigH\x00\x88\x01\x01\x12r\n\x1e\x61pplied_accelerator_topologies\x18\xa3\xef\xc5\xe5\x01 \x03(\x0b\x32\x46.google.cloud.compute.v1.InstanceGroupManagerStatusAcceleratorTopology\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tH\x01\x88\x01\x01\x12r\n\x17\x62ulk_instance_operation\x18\x8a\xad\x9b\xef\x01 \x01(\x0b\x32H.google.cloud.compute.v1.InstanceGroupManagerStatusBulkInstanceOperationH\x02\x88\x01\x01\x12\x19\n\tis_stable\x18\xf0\xef\xd8\x33 \x01(\x08H\x03\x88\x01\x01\x12U\n\x08stateful\x18\xcc\xe6\xc8t \x01(\x0b\x32;.google.cloud.compute.v1.InstanceGroupManagerStatusStatefulH\x04\x88\x01\x01\x12\x61\n\x0eversion_target\x18\xd8\xdd\xfe\x89\x01 \x01(\x0b\x32@.google.cloud.compute.v1.InstanceGroupManagerStatusVersionTargetH\x05\x88\x01\x01\x42\x17\n\x15_all_instances_configB\r\n\x0b_autoscalerB\x1a\n\x18_bulk_instance_operationB\x0c\n\n_is_stableB\x0b\n\t_statefulB\x11\n\x0f_version_target\"\xb9\x03\n-InstanceGroupManagerStatusAcceleratorTopology\x12%\n\x14\x61\x63\x63\x65lerator_topology\x18\xc3\xb3\xd2\xb9\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x01\x88\x01\x01\x12\x84\x01\n\rstate_details\x18\x94\xf9\xc8- \x01(\x0b\x32\x65.google.cloud.compute.v1.InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetailsH\x02\x88\x01\x01\"\x8d\x01\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x12\n\nACTIVATING\x10\xf0\xd9\xd1\xb4\x01\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x13\n\x0c\x44\x45\x41\x43TIVATING\x10\xb1\x90\xa2\x1b\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x11\n\nINCOMPLETE\x10\xde\xea\xd8\x05\x12\x13\n\x0cREACTIVATING\x10\xe3\xa6\xfexB\x17\n\x15_accelerator_topologyB\x08\n\x06_stateB\x10\n\x0e_state_details\"\xb8\x01\nLInstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails\x12\x35\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x1e.google.cloud.compute.v1.ErrorH\x00\x88\x01\x01\x12\x19\n\ttimestamp\x18\x96\xd2\xa4\x1a \x01(\tH\x01\x88\x01\x01\x42\x08\n\x06_errorB\x0c\n\n_timestamp\"\x8e\x01\n,InstanceGroupManagerStatusAllInstancesConfig\x12 \n\x10\x63urrent_revision\x18\xe1\x87\xa5\x12 \x01(\tH\x00\x88\x01\x01\x12\x19\n\teffective\x18\xa7\xd3\xd8\x43 \x01(\x08H\x01\x88\x01\x01\x42\x13\n\x11_current_revisionB\x0c\n\n_effective\"\xf7\x01\n/InstanceGroupManagerStatusBulkInstanceOperation\x12\x1c\n\x0bin_progress\x18\x87\xc0\xd7\x98\x01 \x01(\x08H\x00\x88\x01\x01\x12~\n\x13last_progress_check\x18\xbf\xa2\xbe\x63 \x01(\x0b\x32Y.google.cloud.compute.v1.InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheckH\x01\x88\x01\x01\x42\x0e\n\x0c_in_progressB\x16\n\x14_last_progress_check\"\xac\x01\n@InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck\x12\x35\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x1e.google.cloud.compute.v1.ErrorH\x00\x88\x01\x01\x12\x19\n\ttimestamp\x18\x96\xd2\xa4\x1a \x01(\tH\x01\x88\x01\x01\x42\x08\n\x06_errorB\x0c\n\n_timestamp\"\xf0\x01\n\"InstanceGroupManagerStatusStateful\x12#\n\x13has_stateful_config\x18\xf0\xe7\xd6\x34 \x01(\x08H\x00\x88\x01\x01\x12t\n\x14per_instance_configs\x18\xa9\xd5\xf8\xfa\x01 \x01(\x0b\x32M.google.cloud.compute.v1.InstanceGroupManagerStatusStatefulPerInstanceConfigsH\x01\x88\x01\x01\x42\x16\n\x14_has_stateful_configB\x17\n\x15_per_instance_configs\"h\n4InstanceGroupManagerStatusStatefulPerInstanceConfigs\x12\x1e\n\rall_effective\x18\x89\x91\xa7\xf6\x01 \x01(\x08H\x00\x88\x01\x01\x42\x10\n\x0e_all_effective\"U\n\'InstanceGroupManagerStatusVersionTarget\x12\x1b\n\nis_reached\x18\xbd\xfe\xc8\xce\x01 \x01(\x08H\x00\x88\x01\x01\x42\r\n\x0b_is_reached\"\x9a\x01\n$InstanceGroupManagerTargetSizePolicy\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x00\x88\x01\x01\"S\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\n\n\x04\x42ULK\x10\x92\x92}\x12\x12\n\nINDIVIDUAL\x10\x99\x9d\x9e\xd1\x01\x12\x17\n\x10UNSPECIFIED_MODE\x10\xcb\xc3\xce\x19\x42\x07\n\x05_mode\"\xdc\x06\n InstanceGroupManagerUpdatePolicy\x12-\n\x1cinstance_redistribution_type\x18\x98\xdf\xc4\x8b\x01 \x01(\tH\x00\x88\x01\x01\x12\x43\n\tmax_surge\x18\x93\xc9\xa3\x90\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FixedOrPercentH\x01\x88\x01\x01\x12I\n\x0fmax_unavailable\x18\xf5\xcb\x8b\xc1\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FixedOrPercentH\x02\x88\x01\x01\x12\x1f\n\x0eminimal_action\x18\x94\x8d\x82\x81\x01 \x01(\tH\x03\x88\x01\x01\x12.\n\x1emost_disruptive_allowed_action\x18\x8d\xce\xc2\x1f \x01(\tH\x04\x88\x01\x01\x12#\n\x12replacement_method\x18\xae\xcf\x9f\xf1\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x06\x88\x01\x01\"H\n\x1aInstanceRedistributionType\x12*\n&UNDEFINED_INSTANCE_REDISTRIBUTION_TYPE\x10\x00\"-\n\rMinimalAction\x12\x1c\n\x18UNDEFINED_MINIMAL_ACTION\x10\x00\"K\n\x1bMostDisruptiveAllowedAction\x12,\n(UNDEFINED_MOST_DISRUPTIVE_ALLOWED_ACTION\x10\x00\"[\n\x11ReplacementMethod\x12 \n\x1cUNDEFINED_REPLACEMENT_METHOD\x10\x00\x12\x10\n\x08RECREATE\x10\xef\xd9\x9b\xf9\x01\x12\x12\n\nSUBSTITUTE\x10\x9a\xa1\xfa\x85\x01\"1\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x15\n\rOPPORTUNISTIC\x10\xe9\xb7\xe8\xcc\x01\x42\x1f\n\x1d_instance_redistribution_typeB\x0c\n\n_max_surgeB\x12\n\x10_max_unavailableB\x11\n\x0f_minimal_actionB!\n\x1f_most_disruptive_allowed_actionB\x15\n\x13_replacement_methodB\x07\n\x05_type\"\xcc\x01\n\x1bInstanceGroupManagerVersion\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12\x44\n\x0btarget_size\x18\xef\xf3\xfd\x1d \x01(\x0b\x32\'.google.cloud.compute.v1.FixedOrPercentH\x02\x88\x01\x01\x42\x14\n\x12_instance_templateB\x07\n\x05_nameB\x0e\n\x0c_target_size\"D\n,InstanceGroupManagersAbandonInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"\xf5\x02\n(InstanceGroupManagersApplyUpdatesRequest\x12\x1e\n\rall_instances\x18\xe0\xba\xbe\xc0\x01 \x01(\x08H\x00\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\x12\x1f\n\x0eminimal_action\x18\x94\x8d\x82\x81\x01 \x01(\tH\x01\x88\x01\x01\x12.\n\x1emost_disruptive_allowed_action\x18\x8d\xce\xc2\x1f \x01(\tH\x02\x88\x01\x01\"-\n\rMinimalAction\x12\x1c\n\x18UNDEFINED_MINIMAL_ACTION\x10\x00\"K\n\x1bMostDisruptiveAllowedAction\x12,\n(UNDEFINED_MOST_DISRUPTIVE_ALLOWED_ACTION\x10\x00\x42\x10\n\x0e_all_instancesB\x11\n\x0f_minimal_actionB!\n\x1f_most_disruptive_allowed_action\"o\n+InstanceGroupManagersCreateInstancesRequest\x12@\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\"\x9e\x01\n+InstanceGroupManagersDeleteInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\x12\x32\n\"skip_instances_on_validation_error\x18\xa1\xf6\xaf\x13 \x01(\x08H\x00\x88\x01\x01\x42%\n#_skip_instances_on_validation_error\"D\n0InstanceGroupManagersDeletePerInstanceConfigsReq\x12\x10\n\x05names\x18\xc8\xae\xef\x31 \x03(\t\"\xa4\x01\n\'InstanceGroupManagersListErrorsResponse\x12\x44\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x32.google.cloud.compute.v1.InstanceManagedByIgmError\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_next_page_token\"\xb1\x01\n1InstanceGroupManagersListManagedInstancesResponse\x12G\n\x11managed_instances\x18\xde\x9b\xa9\xa0\x01 \x03(\x0b\x32(.google.cloud.compute.v1.ManagedInstance\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_next_page_token\"\xeb\x01\n/InstanceGroupManagersListPerInstanceConfigsResp\x12<\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x00\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x01\x88\x01\x01\x42\x12\n\x10_next_page_tokenB\n\n\x08_warning\"\x7f\n/InstanceGroupManagersPatchPerInstanceConfigsReq\x12L\n\x14per_instance_configs\x18\xa9\xd5\xf8\xfa\x01 \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\"E\n-InstanceGroupManagersRecreateInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"C\n+InstanceGroupManagersResumeInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"\xbb\x01\n\x1fInstanceGroupManagersScopedList\x12Q\n\x17instance_group_managers\x18\x90\xfa\x89\x66 \x03(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManager\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"k\n/InstanceGroupManagersSetInstanceTemplateRequest\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tH\x00\x88\x01\x01\x42\x14\n\x12_instance_template\"s\n*InstanceGroupManagersSetTargetPoolsRequest\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0ctarget_pools\x18\xa9\x9f\xa0\xa0\x01 \x03(\tB\x0e\n\x0c_fingerprint\"B\n*InstanceGroupManagersStartInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"l\n)InstanceGroupManagersStopInstancesRequest\x12\x1a\n\nforce_stop\x18\xd6\xa1\xa1@ \x01(\x08H\x00\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\tB\r\n\x0b_force_stop\"u\n,InstanceGroupManagersSuspendInstancesRequest\x12\x1d\n\rforce_suspend\x18\xe8\xed\x96\r \x01(\x08H\x00\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\tB\x10\n\x0e_force_suspend\"\x80\x01\n0InstanceGroupManagersUpdatePerInstanceConfigsReq\x12L\n\x14per_instance_configs\x18\xa9\xd5\xf8\xfa\x01 \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\"e\n!InstanceGroupsAddInstancesRequest\x12@\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32*.google.cloud.compute.v1.InstanceReference\"\xbe\x02\n\x1bInstanceGroupsListInstances\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x41\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32/.google.cloud.compute.v1.InstanceWithNamedPorts\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa1\x01\n\"InstanceGroupsListInstancesRequest\x12\x1e\n\x0einstance_state\x18\xe7\xf0\xfc+ \x01(\tH\x00\x88\x01\x01\"H\n\rInstanceState\x12\x1c\n\x18UNDEFINED_INSTANCE_STATE\x10\x00\x12\t\n\x03\x41LL\x10\x81\xfb\x03\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x42\x11\n\x0f_instance_state\"h\n$InstanceGroupsRemoveInstancesRequest\x12@\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32*.google.cloud.compute.v1.InstanceReference\"\xa6\x01\n\x18InstanceGroupsScopedList\x12\x43\n\x0finstance_groups\x18\xbe\xc1\xdf\xae\x01 \x03(\x0b\x32&.google.cloud.compute.v1.InstanceGroup\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x8e\x01\n\"InstanceGroupsSetNamedPortsRequest\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12;\n\x0bnamed_ports\x18\x8c\xc7\xf2\xcb\x01 \x03(\x0b\x32\".google.cloud.compute.v1.NamedPortB\x0e\n\x0c_fingerprint\"\xa1\x02\n\x0cInstanceList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x33\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32!.google.cloud.compute.v1.Instance\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xab\x02\n\x15InstanceListReferrers\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x34\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\".google.cloud.compute.v1.Reference\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbc\x02\n\x19InstanceManagedByIgmError\x12]\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x46.google.cloud.compute.v1.InstanceManagedByIgmErrorManagedInstanceErrorH\x00\x88\x01\x01\x12q\n\x17instance_action_details\x18\xa3\xfc\xab\x8b\x01 \x01(\x0b\x32G.google.cloud.compute.v1.InstanceManagedByIgmErrorInstanceActionDetailsH\x01\x88\x01\x01\x12\x19\n\ttimestamp\x18\x96\xd2\xa4\x1a \x01(\tH\x02\x88\x01\x01\x42\x08\n\x06_errorB\x1a\n\x18_instance_action_detailsB\x0c\n\n_timestamp\"\xf0\x03\n.InstanceManagedByIgmErrorInstanceActionDetails\x12\x16\n\x06\x61\x63tion\x18\xb6\xfc\xbdY \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x01\x88\x01\x01\x12I\n\x07version\x18\xd8\xb9\xd4\xa7\x01 \x01(\x0b\x32/.google.cloud.compute.v1.ManagedInstanceVersionH\x02\x88\x01\x01\"\x9c\x02\n\x06\x41\x63tion\x12\x14\n\x10UNDEFINED_ACTION\x10\x00\x12\x12\n\nABANDONING\x10\xcd\xca\x90\xb9\x01\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12 \n\x18\x43REATING_WITHOUT_RETRIES\x10\x89\xc6\xbe\xcc\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x12\n\nRECREATING\x10\xec\x8b\xfe\x88\x01\x12\x11\n\nREFRESHING\x10\xa7\xfe\xecM\x12\x12\n\nRESTARTING\x10\xf3\xee\xeb\x98\x01\x12\x10\n\x08RESUMING\x10\xaa\xfb\x89\xd5\x01\x12\x10\n\x08STARTING\x10\xc0\xa0\x8b\xe9\x01\x12\x10\n\x08STOPPING\x10\xf4\xd0\xa2\xa7\x01\x12\x12\n\nSUSPENDING\x10\xa6\xd4\x98\xf5\x01\x12\x10\n\tVERIFYING\x10\xa9\xc1\x8c\x08\x42\t\n\x07_actionB\x0b\n\t_instanceB\n\n\x08_version\"t\n-InstanceManagedByIgmErrorManagedInstanceError\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_codeB\n\n\x08_message\"\x82\x01\n\x13InstanceMoveRequest\x12 \n\x10\x64\x65stination_zone\x18\xbd\xe2\xef> \x01(\tH\x00\x88\x01\x01\x12 \n\x0ftarget_instance\x18\x83\x8f\x96\x8a\x01 \x01(\tH\x01\x88\x01\x01\x42\x13\n\x11_destination_zoneB\x12\n\x10_target_instance\"\x9f\x02\n\x0eInstanceParams\x12M\n\x1arequest_valid_for_duration\x18\xdd\x96\xb7\x37 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x00\x88\x01\x01\x12\x63\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32@.google.cloud.compute.v1.InstanceParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x1d\n\x1b_request_valid_for_duration\"\xd1\x11\n\x12InstanceProperties\x12\\\n\x19\x61\x64vanced_machine_features\x18\xb2\xe7\xaa\xc3\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.AdvancedMachineFeaturesH\x00\x88\x01\x01\x12\x1f\n\x0e\x63\x61n_ip_forward\x18\xfc\x86\x84\xdf\x01 \x01(\x08H\x01\x88\x01\x01\x12\x62\n\x1c\x63onfidential_instance_config\x18\xf5\x92\xfa\xe9\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.ConfidentialInstanceConfigH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x37\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32%.google.cloud.compute.v1.AttachedDisk\x12J\n\x12guest_accelerators\x18\xef\xcc\x87\xdd\x01 \x03(\x0b\x32*.google.cloud.compute.v1.AcceleratorConfig\x12*\n\x1akey_revocation_action_type\x18\xe2\xdc\xc0p \x01(\tH\x04\x88\x01\x01\x12K\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x37.google.cloud.compute.v1.InstanceProperties.LabelsEntry\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x05\x88\x01\x01\x12;\n\x08metadata\x18\xaf\xf6\xb5) \x01(\x0b\x32!.google.cloud.compute.v1.MetadataH\x06\x88\x01\x01\x12 \n\x10min_cpu_platform\x18\xf7\x9b\xeas \x01(\tH\x07\x88\x01\x01\x12H\n\x12network_interfaces\x18\x8b\xda\x92\x19 \x03(\x0b\x32).google.cloud.compute.v1.NetworkInterface\x12^\n\x1anetwork_performance_config\x18\xe2\x97\xf8\xbd\x01 \x01(\x0b\x32\x31.google.cloud.compute.v1.NetworkPerformanceConfigH\x08\x88\x01\x01\x12*\n\x1aprivate_ipv6_google_access\x18\x8e\xcc\x82\x17 \x01(\tH\t\x88\x01\x01\x12R\n\x14reservation_affinity\x18\xbb\xb8\xa2K \x01(\x0b\x32,.google.cloud.compute.v1.ReservationAffinityH\n\x88\x01\x01\x12g\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x44.google.cloud.compute.v1.InstanceProperties.ResourceManagerTagsEntry\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\x12@\n\nscheduling\x18\x94\xcb\xb1\xb8\x01 \x01(\x0b\x32#.google.cloud.compute.v1.SchedulingH\x0b\x88\x01\x01\x12\x45\n\x10service_accounts\x18\xb0\xc4\xab\x84\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.ServiceAccount\x12Y\n\x18shielded_instance_config\x18\xb5\x8b\x91\x06 \x01(\x0b\x32/.google.cloud.compute.v1.ShieldedInstanceConfigH\x0c\x88\x01\x01\x12\x33\n\x04tags\x18\x99\xe8\xd8\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.TagsH\r\x88\x01\x01\x12Z\n\x18workload_identity_config\x18\x9b\x82\xa2\xa1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.WorkloadIdentityConfigH\x0e\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8d\x01\n\x17KeyRevocationActionType\x12(\n$UNDEFINED_KEY_REVOCATION_ACTION_TYPE\x10\x00\x12.\n&KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED\x10\xda\x91\xde\xde\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x0b\n\x04STOP\x10\x82\x80\x9c\x01\"\xc0\x01\n\x17PrivateIpv6GoogleAccess\x12(\n$UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS\x10\x00\x12-\n%ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE\x10\xba\xca\x89\xcc\x01\x12+\n#ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE\x10\xd7\xfa\xb6\x89\x01\x12\x1f\n\x17INHERIT_FROM_SUBNETWORK\x10\xbf\xa8\xec\xfc\x01\x42\x1c\n\x1a_advanced_machine_featuresB\x11\n\x0f_can_ip_forwardB\x1f\n\x1d_confidential_instance_configB\x0e\n\x0c_descriptionB\x1d\n\x1b_key_revocation_action_typeB\x0f\n\r_machine_typeB\x0b\n\t_metadataB\x13\n\x11_min_cpu_platformB\x1d\n\x1b_network_performance_configB\x1d\n\x1b_private_ipv6_google_accessB\x17\n\x15_reservation_affinityB\r\n\x0b_schedulingB\x1b\n\x19_shielded_instance_configB\x07\n\x05_tagsB\x1b\n\x19_workload_identity_config\"\xa0\x02\n\x17InstancePropertiesPatch\x12P\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32<.google.cloud.compute.v1.InstancePropertiesPatch.LabelsEntry\x12S\n\x08metadata\x18\xaf\xf6\xb5) \x03(\x0b\x32>.google.cloud.compute.v1.InstancePropertiesPatch.MetadataEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\":\n\x11InstanceReference\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_instance\"\xd7\x01\n\x10InstanceSettings\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12K\n\x08metadata\x18\xaf\xf6\xb5) \x01(\x0b\x32\x31.google.cloud.compute.v1.InstanceSettingsMetadataH\x02\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x03\x88\x01\x01\x42\x0e\n\x0c_fingerprintB\x07\n\x05_kindB\x0b\n\t_metadataB\x07\n\x05_zone\"\xb7\x01\n\x18InstanceSettingsMetadata\x12N\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32<.google.cloud.compute.v1.InstanceSettingsMetadata.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x1a,\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x07\n\x05_kind\"\x9f\x04\n\x10InstanceTemplate\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x04\x88\x01\x01\x12G\n\nproperties\x18\xb3\x9a\xb6\x46 \x01(\x0b\x32+.google.cloud.compute.v1.InstancePropertiesH\x05\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12 \n\x0fsource_instance\x18\xb9\x98\xfd\xbc\x01 \x01(\tH\x08\x88\x01\x01\x12U\n\x16source_instance_params\x18\xcc\xd0\xc4@ \x01(\x0b\x32-.google.cloud.compute.v1.SourceInstanceParamsH\t\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\r\n\x0b_propertiesB\t\n\x07_regionB\x0c\n\n_self_linkB\x12\n\x10_source_instanceB\x19\n\x17_source_instance_params\"\xb8\x03\n\x1eInstanceTemplateAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12T\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x42.google.cloud.compute.v1.InstanceTemplateAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x62\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.google.cloud.compute.v1.InstanceTemplatesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb1\x02\n\x14InstanceTemplateList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12;\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32).google.cloud.compute.v1.InstanceTemplate\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xaf\x01\n\x1bInstanceTemplatesScopedList\x12I\n\x12instance_templates\x18\x8f\xb8\xa5\xdb\x01 \x03(\x0b\x32).google.cloud.compute.v1.InstanceTemplate\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x8e\x03\n\x16InstanceWithNamedPorts\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x00\x88\x01\x01\x12;\n\x0bnamed_ports\x18\x8c\xc7\xf2\xcb\x01 \x03(\x0b\x32\".google.cloud.compute.v1.NamedPort\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x01\x88\x01\x01\"\xec\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x16\n\x0e\x44\x45PROVISIONING\x10\xee\x93\xc4\xcc\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x14\n\x0cPROVISIONING\x10\xed\xf5\xda\x8a\x01\x12\x11\n\tREPAIRING\x10\x95\x82\x95\xc5\x01\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x12\x0f\n\x07STAGING\x10\x9b\xc8\xc6\xcd\x01\x12\x0f\n\x07STOPPED\x10\xad\xbb\xec\xd3\x01\x12\x10\n\x08STOPPING\x10\xf4\xd0\xa2\xa7\x01\x12\x10\n\tSUSPENDED\x10\xbb\xbb\xb6\x18\x12\x12\n\nSUSPENDING\x10\xa6\xd4\x98\xf5\x01\x12\x11\n\nTERMINATED\x10\xa3\xf4\x9bwB\x0b\n\t_instanceB\t\n\x07_status\"C\n#InstancesAddResourcePoliciesRequest\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\"\x8a\x02\n$InstancesBulkInsertOperationMetadata\x12t\n\x13per_location_status\x18\x9a\xe9\x84P \x03(\x0b\x32T.google.cloud.compute.v1.InstancesBulkInsertOperationMetadata.PerLocationStatusEntry\x1al\n\x16PerLocationStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x41\n\x05value\x18\x02 \x01(\x0b\x32\x32.google.cloud.compute.v1.BulkInsertOperationStatus:\x02\x38\x01\"\xd8\x01\n&InstancesGetEffectiveFirewallsResponse\x12t\n\x10\x66irewall_policys\x18\xc2\xca\xfc\xc3\x01 \x03(\x0b\x32V.google.cloud.compute.v1.InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy\x12\x38\n\tfirewalls\x18\xf3\xc6\xe8\x81\x01 \x03(\x0b\x32!.google.cloud.compute.v1.Firewall\"\xac\x04\n=InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy\x12\x1c\n\x0c\x64isplay_name\x18\xe8\x87\x91\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12O\n\x16packet_mirroring_rules\x18\xc4\xff\xc0\xfd\x01 \x03(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRule\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x02\x88\x01\x01\x12=\n\x05rules\x18\xf7\x91\xf5\x33 \x03(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRule\x12\x1b\n\nshort_name\x18\xee\xb8\xd0\xea\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x04\x88\x01\x01\"\x99\x01\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x10\n\tHIERARCHY\x10\x95\xc4\xaa!\x12\x0f\n\x07NETWORK\x10\x8e\xcc\xb3\xc5\x01\x12\x17\n\x10NETWORK_REGIONAL\x10\xb0\xe2\xfdZ\x12\x14\n\rSYSTEM_GLOBAL\x10\xb3\x97\xd4\x1c\x12\x16\n\x0fSYSTEM_REGIONAL\x10\xaf\x8c\x92M\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x0f\n\r_display_nameB\x07\n\x05_nameB\x0b\n\t_priorityB\r\n\x0b_short_nameB\x07\n\x05_type\"F\n&InstancesRemoveResourcePoliciesRequest\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\"\xc8\x02\n\"InstancesReportHostAsFaultyRequest\x12#\n\x13\x64isruption_schedule\x18\x83\xc5\xdb- \x01(\tH\x00\x88\x01\x01\x12`\n\rfault_reasons\x18\x92\xab\x91P \x03(\x0b\x32\x46.google.cloud.compute.v1.InstancesReportHostAsFaultyRequestFaultReason\"\x82\x01\n\x12\x44isruptionSchedule\x12!\n\x1dUNDEFINED_DISRUPTION_SCHEDULE\x10\x00\x12\'\n\x1f\x44ISRUPTION_SCHEDULE_UNSPECIFIED\x10\xdb\xee\xc8\x9e\x01\x12\x0e\n\x06\x46UTURE\x10\xc3\x83\xa2\xe2\x01\x12\x10\n\tIMMEDIATE\x10\x91\x8f\xf3HB\x16\n\x14_disruption_schedule\"\xae\x02\n-InstancesReportHostAsFaultyRequestFaultReason\x12\x19\n\x08\x62\x65havior\x18\xd2\xe4\xba\xd0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\"\xa6\x01\n\x08\x42\x65havior\x12\x16\n\x12UNDEFINED_BEHAVIOR\x10\x00\x12\x1b\n\x14\x42\x45HAVIOR_UNSPECIFIED\x10\xaa\xe9\xf0(\x12\x11\n\nCHIP_ERROR\x10\xb5\xc0\xbd}\x12\x12\n\x0bPERFORMANCE\x10\x90\xc8\xda@\x12\x1d\n\x16SILENT_DATA_CORRUPTION\x10\xa6\xf5\x8c\x35\x12\x1f\n\x17UNRECOVERABLE_GPU_ERROR\x10\x9b\x92\xb7\xad\x01\x42\x0b\n\t_behaviorB\x0e\n\x0c_description\"\x95\x01\n\x13InstancesScopedList\x12\x37\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32!.google.cloud.compute.v1.Instance\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xd7\x01\n\x19InstancesSetLabelsRequest\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x00\x88\x01\x01\x12R\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32>.google.cloud.compute.v1.InstancesSetLabelsRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x14\n\x12_label_fingerprint\"q\n#InstancesSetMachineResourcesRequest\x12J\n\x12guest_accelerators\x18\xef\xcc\x87\xdd\x01 \x03(\x0b\x32*.google.cloud.compute.v1.AcceleratorConfig\"O\n\x1eInstancesSetMachineTypeRequest\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_machine_type\"Z\n!InstancesSetMinCpuPlatformRequest\x12 \n\x10min_cpu_platform\x18\xf7\x9b\xeas \x01(\tH\x00\x88\x01\x01\x42\x13\n\x11_min_cpu_platform\"h\n\x17InstancesSetNameRequest\x12\x1d\n\x0c\x63urrent_name\x18\x91\xf3\xab\xbc\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\x0f\n\r_current_nameB\x07\n\x05_name\"w\n!InstancesSetSecurityPolicyRequest\x12\x1d\n\x12network_interfaces\x18\x8b\xda\x92\x19 \x03(\t\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_security_policy\"W\n!InstancesSetServiceAccountRequest\x12\x15\n\x05\x65mail\x18\x9c\x97\x89. \x01(\tH\x00\x88\x01\x01\x12\x11\n\x06scopes\x18\x9f\x99\x92O \x03(\tB\x08\n\x06_email\"w\n&InstancesStartWithEncryptionKeyRequest\x12M\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32;.google.cloud.compute.v1.CustomerEncryptionKeyProtectedDisk\"\x94\n\n\x0fInstantSnapshot\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x06\x88\x01\x01\x12H\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x34.google.cloud.compute.v1.InstantSnapshot.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x46\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32..google.cloud.compute.v1.InstantSnapshotParamsH\x08\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\t\x88\x01\x01\x12W\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32\x36.google.cloud.compute.v1.InstantSnapshotResourceStatusH\n\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\x0b\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x0c\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\r\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x0e\x88\x01\x01\x12\x1c\n\x0bsource_disk\x18\xc1\xee\xb4\xd7\x01 \x01(\tH\x0f\x88\x01\x01\x12\x1f\n\x0esource_disk_id\x18\xd9\xcd\xc9\xd8\x01 \x01(\tH\x10\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x11\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x12\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\"u\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x13\n\x0bUNAVAILABLE\x10\xb0\xd8\xa5\xc5\x01\x42\x0f\n\r_architectureB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0f\n\r_disk_size_gbB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\t\n\x07_paramsB\t\n\x07_regionB\x12\n\x10_resource_statusB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x0e\n\x0c_source_diskB\x11\n\x0f_source_disk_idB\t\n\x07_statusB\x07\n\x05_zone\"\xce\x03\n\x1dInstantSnapshotAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12S\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x41.google.cloud.compute.v1.InstantSnapshotAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.InstantSnapshotsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xaf\x02\n\x13InstantSnapshotList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.InstantSnapshot\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbf\x01\n\x15InstantSnapshotParams\x12j\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32G.google.cloud.compute.v1.InstantSnapshotParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"[\n\x1dInstantSnapshotResourceStatus\x12#\n\x12storage_size_bytes\x18\xf1\x8d\xe6\xb8\x01 \x01(\x03H\x00\x88\x01\x01\x42\x15\n\x13_storage_size_bytes\"\xac\x01\n\x1aInstantSnapshotsScopedList\x12G\n\x11instant_snapshots\x18\xd1\xbc\x97\x9d\x01 \x03(\x0b\x32(.google.cloud.compute.v1.InstantSnapshot\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"h\n\x0fInt64RangeMatch\x12\x1a\n\trange_end\x18\xd9\x95\xe0\x99\x01 \x01(\x03H\x00\x88\x01\x01\x12\x1b\n\x0brange_start\x18\xe0\xfd\xa2\x31 \x01(\x03H\x01\x88\x01\x01\x42\x0c\n\n_range_endB\x0e\n\x0c_range_start\"\x9b\x14\n\x0cInterconnect\x12\x1c\n\x0b\x61\x61i_enabled\x18\xcb\xa2\xb1\xb9\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1e\n\radmin_enabled\x18\xd1\xec\xc1\xd4\x01 \x01(\x08H\x01\x88\x01\x01\x12r\n\x1e\x61pplication_aware_interconnect\x18\x9e\xf8\xcd\xcc\x01 \x01(\x0b\x32\x41.google.cloud.compute.v1.InterconnectApplicationAwareInterconnectH\x02\x88\x01\x01\x12\x1e\n\x12\x61vailable_features\x18\xf3\xb9\xd6\xec\x01 \x03(\t\x12J\n\rcircuit_infos\x18\xaf\x83\xcdN \x03(\x0b\x32\x30.google.cloud.compute.v1.InterconnectCircuitInfo\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x03\x88\x01\x01\x12\x1d\n\rcustomer_name\x18\xcc\xdc\xdf\x01 \x01(\tH\x04\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x05\x88\x01\x01\x12T\n\x10\x65xpected_outages\x18\x9b\xea\x8e~ \x03(\x0b\x32\x37.google.cloud.compute.v1.InterconnectOutageNotification\x12\"\n\x11google_ip_address\x18\xa2\x85\xa5\xd3\x01 \x01(\tH\x06\x88\x01\x01\x12$\n\x13google_reference_id\x18\xd5\xb5\x8a\xff\x01 \x01(\tH\x07\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x08\x88\x01\x01\x12$\n\x18interconnect_attachments\x18\xff\xd2\xeb\xca\x01 \x03(\t\x12\x1e\n\x13interconnect_groups\x18\xa5\xad\x84q \x03(\t\x12\"\n\x11interconnect_type\x18\xcb\x98\xd3\xf5\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\n\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x0b\x88\x01\x01\x12\x45\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x31.google.cloud.compute.v1.Interconnect.LabelsEntry\x12\x1a\n\tlink_type\x18\xdf\x88\xbe\xf9\x01 \x01(\tH\x0c\x88\x01\x01\x12\x19\n\x08location\x18\xb5\xbf\xbe\x8a\x01 \x01(\tH\r\x88\x01\x01\x12\x44\n\x06macsec\x18\xa2\xc1\x97\xfc\x01 \x01(\x0b\x32+.google.cloud.compute.v1.InterconnectMacsecH\x0e\x88\x01\x01\x12\x1e\n\x0emacsec_enabled\x18\xa4\xa1\xcd\\ \x01(\x08H\x0f\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x10\x88\x01\x01\x12!\n\x11noc_contact_email\x18\x80\xf8\xda\x06 \x01(\tH\x11\x88\x01\x01\x12\"\n\x12operational_status\x18\xff\xb1\xf0_ \x01(\tH\x12\x88\x01\x01\x12\x43\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32+.google.cloud.compute.v1.InterconnectParamsH\x13\x88\x01\x01\x12\x1f\n\x0fpeer_ip_address\x18\xd9\x97\x87\x63 \x01(\tH\x14\x88\x01\x01\x12\'\n\x16provisioned_link_count\x18\xf5\xd2\xf6\xc3\x01 \x01(\x05H\x15\x88\x01\x01\x12 \n\x0fremote_location\x18\x8e\x8f\xd7\x9a\x01 \x01(\tH\x16\x88\x01\x01\x12\x1e\n\x12requested_features\x18\xee\xf3\xf7\xdb\x01 \x03(\t\x12$\n\x14requested_link_count\x18\xfb\xdb\xbd\x15 \x01(\x05H\x17\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x18\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x19\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x1a\x88\x01\x01\x12\x18\n\x07subzone\x18\xec\x83\xc7\x85\x01 \x01(\tH\x1b\x88\x01\x01\x12\x16\n\x0bwire_groups\x18\xce\xed\xb1\x13 \x03(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"5\n\x11\x41vailableFeatures\x12 \n\x1cUNDEFINED_AVAILABLE_FEATURES\x10\x00\"j\n\x10InterconnectType\x12\x1f\n\x1bUNDEFINED_INTERCONNECT_TYPE\x10\x00\x12\x10\n\tDEDICATED\x10\xcf\x9b\x9c{\x12\x12\n\nIT_PRIVATE\x10\xcf\x8c\x88\xa0\x01\x12\x0f\n\x07PARTNER\x10\xa8\xd1\xa1\xdc\x01\"\x8d\x01\n\x08LinkType\x12\x17\n\x13UNDEFINED_LINK_TYPE\x10\x00\x12\"\n\x1aLINK_TYPE_ETHERNET_100G_LR\x10\xe7\xf2\x81\xa1\x01\x12 \n\x19LINK_TYPE_ETHERNET_10G_LR\x10\xa5\xb9\xf1p\x12\"\n\x1bLINK_TYPE_ETHERNET_400G_LR4\x10\xca\xf4\xc8<\"`\n\x11OperationalStatus\x12 \n\x1cUNDEFINED_OPERATIONAL_STATUS\x10\x00\x12\x10\n\tOS_ACTIVE\x10\xc1\xfb\xc8\x1a\x12\x17\n\x10OS_UNPROVISIONED\x10\xc0\xc1\xaar\"5\n\x11RequestedFeatures\x12 \n\x1cUNDEFINED_REQUESTED_FEATURES\x10\x00\"C\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x15\n\rUNPROVISIONED\x10\xdb\xc7\xd7\xf6\x01\"F\n\x07Subzone\x12\x15\n\x11UNDEFINED_SUBZONE\x10\x00\x12\x11\n\tSUBZONE_A\x10\x8e\xad\x84\x8b\x01\x12\x11\n\tSUBZONE_B\x10\x8f\xad\x84\x8b\x01\x42\x0e\n\x0c_aai_enabledB\x10\n\x0e_admin_enabledB!\n\x1f_application_aware_interconnectB\x15\n\x13_creation_timestampB\x10\n\x0e_customer_nameB\x0e\n\x0c_descriptionB\x14\n\x12_google_ip_addressB\x16\n\x14_google_reference_idB\x05\n\x03_idB\x14\n\x12_interconnect_typeB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x0c\n\n_link_typeB\x0b\n\t_locationB\t\n\x07_macsecB\x11\n\x0f_macsec_enabledB\x07\n\x05_nameB\x14\n\x12_noc_contact_emailB\x15\n\x13_operational_statusB\t\n\x07_paramsB\x12\n\x10_peer_ip_addressB\x19\n\x17_provisioned_link_countB\x12\n\x10_remote_locationB\x17\n\x15_requested_link_countB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\x08\n\x06_stateB\n\n\x08_subzone\"\xa7\x04\n(InterconnectApplicationAwareInterconnect\x12\x87\x01\n\x1b\x62\x61ndwidth_percentage_policy\x18\xe9\xdc\x96Y \x01(\x0b\x32Z.google.cloud.compute.v1.InterconnectApplicationAwareInterconnectBandwidthPercentagePolicyH\x00\x88\x01\x01\x12#\n\x13profile_description\x18\xe6\xec\xa8} \x01(\tH\x01\x88\x01\x01\x12z\n\x19shape_average_percentages\x18\xd9\xb8\xf4{ \x03(\x0b\x32T.google.cloud.compute.v1.InterconnectApplicationAwareInterconnectBandwidthPercentage\x12}\n\x16strict_priority_policy\x18\xb7\x95\x97\x45 \x01(\x0b\x32U.google.cloud.compute.v1.InterconnectApplicationAwareInterconnectStrictPriorityPolicyH\x02\x88\x01\x01\x42\x1e\n\x1c_bandwidth_percentage_policyB\x16\n\x14_profile_descriptionB\x19\n\x17_strict_priority_policy\"\x88\x02\n;InterconnectApplicationAwareInterconnectBandwidthPercentage\x12\x1a\n\npercentage\x18\x9a\xe5\xb7H \x01(\rH\x00\x88\x01\x01\x12\x1d\n\rtraffic_class\x18\xb6\xf9\xbf^ \x01(\tH\x01\x88\x01\x01\"m\n\x0cTrafficClass\x12\x1b\n\x17UNDEFINED_TRAFFIC_CLASS\x10\x00\x12\t\n\x03TC1\x10\xa2\x87\x05\x12\t\n\x03TC2\x10\xa3\x87\x05\x12\t\n\x03TC3\x10\xa4\x87\x05\x12\t\n\x03TC4\x10\xa5\x87\x05\x12\t\n\x03TC5\x10\xa6\x87\x05\x12\t\n\x03TC6\x10\xa7\x87\x05\x42\r\n\x0b_percentageB\x10\n\x0e_traffic_class\"\xbb\x01\nAInterconnectApplicationAwareInterconnectBandwidthPercentagePolicy\x12v\n\x15\x62\x61ndwidth_percentages\x18\x8b\xfd\xa3o \x03(\x0b\x32T.google.cloud.compute.v1.InterconnectApplicationAwareInterconnectBandwidthPercentage\">\n.google.cloud.compute.v1.InterconnectAttachmentPartnerMetadataH\x1f\x88\x01\x01\x12\x65\n\x19private_interconnect_info\x18\x83\xec\x91q \x01(\x0b\x32:.google.cloud.compute.v1.InterconnectAttachmentPrivateInfoH \x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH!\x88\x01\x01\x12\x1f\n\x0eremote_service\x18\xbc\xff\xf2\xba\x01 \x01(\tH\"\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tH#\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H$\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH%\x88\x01\x01\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH&\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\'\x88\x01\x01\x12\x1e\n\rsubnet_length\x18\x88\xc4\xb7\x85\x01 \x01(\x05H(\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH)\x88\x01\x01\x12\x1d\n\rvlan_tag8021q\x18\x9c\xe8\x97\x39 \x01(\x05H*\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8f\x02\n\tBandwidth\x12\x17\n\x13UNDEFINED_BANDWIDTH\x10\x00\x12\x0f\n\x08\x42PS_100G\x10\xb0\x95\xd0\x17\x12\x0f\n\x08\x42PS_100M\x10\xb6\x95\xd0\x17\x12\x0f\n\x07\x42PS_10G\x10\x8e\x89\xf2\x84\x01\x12\x0e\n\x06\x42PS_1G\x10\xf0\xad\xb9\xa9\x01\x12\x0f\n\x08\x42PS_200M\x10\x95\xfe\xd1\x17\x12\x0f\n\x07\x42PS_20G\x10\xcf\x90\xf2\x84\x01\x12\x0e\n\x06\x42PS_2G\x10\x8f\xae\xb9\xa9\x01\x12\x0f\n\x08\x42PS_300M\x10\xf4\xe6\xd3\x17\x12\x0f\n\x08\x42PS_400G\x10\xcd\xcf\xd5\x17\x12\x0f\n\x08\x42PS_400M\x10\xd3\xcf\xd5\x17\x12\x0f\n\x08\x42PS_500M\x10\xb2\xb8\xd7\x17\x12\x0f\n\x07\x42PS_50G\x10\x92\xa7\xf2\x84\x01\x12\x0f\n\x07\x42PS_50M\x10\x98\xa7\xf2\x84\x01\x12\x0e\n\x06\x42PS_5G\x10\xec\xae\xb9\xa9\x01\"\x9f\x01\n\x16\x45\x64geAvailabilityDomain\x12&\n\"UNDEFINED_EDGE_AVAILABILITY_DOMAIN\x10\x00\x12\x1d\n\x15\x41VAILABILITY_DOMAIN_1\x10\xda\xfb\xd6\xa6\x01\x12\x1d\n\x15\x41VAILABILITY_DOMAIN_2\x10\xdb\xfb\xd6\xa6\x01\x12\x1f\n\x17\x41VAILABILITY_DOMAIN_ANY\x10\xb5\xea\xf7\xb2\x01\"A\n\nEncryption\x12\x18\n\x14UNDEFINED_ENCRYPTION\x10\x00\x12\x0c\n\x05IPSEC\x10\xaa\xa3\xa9!\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\"`\n\x11OperationalStatus\x12 \n\x1cUNDEFINED_OPERATIONAL_STATUS\x10\x00\x12\x10\n\tOS_ACTIVE\x10\xc1\xfb\xc8\x1a\x12\x17\n\x10OS_UNPROVISIONED\x10\xc0\xc1\xaar\"I\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\"\xc2\x01\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0e\n\x07\x44\x45\x46UNCT\x10\xaf\xbc\xa1\x37\x12 \n\x18PARTNER_REQUEST_RECEIVED\x10\xe8\xf0\xf2\xf4\x01\x12\x17\n\x10PENDING_CUSTOMER\x10\xa6\x83\xefO\x12\x17\n\x0fPENDING_PARTNER\x10\xe0\xfb\xfa\xb8\x01\x12\x19\n\x11STATE_UNSPECIFIED\x10\xc9\xd0\xbc\xe0\x01\x12\x15\n\rUNPROVISIONED\x10\xdb\xc7\xd7\xf6\x01\"m\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x10\n\tDEDICATED\x10\xcf\x9b\x9c{\x12\x14\n\x0cL2_DEDICATED\x10\xb6\x94\xc0\xa0\x01\x12\x0f\n\x07PARTNER\x10\xa8\xd1\xa1\xdc\x01\x12\x18\n\x10PARTNER_PROVIDER\x10\xa8\xf7\xb7\xe6\x01\x42\x10\n\x0e_admin_enabledB\x13\n\x11_attachment_groupB\x0c\n\n_bandwidthB$\n\"_candidate_cloud_router_ip_addressB&\n$_candidate_cloud_router_ipv6_addressB\'\n%_candidate_customer_router_ip_addressB)\n\'_candidate_customer_router_ipv6_addressB\x1a\n\x18_cloud_router_ip_addressB\x1c\n\x1a_cloud_router_ipv6_addressB!\n\x1f_cloud_router_ipv6_interface_idB\x1c\n\x1a_configuration_constraintsB\x15\n\x13_creation_timestampB\x1d\n\x1b_customer_router_ip_addressB\x1f\n\x1d_customer_router_ipv6_addressB$\n\"_customer_router_ipv6_interface_idB\x14\n\x12_dataplane_versionB\x0e\n\x0c_descriptionB\x1b\n\x19_edge_availability_domainB\r\n\x0b_encryptionB\x16\n\x14_google_reference_idB\x05\n\x03_idB\x0f\n\r_interconnectB\x07\n\x05_kindB\x10\n\x0e_l2_forwardingB\x14\n\x12_label_fingerprintB\x06\n\x04_mtuB\x07\n\x05_nameB\x15\n\x13_operational_statusB\x0e\n\x0c_pairing_keyB\t\n\x07_paramsB\x0e\n\x0c_partner_asnB\x13\n\x11_partner_metadataB\x1c\n\x1a_private_interconnect_infoB\t\n\x07_regionB\x11\n\x0f_remote_serviceB\t\n\x07_routerB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\r\n\x0b_stack_typeB\x08\n\x06_stateB\x10\n\x0e_subnet_lengthB\x07\n\x05_typeB\x10\n\x0e_vlan_tag8021q\"\xe3\x03\n$InterconnectAttachmentAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12Z\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32H.google.cloud.compute.v1.InterconnectAttachmentAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1ah\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12I\n\x05value\x18\x02 \x01(\x0b\x32:.google.cloud.compute.v1.InterconnectAttachmentsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb3\x02\n.InterconnectAttachmentConfigurationConstraints\x12\x18\n\x07\x62gp_md5\x18\x8a\xe8\xf3\xb1\x01 \x01(\tH\x00\x88\x01\x01\x12w\n\x13\x62gp_peer_asn_ranges\x18\x82\xbb\xf9\xe2\x01 \x03(\x0b\x32V.google.cloud.compute.v1.InterconnectAttachmentConfigurationConstraintsBgpPeerASNRange\"b\n\x06\x42gpMd5\x12\x15\n\x11UNDEFINED_BGP_MD5\x10\x00\x12\x14\n\x0cMD5_OPTIONAL\x10\x81\xa2\xe0\xfd\x01\x12\x13\n\x0cMD5_REQUIRED\x10\xc0\xe2\xfbg\x12\x16\n\x0fMD5_UNSUPPORTED\x10\xd4\xe1\xbb)B\n\n\x08_bgp_md5\"w\n=InterconnectAttachmentConfigurationConstraintsBgpPeerASNRange\x12\x12\n\x03max\x18\xe4\xca\x06 \x01(\rH\x00\x88\x01\x01\x12\x12\n\x03min\x18\xd2\xcc\x06 \x01(\rH\x01\x88\x01\x01\x42\x06\n\x04_maxB\x06\n\x04_min\"\x81\x07\n\x1bInterconnectAttachmentGroup\x12^\n\x0b\x61ttachments\x18\xb0\x97\xcf\x9f\x01 \x03(\x0b\x32\x45.google.cloud.compute.v1.InterconnectAttachmentGroup.AttachmentsEntry\x12[\n\nconfigured\x18\xbe\xf4\xfb\x8c\x01 \x01(\x0b\x32>.google.cloud.compute.v1.InterconnectAttachmentGroupConfiguredH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12S\n\x06intent\x18\x9c\xed\xc4\xcb\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InterconnectAttachmentGroupIntentH\x05\x88\x01\x01\x12#\n\x12interconnect_group\x18\x8e\xb7\xa9\xb9\x01 \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x07\x88\x01\x01\x12g\n\x11logical_structure\x18\xbd\x99\xf4\x43 \x01(\x0b\x32\x44.google.cloud.compute.v1.InterconnectAttachmentGroupLogicalStructureH\x08\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\t\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\n\x88\x01\x01\x1ar\n\x10\x41ttachmentsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12M\n\x05value\x18\x02 \x01(\x0b\x32>.google.cloud.compute.v1.InterconnectAttachmentGroupAttachment:\x02\x38\x01\x42\r\n\x0b_configuredB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x07\n\x05_etagB\x05\n\x03_idB\t\n\x07_intentB\x15\n\x13_interconnect_groupB\x07\n\x05_kindB\x14\n\x12_logical_structureB\x07\n\x05_nameB\x0c\n\n_self_link\"R\n%InterconnectAttachmentGroupAttachment\x12\x1a\n\nattachment\x18\xa3\xb2\xddW \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_attachment\"\xae\x01\n%InterconnectAttachmentGroupConfigured\x12p\n\x10\x61vailability_sla\x18\xc4\xb8\xb3\xe1\x01 \x01(\x0b\x32M.google.cloud.compute.v1.InterconnectAttachmentGroupConfiguredAvailabilitySLAH\x00\x88\x01\x01\x42\x13\n\x11_availability_sla\"\x8a\x03\n4InterconnectAttachmentGroupConfiguredAvailabilitySLA\x12\x1d\n\reffective_sla\x18\x90\xd5\xdf\x44 \x01(\tH\x00\x88\x01\x01\x12\x83\x01\n\x15intended_sla_blockers\x18\x84\xad\xe6\xd5\x01 \x03(\x0b\x32`.google.cloud.compute.v1.InterconnectAttachmentGroupConfiguredAvailabilitySLAIntendedSlaBlockers\"\x9a\x01\n\x0c\x45\x66\x66\x65\x63tiveSla\x12\x1b\n\x17UNDEFINED_EFFECTIVE_SLA\x10\x00\x12!\n\x19\x45\x46\x46\x45\x43TIVE_SLA_UNSPECIFIED\x10\xa8\xa7\x90\xea\x01\x12\r\n\x06NO_SLA\x10\x8a\xe3\xfeL\x12\x1b\n\x13PRODUCTION_CRITICAL\x10\xe5\xf8\xa7\xe0\x01\x12\x1e\n\x17PRODUCTION_NON_CRITICAL\x10\xb7\xbd\xfd\x37\x42\x10\n\x0e_effective_sla\"\xab\x04\nGInterconnectAttachmentGroupConfiguredAvailabilitySLAIntendedSlaBlockers\x12\x17\n\x0b\x61ttachments\x18\xb0\x97\xcf\x9f\x01 \x03(\t\x12\x1d\n\x0c\x62locker_type\x18\xdf\xa4\xe2\xb5\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x64ocumentation_link\x18\xdf\xd4\xc8, \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x65xplanation\x18\x99\x9c\xd7\xf0\x01 \x01(\tH\x02\x88\x01\x01\x12\x12\n\x06metros\x18\xfa\xec\x97\xfe\x01 \x03(\t\x12\x12\n\x07regions\x18\xff\xef\xf2\x05 \x03(\t\x12\x10\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\t\"\xf3\x01\n\x0b\x42lockerType\x12\x1a\n\x16UNDEFINED_BLOCKER_TYPE\x10\x00\x12 \n\x18\x42LOCKER_TYPE_UNSPECIFIED\x10\xd7\xc2\xf8\xcc\x01\x12\x1b\n\x13INCOMPATIBLE_METROS\x10\xc0\x9f\xbd\x8a\x01\x12\x1b\n\x14INCOMPATIBLE_REGIONS\x10\xd9\x8e\xfa\x02\x12\x1d\n\x16MISSING_GLOBAL_ROUTING\x10\xa3\xc8\x8eO\x12\x16\n\x0eNO_ATTACHMENTS\x10\x92\xdc\xd8\xd9\x01\x12\'\n NO_ATTACHMENTS_IN_METRO_AND_ZONE\x10\xa7\xc6\xd2\x18\x12\x0c\n\x05OTHER\x10\xf0\x8d\x82$B\x0f\n\r_blocker_typeB\x15\n\x13_documentation_linkB\x0e\n\x0c_explanation\"\x80\x02\n!InterconnectAttachmentGroupIntent\x12!\n\x10\x61vailability_sla\x18\xc4\xb8\xb3\xe1\x01 \x01(\tH\x00\x88\x01\x01\"\xa2\x01\n\x0f\x41vailabilitySla\x12\x1e\n\x1aUNDEFINED_AVAILABILITY_SLA\x10\x00\x12#\n\x1c\x41VAILABILITY_SLA_UNSPECIFIED\x10\xfc\xde\xaa\x05\x12\r\n\x06NO_SLA\x10\x8a\xe3\xfeL\x12\x1b\n\x13PRODUCTION_CRITICAL\x10\xe5\xf8\xa7\xe0\x01\x12\x1e\n\x17PRODUCTION_NON_CRITICAL\x10\xb7\xbd\xfd\x37\x42\x13\n\x11_availability_sla\"\x8d\x01\n+InterconnectAttachmentGroupLogicalStructure\x12^\n\x07regions\x18\xff\xef\xf2\x05 \x03(\x0b\x32J.google.cloud.compute.v1.InterconnectAttachmentGroupLogicalStructureRegion\"\xbb\x01\n1InterconnectAttachmentGroupLogicalStructureRegion\x12\x63\n\x06metros\x18\xfa\xec\x97\xfe\x01 \x03(\x0b\x32O.google.cloud.compute.v1.InterconnectAttachmentGroupLogicalStructureRegionMetro\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_region\"\xca\x01\n6InterconnectAttachmentGroupLogicalStructureRegionMetro\x12o\n\nfacilities\x18\x81\xc5\xf4\xff\x01 \x03(\x0b\x32W.google.cloud.compute.v1.InterconnectAttachmentGroupLogicalStructureRegionMetroFacility\x12\x15\n\x05metro\x18\x99\xda\xbe\x31 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_metro\"\xd7\x01\n>InterconnectAttachmentGroupLogicalStructureRegionMetroFacility\x12\x19\n\x08\x66\x61\x63ility\x18\xa3\xdd\xf9\xee\x01 \x01(\tH\x00\x88\x01\x01\x12m\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\x0b\x32[.google.cloud.compute.v1.InterconnectAttachmentGroupLogicalStructureRegionMetroFacilityZoneB\x0b\n\t_facility\"|\nBInterconnectAttachmentGroupLogicalStructureRegionMetroFacilityZone\x12\x17\n\x0b\x61ttachments\x18\xb0\x97\xcf\x9f\x01 \x03(\t\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_zone\"\xc4\x01\n8InterconnectAttachmentGroupsGetOperationalStatusResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12^\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32\x46.google.cloud.compute.v1.InterconnectAttachmentGroupsOperationalStatusH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_result\"\x88\x03\n(InterconnectAttachmentGroupsListResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x46\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x34.google.cloud.compute.v1.InterconnectAttachmentGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x88\x05\n-InterconnectAttachmentGroupsOperationalStatus\x12w\n\x13\x61ttachment_statuses\x18\xbc\xaf\x98\xea\x01 \x03(\x0b\x32V.google.cloud.compute.v1.InterconnectAttachmentGroupsOperationalStatusAttachmentStatus\x12[\n\nconfigured\x18\xbe\xf4\xfb\x8c\x01 \x01(\x0b\x32>.google.cloud.compute.v1.InterconnectAttachmentGroupConfiguredH\x00\x88\x01\x01\x12\x1d\n\x0cgroup_status\x18\xb2\xb3\xc5\xa1\x01 \x01(\tH\x01\x88\x01\x01\x12S\n\x06intent\x18\x9c\xed\xc4\xcb\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InterconnectAttachmentGroupIntentH\x02\x88\x01\x01\x12[\n\x0boperational\x18\xd2\xc7\xec= \x01(\x0b\x32>.google.cloud.compute.v1.InterconnectAttachmentGroupConfiguredH\x03\x88\x01\x01\"u\n\x0bGroupStatus\x12\x1a\n\x16UNDEFINED_GROUP_STATUS\x10\x00\x12\x10\n\x08\x44\x45GRADED\x10\xae\xa6\xa0\xbd\x01\x12\x11\n\nFULLY_DOWN\x10\x97\xb0\xeby\x12\x10\n\x08\x46ULLY_UP\x10\xd0\xbe\xb4\xf0\x01\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\r\n\x0b_configuredB\x0f\n\r_group_statusB\t\n\x07_intentB\x0e\n\x0c_operational\"\x94\x06\n=InterconnectAttachmentGroupsOperationalStatusAttachmentStatus\x12\x1e\n\radmin_enabled\x18\xd1\xec\xc1\xd4\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\nattachment\x18\xa3\xb2\xddW \x01(\tH\x01\x88\x01\x01\x12\x19\n\tis_active\x18\xbb\xd7\xe0\x36 \x01(\tH\x02\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x03\x88\x01\x01\"Z\n\x08IsActive\x12\x17\n\x13UNDEFINED_IS_ACTIVE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08INACTIVE\x10\xeb\x98\xf9\x80\x01\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\"\xcd\x03\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12!\n\x19\x41TTACHMENT_STATUS_UNKNOWN\x10\xf9\xde\xa5\xe1\x01\x12\x1b\n\x13\x43ONNECTION_DISABLED\x10\xbd\x95\xa9\xce\x01\x12\x16\n\x0f\x43ONNECTION_DOWN\x10\xe3\x8a\xca\x7f\x12\x15\n\rCONNECTION_UP\x10\x9c\xdf\x9e\xd9\x01\x12\x0e\n\x07\x44\x45\x46UNCT\x10\xaf\xbc\xa1\x37\x12)\n!IPSEC_CONFIGURATION_NEEDED_STATUS\x10\xfe\xb5\x87\xd9\x01\x12)\n!IPSEC_READY_TO_RESUME_FLOW_STATUS\x10\x84\x99\xc0\xb7\x01\x12\x19\n\x11IPV4_DOWN_IPV6_UP\x10\xb0\xda\xa8\x84\x01\x12\x19\n\x11IPV4_UP_IPV6_DOWN\x10\xb0\x9e\xda\x96\x01\x12 \n\x18PARTNER_REQUEST_RECEIVED\x10\xe8\xf0\xf2\xf4\x01\x12\x17\n\x10PENDING_CUSTOMER\x10\xa6\x83\xefO\x12\x17\n\x0fPENDING_PARTNER\x10\xe0\xfb\xfa\xb8\x01\x12\x13\n\x0bPROVISIONED\x10\x94\xb0\xd1\xa9\x01\x12\"\n\x1bROUTER_CONFIGURATION_BROKEN\x10\x94\x8d\xe2G\x12\x15\n\rUNPROVISIONED\x10\xdb\xc7\xd7\xf6\x01\x42\x10\n\x0e_admin_enabledB\r\n\x0b_attachmentB\x0c\n\n_is_activeB\t\n\x07_status\"\xdb\x04\n\"InterconnectAttachmentL2Forwarding\x12r\n\x12\x61ppliance_mappings\x18\xb7\xbf\xcb\xb2\x01 \x03(\x0b\x32R.google.cloud.compute.v1.InterconnectAttachmentL2Forwarding.ApplianceMappingsEntry\x12-\n\x1c\x64\x65\x66\x61ult_appliance_ip_address\x18\xec\xe3\xe8\xff\x01 \x01(\tH\x00\x88\x01\x01\x12\x66\n\rgeneve_header\x18\xa8\x95\xcc\x38 \x01(\x0b\x32G.google.cloud.compute.v1.InterconnectAttachmentL2ForwardingGeneveHeaderH\x01\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x02\x88\x01\x01\x12+\n\x1atunnel_endpoint_ip_address\x18\xef\xd6\xc1\xdf\x01 \x01(\tH\x03\x88\x01\x01\x1a\x85\x01\n\x16\x41pplianceMappingsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12Z\n\x05value\x18\x02 \x01(\x0b\x32K.google.cloud.compute.v1.InterconnectAttachmentL2ForwardingApplianceMapping:\x02\x38\x01\x42\x1f\n\x1d_default_appliance_ip_addressB\x10\n\x0e_geneve_headerB\n\n\x08_networkB\x1d\n\x1b_tunnel_endpoint_ip_address\"\xa8\x02\n2InterconnectAttachmentL2ForwardingApplianceMapping\x12$\n\x14\x61ppliance_ip_address\x18\xae\x95\xd3\x1b \x01(\tH\x00\x88\x01\x01\x12\x93\x01\n inner_vlan_to_appliance_mappings\x18\xa8\x8b\xb8. \x03(\x0b\x32\x66.google.cloud.compute.v1.InterconnectAttachmentL2ForwardingApplianceMappingInnerVlanToApplianceMapping\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\x17\n\x15_appliance_ip_addressB\x07\n\x05_name\"\xb8\x01\nMInterconnectAttachmentL2ForwardingApplianceMappingInnerVlanToApplianceMapping\x12+\n\x1ainner_appliance_ip_address\x18\xf7\x91\x98\xa7\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0finner_vlan_tags\x18\xcc\xc5\xcd\xcd\x01 \x03(\tB\x1d\n\x1b_inner_appliance_ip_address\"L\n.InterconnectAttachmentL2ForwardingGeneveHeader\x12\x12\n\x03vni\x18\xb1\x91\x07 \x01(\rH\x00\x88\x01\x01\x42\x06\n\x04_vni\"\xbd\x02\n\x1aInterconnectAttachmentList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x41\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32/.google.cloud.compute.v1.InterconnectAttachment\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xcd\x01\n\x1cInterconnectAttachmentParams\x12q\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32N.google.cloud.compute.v1.InterconnectAttachmentParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xbc\x01\n%InterconnectAttachmentPartnerMetadata\x12\"\n\x11interconnect_name\x18\x9c\xef\xc6\xf5\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0cpartner_name\x18\xa2\xa7\x90M \x01(\tH\x01\x88\x01\x01\x12\x1b\n\nportal_url\x18\x9c\xce\xad\x80\x01 \x01(\tH\x02\x88\x01\x01\x42\x14\n\x12_interconnect_nameB\x0f\n\r_partner_nameB\r\n\x0b_portal_url\"K\n!InterconnectAttachmentPrivateInfo\x12\x19\n\x08tag8021q\x18\xc0\xd1\xce\x81\x01 \x01(\rH\x00\x88\x01\x01\x42\x0b\n\t_tag8021q\"\xc1\x01\n!InterconnectAttachmentsScopedList\x12U\n\x18interconnect_attachments\x18\xff\xd2\xeb\xca\x01 \x03(\x0b\x32/.google.cloud.compute.v1.InterconnectAttachment\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xc5\x01\n\x17InterconnectCircuitInfo\x12\"\n\x12\x63ustomer_demarc_id\x18\x93\x8c\xdc\r \x01(\tH\x00\x88\x01\x01\x12!\n\x11google_circuit_id\x18\xf7\x8d\xf8| \x01(\tH\x01\x88\x01\x01\x12!\n\x10google_demarc_id\x18\xae\xdd\xdb\xd5\x01 \x01(\tH\x02\x88\x01\x01\x42\x15\n\x13_customer_demarc_idB\x14\n\x12_google_circuit_idB\x13\n\x11_google_demarc_id\"\x95\x05\n\x17InterconnectDiagnostics\x12P\n\narp_caches\x18\x91\xd6\xd8\xc5\x01 \x03(\x0b\x32\x38.google.cloud.compute.v1.InterconnectDiagnosticsARPEntry\x12(\n\x17\x62undle_aggregation_type\x18\x94\xc9\xb2\xcf\x01 \x01(\tH\x00\x88\x01\x01\x12)\n\x19\x62undle_operational_status\x18\xdc\x97\xe0\x32 \x01(\tH\x01\x88\x01\x01\x12L\n\x05links\x18\xb9\x9f\x8d\x31 \x03(\x0b\x32:.google.cloud.compute.v1.InterconnectDiagnosticsLinkStatus\x12\x1c\n\x0bmac_address\x18\x84\xd2\xc8\x9e\x01 \x01(\tH\x02\x88\x01\x01\"\x8a\x01\n\x15\x42undleAggregationType\x12%\n!UNDEFINED_BUNDLE_AGGREGATION_TYPE\x10\x00\x12#\n\x1c\x42UNDLE_AGGREGATION_TYPE_LACP\x10\xcd\xa2\x9e\r\x12%\n\x1e\x42UNDLE_AGGREGATION_TYPE_STATIC\x10\xd9\x98\x95\x18\"\x8f\x01\n\x17\x42undleOperationalStatus\x12\'\n#UNDEFINED_BUNDLE_OPERATIONAL_STATUS\x10\x00\x12&\n\x1e\x42UNDLE_OPERATIONAL_STATUS_DOWN\x10\x85\xae\xb4\xd8\x01\x12#\n\x1c\x42UNDLE_OPERATIONAL_STATUS_UP\x10\xbe\x83\xf9LB\x1a\n\x18_bundle_aggregation_typeB\x1c\n\x1a_bundle_operational_statusB\x0e\n\x0c_mac_address\"{\n\x1fInterconnectDiagnosticsARPEntry\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bmac_address\x18\x84\xd2\xc8\x9e\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_ip_addressB\x0e\n\x0c_mac_address\"\xfa\x01\n%InterconnectDiagnosticsLinkLACPStatus\x12 \n\x10google_system_id\x18\xa5\x85\xbf+ \x01(\tH\x00\x88\x01\x01\x12#\n\x12neighbor_system_id\x18\x9e\x98\xf9\xa3\x01 \x01(\tH\x01\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x02\x88\x01\x01\"=\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0f\n\x08\x44\x45TACHED\x10\xf2\xf6\xa1gB\x13\n\x11_google_system_idB\x15\n\x13_neighbor_system_idB\x08\n\x06_state\"\xe3\x01\n\'InterconnectDiagnosticsLinkOpticalPower\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05value\x18\xf1\xa2\xb2\x35 \x01(\x02H\x01\x88\x01\x01\"v\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x12\n\nHIGH_ALARM\x10\xd4\xf2\xcd\x91\x01\x12\x13\n\x0cHIGH_WARNING\x10\xdf\xeb\xafi\x12\x11\n\tLOW_ALARM\x10\xe6\xaa\xff\x96\x01\x12\x13\n\x0bLOW_WARNING\x10\xf1\xaa\xc6\xa1\x01\x12\x07\n\x02OK\x10\xdc\x13\x42\x08\n\x06_stateB\x08\n\x06_value\"\xf1\x06\n!InterconnectDiagnosticsLinkStatus\x12P\n\narp_caches\x18\x91\xd6\xd8\xc5\x01 \x03(\x0b\x32\x38.google.cloud.compute.v1.InterconnectDiagnosticsARPEntry\x12\x1a\n\ncircuit_id\x18\xb1\xfa\xafk \x01(\tH\x00\x88\x01\x01\x12\x1c\n\rgoogle_demarc\x18\x8c\x8f\x03 \x01(\tH\x01\x88\x01\x01\x12\\\n\x0blacp_status\x18\xaf\xc4\x9e\xac\x01 \x01(\x0b\x32>.google.cloud.compute.v1.InterconnectDiagnosticsLinkLACPStatusH\x02\x88\x01\x01\x12U\n\x06macsec\x18\xa2\xc1\x97\xfc\x01 \x01(\x0b\x32<.google.cloud.compute.v1.InterconnectDiagnosticsMacsecStatusH\x03\x88\x01\x01\x12\"\n\x12operational_status\x18\xff\xb1\xf0_ \x01(\tH\x04\x88\x01\x01\x12i\n\x17receiving_optical_power\x18\xdf\xad\xd8t \x01(\x0b\x32@.google.cloud.compute.v1.InterconnectDiagnosticsLinkOpticalPowerH\x05\x88\x01\x01\x12m\n\x1atransmitting_optical_power\x18\x9d\xba\x89\xdb\x01 \x01(\x0b\x32@.google.cloud.compute.v1.InterconnectDiagnosticsLinkOpticalPowerH\x06\x88\x01\x01\"\x7f\n\x11OperationalStatus\x12 \n\x1cUNDEFINED_OPERATIONAL_STATUS\x10\x00\x12$\n\x1cLINK_OPERATIONAL_STATUS_DOWN\x10\xfd\xe4\xa6\x86\x01\x12\"\n\x1aLINK_OPERATIONAL_STATUS_UP\x10\xb6\xb6\xed\x91\x01\x42\r\n\x0b_circuit_idB\x10\n\x0e_google_demarcB\x0e\n\x0c_lacp_statusB\t\n\x07_macsecB\x15\n\x13_operational_statusB\x1a\n\x18_receiving_optical_powerB\x1d\n\x1b_transmitting_optical_power\"n\n#InterconnectDiagnosticsMacsecStatus\x12\x12\n\x03\x63kn\x18\x86\x82\x06 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0boperational\x18\xd2\xc7\xec= \x01(\x08H\x01\x88\x01\x01\x42\x06\n\x04_cknB\x0e\n\x0c_operational\"\x94\x06\n\x11InterconnectGroup\x12Q\n\nconfigured\x18\xbe\xf4\xfb\x8c\x01 \x01(\x0b\x32\x34.google.cloud.compute.v1.InterconnectGroupConfiguredH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12I\n\x06intent\x18\x9c\xed\xc4\xcb\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.InterconnectGroupIntentH\x05\x88\x01\x01\x12X\n\rinterconnects\x18\xa5\xdb\x85\xf8\x01 \x03(\x0b\x32=.google.cloud.compute.v1.InterconnectGroup.InterconnectsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12_\n\x12physical_structure\x18\x8b\xd0\x90] \x01(\x0b\x32;.google.cloud.compute.v1.InterconnectGroupPhysicalStructureH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x1al\n\x12InterconnectsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x45\n\x05value\x18\x02 \x01(\x0b\x32\x36.google.cloud.compute.v1.InterconnectGroupInterconnect:\x02\x38\x01\x42\r\n\x0b_configuredB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x07\n\x05_etagB\x05\n\x03_idB\t\n\x07_intentB\x07\n\x05_kindB\x07\n\x05_nameB\x15\n\x13_physical_structureB\x0c\n\n_self_link\"\xa2\x01\n\x1bInterconnectGroupConfigured\x12k\n\x13topology_capability\x18\xe8\xd9\xe0\x44 \x01(\x0b\x32\x46.google.cloud.compute.v1.InterconnectGroupConfiguredTopologyCapabilityH\x00\x88\x01\x01\x42\x16\n\x14_topology_capability\"\xfc\x02\n-InterconnectGroupConfiguredTopologyCapability\x12\x8a\x01\n\x1cintended_capability_blockers\x18\xec\xfd\xc0\xfd\x01 \x03(\x0b\x32`.google.cloud.compute.v1.InterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockers\x12\x1d\n\rsupported_sla\x18\x97\xf4\xa2\x1c \x01(\tH\x00\x88\x01\x01\"\x8c\x01\n\x0cSupportedSla\x12\x1b\n\x17UNDEFINED_SUPPORTED_SLA\x10\x00\x12\r\n\x06NO_SLA\x10\x8a\xe3\xfeL\x12\x1b\n\x13PRODUCTION_CRITICAL\x10\xe5\xf8\xa7\xe0\x01\x12\x1e\n\x17PRODUCTION_NON_CRITICAL\x10\xb7\xbd\xfd\x37\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x10\n\x0e_supported_sla\"\x83\x04\nGInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockers\x12\x1d\n\x0c\x62locker_type\x18\xdf\xa4\xe2\xb5\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x64ocumentation_link\x18\xdf\xd4\xc8, \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x65xplanation\x18\x99\x9c\xd7\xf0\x01 \x01(\tH\x02\x88\x01\x01\x12\x16\n\nfacilities\x18\x81\xc5\xf4\xff\x01 \x03(\t\x12\x19\n\rinterconnects\x18\xa5\xdb\x85\xf8\x01 \x03(\t\x12\x12\n\x06metros\x18\xfa\xec\x97\xfe\x01 \x03(\t\x12\x10\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\t\"\xc5\x01\n\x0b\x42lockerType\x12\x1a\n\x16UNDEFINED_BLOCKER_TYPE\x10\x00\x12\x1b\n\x13INCOMPATIBLE_METROS\x10\xc0\x9f\xbd\x8a\x01\x12\x14\n\rNOT_AVAILABLE\x10\x9d\x80\x8d\x43\x12\x18\n\x10NO_INTERCONNECTS\x10\x87\xf7\xd2\xf9\x01\x12*\n\"NO_INTERCONNECTS_IN_METRO_AND_ZONE\x10\xdc\xba\xa2\xd2\x01\x12\x0c\n\x05OTHER\x10\xf0\x8d\x82$\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x0f\n\r_blocker_typeB\x15\n\x13_documentation_linkB\x0e\n\x0c_explanation\"\xf1\x01\n\x17InterconnectGroupIntent\x12#\n\x13topology_capability\x18\xe8\xd9\xe0\x44 \x01(\tH\x00\x88\x01\x01\"\x98\x01\n\x12TopologyCapability\x12!\n\x1dUNDEFINED_TOPOLOGY_CAPABILITY\x10\x00\x12\r\n\x06NO_SLA\x10\x8a\xe3\xfeL\x12\x1b\n\x13PRODUCTION_CRITICAL\x10\xe5\xf8\xa7\xe0\x01\x12\x1e\n\x17PRODUCTION_NON_CRITICAL\x10\xb7\xbd\xfd\x37\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x16\n\x14_topology_capability\"N\n\x1dInterconnectGroupInterconnect\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_interconnect\"{\n\"InterconnectGroupPhysicalStructure\x12U\n\x06metros\x18\xfa\xec\x97\xfe\x01 \x03(\x0b\x32\x41.google.cloud.compute.v1.InterconnectGroupPhysicalStructureMetros\"\xb0\x01\n(InterconnectGroupPhysicalStructureMetros\x12\x63\n\nfacilities\x18\x81\xc5\xf4\xff\x01 \x03(\x0b\x32K.google.cloud.compute.v1.InterconnectGroupPhysicalStructureMetrosFacilities\x12\x15\n\x05metro\x18\x99\xda\xbe\x31 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_metro\"\xc0\x01\n2InterconnectGroupPhysicalStructureMetrosFacilities\x12\x19\n\x08\x66\x61\x63ility\x18\xa3\xdd\xf9\xee\x01 \x01(\tH\x00\x88\x01\x01\x12\x62\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\x0b\x32P.google.cloud.compute.v1.InterconnectGroupPhysicalStructureMetrosFacilitiesZonesB\x0b\n\t_facility\"s\n7InterconnectGroupPhysicalStructureMetrosFacilitiesZones\x12\x19\n\rinterconnects\x18\xa5\xdb\x85\xf8\x01 \x03(\t\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_zone\"\xd0\x03\n\x1fInterconnectGroupsCreateMembers\x12(\n\x18intent_mismatch_behavior\x18\xc0\xd5\xb2N \x01(\tH\x00\x88\x01\x01\x12\x64\n\rinterconnects\x18\xa5\xdb\x85\xf8\x01 \x03(\x0b\x32I.google.cloud.compute.v1.InterconnectGroupsCreateMembersInterconnectInput\x12p\n\x15template_interconnect\x18\xb3\xb0\x95k \x01(\x0b\x32I.google.cloud.compute.v1.InterconnectGroupsCreateMembersInterconnectInputH\x01\x88\x01\x01\"t\n\x16IntentMismatchBehavior\x12&\n\"UNDEFINED_INTENT_MISMATCH_BEHAVIOR\x10\x00\x12\x0e\n\x06\x43REATE\x10\xfc\xa9\xe2\xb7\x01\x12\r\n\x06REJECT\x10\x9f\xcf\xf1~\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x1b\n\x19_intent_mismatch_behaviorB\x18\n\x16_template_interconnect\"\xbb\x07\n0InterconnectGroupsCreateMembersInterconnectInput\x12\x1e\n\radmin_enabled\x18\xd1\xec\xc1\xd4\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1d\n\rcustomer_name\x18\xcc\xdc\xdf\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x19\n\x08\x66\x61\x63ility\x18\xa3\xdd\xf9\xee\x01 \x01(\tH\x03\x88\x01\x01\x12\"\n\x11interconnect_type\x18\xcb\x98\xd3\xf5\x01 \x01(\tH\x04\x88\x01\x01\x12\x1a\n\tlink_type\x18\xdf\x88\xbe\xf9\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12!\n\x11noc_contact_email\x18\x80\xf8\xda\x06 \x01(\tH\x07\x88\x01\x01\x12 \n\x0fremote_location\x18\x8e\x8f\xd7\x9a\x01 \x01(\tH\x08\x88\x01\x01\x12\x1e\n\x12requested_features\x18\xee\xf3\xf7\xdb\x01 \x03(\t\x12$\n\x14requested_link_count\x18\xfb\xdb\xbd\x15 \x01(\x05H\t\x88\x01\x01\"j\n\x10InterconnectType\x12\x1f\n\x1bUNDEFINED_INTERCONNECT_TYPE\x10\x00\x12\x10\n\tDEDICATED\x10\xcf\x9b\x9c{\x12\x12\n\nIT_PRIVATE\x10\xcf\x8c\x88\xa0\x01\x12\x0f\n\x07PARTNER\x10\xa8\xd1\xa1\xdc\x01\"\x8d\x01\n\x08LinkType\x12\x17\n\x13UNDEFINED_LINK_TYPE\x10\x00\x12\"\n\x1aLINK_TYPE_ETHERNET_100G_LR\x10\xe7\xf2\x81\xa1\x01\x12 \n\x19LINK_TYPE_ETHERNET_10G_LR\x10\xa5\xb9\xf1p\x12\"\n\x1bLINK_TYPE_ETHERNET_400G_LR4\x10\xca\xf4\xc8<\"\x80\x01\n\x11RequestedFeatures\x12 \n\x1cUNDEFINED_REQUESTED_FEATURES\x10\x00\x12\x1d\n\x15IF_CROSS_SITE_NETWORK\x10\xb7\xa2\xd8\xdf\x01\x12\x17\n\x10IF_L2_FORWARDING\x10\xd4\xe7\xef;\x12\x11\n\tIF_MACSEC\x10\x84\xfc\xfa\xbc\x01\x42\x10\n\x0e_admin_enabledB\x10\n\x0e_customer_nameB\x0e\n\x0c_descriptionB\x0b\n\t_facilityB\x14\n\x12_interconnect_typeB\x0c\n\n_link_typeB\x07\n\x05_nameB\x14\n\x12_noc_contact_emailB\x12\n\x10_remote_locationB\x17\n\x15_requested_link_count\"\x87\x01\n&InterconnectGroupsCreateMembersRequest\x12Q\n\x07request\x18\x8f\xe5\xbb\n \x01(\x0b\x32\x38.google.cloud.compute.v1.InterconnectGroupsCreateMembersH\x00\x88\x01\x01\x42\n\n\x08_request\"\xb0\x01\n.InterconnectGroupsGetOperationalStatusResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12T\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32<.google.cloud.compute.v1.InterconnectGroupsOperationalStatusH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_result\"\xf4\x02\n\x1eInterconnectGroupsListResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12<\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32*.google.cloud.compute.v1.InterconnectGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xe8\x04\n#InterconnectGroupsOperationalStatus\x12Q\n\nconfigured\x18\xbe\xf4\xfb\x8c\x01 \x01(\x0b\x32\x34.google.cloud.compute.v1.InterconnectGroupConfiguredH\x00\x88\x01\x01\x12\x1d\n\x0cgroup_status\x18\xb2\xb3\xc5\xa1\x01 \x01(\tH\x01\x88\x01\x01\x12I\n\x06intent\x18\x9c\xed\xc4\xcb\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.InterconnectGroupIntentH\x02\x88\x01\x01\x12q\n\x15interconnect_statuses\x18\xb1\xe9\x83\xd5\x01 \x03(\x0b\x32N.google.cloud.compute.v1.InterconnectGroupsOperationalStatusInterconnectStatus\x12Q\n\x0boperational\x18\xd2\xc7\xec= \x01(\x0b\x32\x34.google.cloud.compute.v1.InterconnectGroupConfiguredH\x03\x88\x01\x01\"\x82\x01\n\x0bGroupStatus\x12\x1a\n\x16UNDEFINED_GROUP_STATUS\x10\x00\x12\x10\n\x08\x44\x45GRADED\x10\xae\xa6\xa0\xbd\x01\x12\x11\n\nFULLY_DOWN\x10\x97\xb0\xeby\x12\x10\n\x08\x46ULLY_UP\x10\xd0\xbe\xb4\xf0\x01\x12 \n\x19GROUPS_STATUS_UNSPECIFIED\x10\x95\x8d\xf3|B\r\n\x0b_configuredB\x0f\n\r_group_statusB\t\n\x07_intentB\x0e\n\x0c_operational\"\x87\x03\n5InterconnectGroupsOperationalStatusInterconnectStatus\x12\x1e\n\radmin_enabled\x18\xd1\xec\xc1\xd4\x01 \x01(\x08H\x00\x88\x01\x01\x12N\n\x0b\x64iagnostics\x18\xac\xb3\xfa\x9e\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.InterconnectDiagnosticsH\x01\x88\x01\x01\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tH\x02\x88\x01\x01\x12\x19\n\tis_active\x18\xbb\xd7\xe0\x36 \x01(\tH\x03\x88\x01\x01\"d\n\x08IsActive\x12\x17\n\x13UNDEFINED_IS_ACTIVE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08INACTIVE\x10\xeb\x98\xf9\x80\x01\x12\x1d\n\x15IS_ACTIVE_UNSPECIFIED\x10\x93\xc1\x8d\x83\x01\x42\x10\n\x0e_admin_enabledB\x0e\n\x0c_diagnosticsB\x0f\n\r_interconnectB\x0c\n\n_is_active\"\xa9\x02\n\x10InterconnectList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x37\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32%.google.cloud.compute.v1.Interconnect\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xe3\x0c\n\x14InterconnectLocation\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tH\x00\x88\x01\x01\x12!\n\x11\x61vailability_zone\x18\x90\xd0\xc7K \x01(\tH\x01\x88\x01\x01\x12\x1e\n\x12\x61vailable_features\x18\xf3\xb9\xd6\xec\x01 \x03(\t\x12 \n\x14\x61vailable_link_types\x18\xaa\xd6\xf9\xf2\x01 \x03(\t\x12\x14\n\x04\x63ity\x18\xeb\xb2\xba\x01 \x01(\tH\x02\x88\x01\x01\x12\x19\n\tcontinent\x18\xb4\xdb\xd0? \x01(\tH\x03\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x04\x88\x01\x01\x12p\n\x1d\x63ross_site_interconnect_infos\x18\x8d\xdf\xc3v \x03(\x0b\x32\x46.google.cloud.compute.v1.InterconnectLocationCrossSiteInterconnectInfo\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x05\x88\x01\x01\x12\"\n\x11\x66\x61\x63ility_provider\x18\x8d\xa0\xa6\xfe\x01 \x01(\tH\x06\x88\x01\x01\x12-\n\x1d\x66\x61\x63ility_provider_facility_id\x18\x85\xbe\xce) \x01(\tH\x07\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x08\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\n\x88\x01\x01\x12&\n\x15peeringdb_facility_id\x18\xb6\xba\xed\xff\x01 \x01(\tH\x0b\x88\x01\x01\x12Q\n\x0cregion_infos\x18\xfa\xe8\xee\x94\x01 \x03(\x0b\x32\x37.google.cloud.compute.v1.InterconnectLocationRegionInfo\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\x12<\n0single_region_production_critical_peer_locations\x18\xcf\x9b\xcb\xd1\x01 \x03(\t\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\r\x88\x01\x01\x12\x1c\n\x0csupports_pzs\x18\xee\xf6\x85( \x01(\x08H\x0e\x88\x01\x01\"\x80\x01\n\x11\x41vailableFeatures\x12 \n\x1cUNDEFINED_AVAILABLE_FEATURES\x10\x00\x12\x1d\n\x15IF_CROSS_SITE_NETWORK\x10\xb7\xa2\xd8\xdf\x01\x12\x17\n\x10IF_L2_FORWARDING\x10\xd4\xe7\xef;\x12\x11\n\tIF_MACSEC\x10\x84\xfc\xfa\xbc\x01\"\xa2\x01\n\x12\x41vailableLinkTypes\x12\"\n\x1eUNDEFINED_AVAILABLE_LINK_TYPES\x10\x00\x12\"\n\x1aLINK_TYPE_ETHERNET_100G_LR\x10\xe7\xf2\x81\xa1\x01\x12 \n\x19LINK_TYPE_ETHERNET_10G_LR\x10\xa5\xb9\xf1p\x12\"\n\x1bLINK_TYPE_ETHERNET_400G_LR4\x10\xca\xf4\xc8<\"\xea\x01\n\tContinent\x12\x17\n\x13UNDEFINED_CONTINENT\x10\x00\x12\x0e\n\x06\x41\x46RICA\x10\xfa\x9c\xaf\x97\x01\x12\x0f\n\x08\x41SIA_PAC\x10\xfd\xf6\x8e\x39\x12\x0f\n\x08\x43_AFRICA\x10\xf6\x93\xaa\"\x12\x12\n\nC_ASIA_PAC\x10\xf9\x8f\x86\xde\x01\x12\x0f\n\x08\x43_EUROPE\x10\x9e\xca\xc5_\x12\x17\n\x0f\x43_NORTH_AMERICA\x10\x98\x9b\xbb\x83\x01\x12\x17\n\x0f\x43_SOUTH_AMERICA\x10\xe0\x8c\xb0\xbd\x01\x12\x0e\n\x06\x45UROPE\x10\xa2\xd3\xca\xd4\x01\x12\x15\n\rNORTH_AMERICA\x10\x94\xd9\xd0\xd5\x01\x12\x14\n\rSOUTH_AMERICA\x10\xdc\xca\xc5\x0f\"A\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x11\n\tAVAILABLE\x10\xa9\xb5\xe6\xd2\x01\x12\x0e\n\x06\x43LOSED\x10\xec\xaa\xa3\xb5\x01\x42\n\n\x08_addressB\x14\n\x12_availability_zoneB\x07\n\x05_cityB\x0c\n\n_continentB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x14\n\x12_facility_providerB \n\x1e_facility_provider_facility_idB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x18\n\x16_peeringdb_facility_idB\x0c\n\n_self_linkB\t\n\x07_statusB\x0f\n\r_supports_pzs\"N\n-InterconnectLocationCrossSiteInterconnectInfo\x12\x14\n\x04\x63ity\x18\xeb\xb2\xba\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_city\"\xb9\x02\n\x18InterconnectLocationList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.InterconnectLocation\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xfb\x02\n\x1eInterconnectLocationRegionInfo\x12 \n\x0f\x65xpected_rtt_ms\x18\xfa\x83\xbe\xc9\x01 \x01(\x03H\x00\x88\x01\x01\x12%\n\x15l2_forwarding_enabled\x18\x98\xdf\x8bs \x01(\x08H\x01\x88\x01\x01\x12!\n\x11location_presence\x18\xc5\x94\xb4\x30 \x01(\tH\x02\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x03\x88\x01\x01\"\x85\x01\n\x10LocationPresence\x12\x1f\n\x1bUNDEFINED_LOCATION_PRESENCE\x10\x00\x12\x0e\n\x06GLOBAL\x10\xa3\xef\xef\xeb\x01\x12\x14\n\x0cLOCAL_REGION\x10\xe8\xec\xb5\xc0\x01\x12\x11\n\tLP_GLOBAL\x10\xbe\xdd\xeb\xcc\x01\x12\x17\n\x0fLP_LOCAL_REGION\x10\xc3\xda\xfd\xe8\x01\x42\x12\n\x10_expected_rtt_msB\x18\n\x16_l2_forwarding_enabledB\x14\n\x12_location_presenceB\t\n\x07_region\"\x94\x01\n\x12InterconnectMacsec\x12\x1a\n\tfail_open\x18\xcb\x95\xfb\xfd\x01 \x01(\x08H\x00\x88\x01\x01\x12T\n\x0fpre_shared_keys\x18\xf2\xcb\xb5\xc8\x01 \x03(\x0b\x32\x37.google.cloud.compute.v1.InterconnectMacsecPreSharedKeyB\x0c\n\n_fail_open\"v\n\x18InterconnectMacsecConfig\x12Z\n\x0fpre_shared_keys\x18\xf2\xcb\xb5\xc8\x01 \x03(\x0b\x32=.google.cloud.compute.v1.InterconnectMacsecConfigPreSharedKey\"\xa8\x01\n$InterconnectMacsecConfigPreSharedKey\x12\x12\n\x03\x63\x61k\x18\xcd\xff\x05 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03\x63kn\x18\x86\x82\x06 \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x03\x88\x01\x01\x42\x06\n\x04_cakB\x06\n\x04_cknB\x07\n\x05_nameB\r\n\x0b_start_time\"j\n\x1eInterconnectMacsecPreSharedKey\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\r\n\x0b_start_time\"\x85\x05\n\x1eInterconnectOutageNotification\x12\x1c\n\x11\x61\x66\x66\x65\x63ted_circuits\x18\x95\xfe\xdeT \x03(\t\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08\x65nd_time\x18\xb1\xa7\xe7\x36 \x01(\x03H\x01\x88\x01\x01\x12\x1b\n\nissue_type\x18\xe0\xfd\xa0\xb0\x01 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x03\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\x04\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\x03H\x05\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x06\x88\x01\x01\"w\n\tIssueType\x12\x18\n\x14UNDEFINED_ISSUE_TYPE\x10\x00\x12\x10\n\tIT_OUTAGE\x10\x85\xe1\xe8S\x12\x18\n\x11IT_PARTIAL_OUTAGE\x10\xa3\xca\xf5+\x12\r\n\x06OUTAGE\x10\xf1\xa5\x8f]\x12\x15\n\x0ePARTIAL_OUTAGE\x10\x8f\xb7\x8f\x46\"C\n\x06Source\x12\x14\n\x10UNDEFINED_SOURCE\x10\x00\x12\x0e\n\x06GOOGLE\x10\xb9\xa4\x99\xed\x01\x12\x13\n\x0bNSRC_GOOGLE\x10\xe2\xff\xba\xf3\x01\"x\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\tCANCELLED\x10\xb1\xf2\x80\x14\x12\x11\n\tCOMPLETED\x10\xab\x8c\xe4\x93\x01\x12\x10\n\tNS_ACTIVE\x10\xc0\x9d\xb7x\x12\x13\n\x0bNS_CANCELED\x10\xd3\x93\xc7\xf1\x01\x42\x0e\n\x0c_descriptionB\x0b\n\t_end_timeB\r\n\x0b_issue_typeB\x07\n\x05_nameB\t\n\x07_sourceB\r\n\x0b_start_timeB\x08\n\x06_state\"\xb9\x01\n\x12InterconnectParams\x12g\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x44.google.cloud.compute.v1.InterconnectParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8a\x0c\n\x1aInterconnectRemoteLocation\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tH\x00\x88\x01\x01\x12~\n$attachment_configuration_constraints\x18\xd1\xe8\xeb\x9b\x01 \x01(\x0b\x32G.google.cloud.compute.v1.InterconnectAttachmentConfigurationConstraintsH\x01\x88\x01\x01\x12\x14\n\x04\x63ity\x18\xeb\xb2\xba\x01 \x01(\tH\x02\x88\x01\x01\x12[\n\x0b\x63onstraints\x18\xb6\xcc\xee\x01 \x01(\x0b\x32>.google.cloud.compute.v1.InterconnectRemoteLocationConstraintsH\x03\x88\x01\x01\x12\x19\n\tcontinent\x18\xb4\xdb\xd0? \x01(\tH\x04\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x05\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x06\x88\x01\x01\x12\"\n\x11\x66\x61\x63ility_provider\x18\x8d\xa0\xa6\xfe\x01 \x01(\tH\x07\x88\x01\x01\x12-\n\x1d\x66\x61\x63ility_provider_facility_id\x18\x85\xbe\xce) \x01(\tH\x08\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\t\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\n\x88\x01\x01\x12\x14\n\x04lacp\x18\xa2\xa1\xca\x01 \x01(\tH\x0b\x88\x01\x01\x12$\n\x14max_lag_size100_gbps\x18\xb5\xff\xf6t \x01(\x05H\x0c\x88\x01\x01\x12$\n\x13max_lag_size10_gbps\x18\x95\xe6\x98\x8c\x01 \x01(\x05H\r\x88\x01\x01\x12$\n\x14max_lag_size400_gbps\x18\xd2\x8c\x85\x32 \x01(\x05H\x0e\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0f\x88\x01\x01\x12&\n\x15peeringdb_facility_id\x18\xb6\xba\xed\xff\x01 \x01(\tH\x10\x88\x01\x01\x12j\n\x15permitted_connections\x18\xae\xb3\xe5\xd2\x01 \x03(\x0b\x32G.google.cloud.compute.v1.InterconnectRemoteLocationPermittedConnections\x12\x1f\n\x0eremote_service\x18\xbc\xff\xf2\xba\x01 \x01(\tH\x11\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x12\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x13\x88\x01\x01\"\x82\x01\n\tContinent\x12\x17\n\x13UNDEFINED_CONTINENT\x10\x00\x12\x0e\n\x06\x41\x46RICA\x10\xfa\x9c\xaf\x97\x01\x12\x0f\n\x08\x41SIA_PAC\x10\xfd\xf6\x8e\x39\x12\x0e\n\x06\x45UROPE\x10\xa2\xd3\xca\xd4\x01\x12\x15\n\rNORTH_AMERICA\x10\x94\xd9\xd0\xd5\x01\x12\x14\n\rSOUTH_AMERICA\x10\xdc\xca\xc5\x0f\"K\n\x04Lacp\x12\x12\n\x0eUNDEFINED_LACP\x10\x00\x12\x16\n\x0eLACP_SUPPORTED\x10\xb1\x8a\xf6\xa1\x01\x12\x17\n\x10LACP_UNSUPPORTED\x10\xf8\xf3\x9e\x61\"A\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x11\n\tAVAILABLE\x10\xa9\xb5\xe6\xd2\x01\x12\x0e\n\x06\x43LOSED\x10\xec\xaa\xa3\xb5\x01\x42\n\n\x08_addressB\'\n%_attachment_configuration_constraintsB\x07\n\x05_cityB\x0e\n\x0c_constraintsB\x0c\n\n_continentB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x14\n\x12_facility_providerB \n\x1e_facility_provider_facility_idB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_lacpB\x17\n\x15_max_lag_size100_gbpsB\x16\n\x14_max_lag_size10_gbpsB\x17\n\x15_max_lag_size400_gbpsB\x07\n\x05_nameB\x18\n\x16_peeringdb_facility_idB\x11\n\x0f_remote_serviceB\x0c\n\n_self_linkB\t\n\x07_status\"\xc5\x04\n%InterconnectRemoteLocationConstraints\x12*\n\x19port_pair_remote_location\x18\xa7\xb2\xbc\xec\x01 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0eport_pair_vlan\x18\xea\xf2\x83\xe4\x01 \x01(\tH\x01\x88\x01\x01\x12t\n\x13subnet_length_range\x18\xc6\xb0\xfbW \x01(\x0b\x32O.google.cloud.compute.v1.InterconnectRemoteLocationConstraintsSubnetLengthRangeH\x02\x88\x01\x01\"\x9c\x01\n\x16PortPairRemoteLocation\x12\'\n#UNDEFINED_PORT_PAIR_REMOTE_LOCATION\x10\x00\x12)\n\"PORT_PAIR_MATCHING_REMOTE_LOCATION\x10\xd3\x8b\xec\x62\x12.\n\'PORT_PAIR_UNCONSTRAINED_REMOTE_LOCATION\x10\xa5\xaa\xf3\x1c\"q\n\x0cPortPairVlan\x12\x1c\n\x18UNDEFINED_PORT_PAIR_VLAN\x10\x00\x12\x1e\n\x17PORT_PAIR_MATCHING_VLAN\x10\xbe\xe8\xacw\x12#\n\x1cPORT_PAIR_UNCONSTRAINED_VLAN\x10\xac\x88\xc7SB\x1c\n\x1a_port_pair_remote_locationB\x11\n\x0f_port_pair_vlanB\x16\n\x14_subnet_length_range\"p\n6InterconnectRemoteLocationConstraintsSubnetLengthRange\x12\x12\n\x03max\x18\xe4\xca\x06 \x01(\x05H\x00\x88\x01\x01\x12\x12\n\x03min\x18\xd2\xcc\x06 \x01(\x05H\x01\x88\x01\x01\x42\x06\n\x04_maxB\x06\n\x04_min\"\xc5\x02\n\x1eInterconnectRemoteLocationList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x45\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x33.google.cloud.compute.v1.InterconnectRemoteLocation\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"r\n.InterconnectRemoteLocationPermittedConnections\x12&\n\x15interconnect_location\x18\xc6\xd8\xdb\xea\x01 \x01(\tH\x00\x88\x01\x01\x42\x18\n\x16_interconnect_location\"z\n#InterconnectsGetDiagnosticsResponse\x12H\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32\x30.google.cloud.compute.v1.InterconnectDiagnosticsH\x00\x88\x01\x01\x42\t\n\x07_result\"\x9b\x01\n$InterconnectsGetMacsecConfigResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12I\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32\x31.google.cloud.compute.v1.InterconnectMacsecConfigH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_result\"\xe9\x01\n\x1cInvalidateCacheUrlMapRequest\x12\x61\n cache_invalidation_rule_resource\x18\xad\xc3\x93\x95\x01 \x01(\x0b\x32..google.cloud.compute.v1.CacheInvalidationRuleB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"D\n\x05Items\x12\x12\n\x03key\x18\xdf\xbc\x06 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05value\x18\xf1\xa2\xb2\x35 \x01(\tH\x01\x88\x01\x01\x42\x06\n\x04_keyB\x08\n\x06_value\"\x9f\t\n\x07License\x12\'\n\x1c\x61llowed_replacement_licenses\x18\x96\x9c\xa7] \x03(\t\x12\"\n\x12\x61ppendable_to_disk\x18\x96\x8e\x8b\x08 \x01(\x08H\x00\x88\x01\x01\x12 \n\x0f\x63harges_use_fee\x18\xce\xa1\xca\xb1\x01 \x01(\x08H\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12!\n\x15incompatible_licenses\x18\x98\xb0\xb0\x9f\x01 \x03(\t\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\x0clicense_code\x18\xab\xc6Y \x01(\x04H\x06\x88\x01\x01\x12\x44\n\x11minimum_retention\x18\xad\xe0\x8cJ \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x07\x88\x01\x01\x12\"\n\x11multi_tenant_only\x18\x9b\xe0\xeb\x82\x01 \x01(\x08H\x08\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\t\x88\x01\x01\x12\x1b\n\nos_license\x18\xe6\xa9\xd8\xe8\x01 \x01(\x08H\n\x88\x01\x01\x12>\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32&.google.cloud.compute.v1.LicenseParamsH\x0b\x88\x01\x01\x12#\n\x13removable_from_disk\x18\xae\x85\xaa\x0c \x01(\x08H\x0c\x88\x01\x01\x12\'\n\x1crequired_coattached_licenses\x18\x81\xba\xcd= \x03(\t\x12[\n\x15resource_requirements\x18\xa1\xb2\x97\x66 \x01(\x0b\x32\x34.google.cloud.compute.v1.LicenseResourceRequirementsH\r\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0e\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x0f\x88\x01\x01\x12!\n\x10sole_tenant_only\x18\xb7\x8b\xee\xcb\x01 \x01(\x08H\x10\x88\x01\x01\x12\x1c\n\x0ctransferable\x18\xc5\xbf\x89\x02 \x01(\x08H\x11\x88\x01\x01\x12 \n\x10update_timestamp\x18\xa0\xea\xd2\x39 \x01(\tH\x12\x88\x01\x01\x42\x15\n\x13_appendable_to_diskB\x12\n\x10_charges_use_feeB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x0f\n\r_license_codeB\x14\n\x12_minimum_retentionB\x14\n\x12_multi_tenant_onlyB\x07\n\x05_nameB\r\n\x0b_os_licenseB\t\n\x07_paramsB\x16\n\x14_removable_from_diskB\x18\n\x16_resource_requirementsB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x13\n\x11_sole_tenant_onlyB\x0f\n\r_transferableB\x13\n\x11_update_timestamp\"\x94\x04\n\x0bLicenseCode\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12J\n\rlicense_alias\x18\xd2\x91\xe2\x14 \x03(\x0b\x32\x30.google.cloud.compute.v1.LicenseCodeLicenseAlias\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x04\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x05\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x06\x88\x01\x01\x12\x1c\n\x0ctransferable\x18\xc5\xbf\x89\x02 \x01(\x08H\x07\x88\x01\x01\"\x7f\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x0e\n\x07\x45NABLED\x10\xa1\xae\xecV\x12\x11\n\nRESTRICTED\x10\xdb\xe8\xdb|\x12\x19\n\x11STATE_UNSPECIFIED\x10\xc9\xd0\xbc\xe0\x01\x12\x11\n\nTERMINATED\x10\xa3\xf4\x9bwB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x0c\n\n_self_linkB\x08\n\x06_stateB\x0f\n\r_transferable\"q\n\x17LicenseCodeLicenseAlias\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0c\n\n_self_link\"\xaf\x01\n\rLicenseParams\x12\x62\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32?.google.cloud.compute.v1.LicenseParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x9c\x01\n\x19LicenseResourceCommitment\x12\x16\n\x06\x61mount\x18\xd8\xa0\xe9] \x01(\x03H\x00\x88\x01\x01\x12!\n\x11\x63ores_per_license\x18\x94\xc8\xbe\x0f \x01(\tH\x01\x88\x01\x01\x12\x17\n\x07license\x18\xc1\x88\xc2O \x01(\tH\x02\x88\x01\x01\x42\t\n\x07_amountB\x14\n\x12_cores_per_licenseB\n\n\x08_license\"\x8d\x01\n\x1bLicenseResourceRequirements\x12$\n\x13min_guest_cpu_count\x18\xa4\xd4\xf4\xe3\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1e\n\rmin_memory_mb\x18\xe6\xd7\xd9\xf0\x01 \x01(\x05H\x01\x88\x01\x01\x42\x16\n\x14_min_guest_cpu_countB\x10\n\x0e_min_memory_mb\"\x89\x02\n\x14LicensesListResponse\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x32\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32 .google.cloud.compute.v1.License\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x01\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x02\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x03\x88\x01\x01\x42\x05\n\x03_idB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb3\x02\n\x1bListAcceleratorTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xae\x02\n\x14ListAddressesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa8\x01\n%ListAssociationsFirewallPolicyRequest\x12*\n\x1ainclude_inherited_policies\x18\x8c\x9c\xb2\x0f \x01(\x08H\x00\x88\x01\x01\x12 \n\x0ftarget_resource\x18\xfc\xed\xea\xde\x01 \x01(\tH\x01\x88\x01\x01\x42\x1d\n\x1b_include_inherited_policiesB\x12\n\x10_target_resource\"i\n1ListAssociationsOrganizationSecurityPolicyRequest\x12 \n\x0ftarget_resource\x18\xfc\xed\xea\xde\x01 \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_target_resource\"\xae\x02\n\x16ListAutoscalersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc7\x02\n-ListAvailableFeaturesRegionSslPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa9\x02\n\'ListAvailableFeaturesSslPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9b\x02\n\x19ListBackendBucketsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9c\x02\n\x1aListBackendServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x8b\x06\n\x1bListBgpRoutesRoutersRequest\x12\x1e\n\x0e\x61\x64\x64ress_family\x18\x8f\xc4\xecR \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x64\x65stination_prefix\x18\xe3\xbf\xe9} \x01(\tH\x01\x88\x01\x01\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x03\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x04\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04peer\x18\xe2\xe2\xd1\x01 \x01(\tH\x06\x88\x01\x01\x12\x1f\n\x0epolicy_applied\x18\xf0\xd4\xf8\xb4\x01 \x01(\x08H\x07\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x08\x88\x01\x01\x12\x1b\n\nroute_type\x18\xf0\xb6\x9e\xb3\x01 \x01(\tH\t\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\"f\n\rAddressFamily\x12\x1c\n\x18UNDEFINED_ADDRESS_FAMILY\x10\x00\x12\x0b\n\x04IPV4\x10\x85\xcc\x89\x01\x12\x0b\n\x04IPV6\x10\x87\xcc\x89\x01\x12\x1d\n\x16UNSPECIFIED_IP_VERSION\x10\xc8\xe7\xe3\"\"g\n\tRouteType\x12\x18\n\x14UNDEFINED_ROUTE_TYPE\x10\x00\x12\x11\n\nADVERTISED\x10\x9d\x92\xd7\t\x12\x0e\n\x07LEARNED\x10\xc3\xcb\xc9n\x12\x1d\n\x16UNSPECIFIED_ROUTE_TYPE\x10\xb8\xd3\xa4vB\x11\n\x0f_address_familyB\x15\n\x13_destination_prefixB\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x07\n\x05_peerB\x11\n\x0f_policy_appliedB\x19\n\x17_return_partial_successB\r\n\x0b_route_type\"\x9e\x02\n\x1cListCrossSiteNetworksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xac\x02\n\x14ListDiskTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa8\x02\n\x10ListDisksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd3\x02\n\x1cListDisksStoragePoolsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x1d\n\x0cstorage_pool\x18\xe0\xc6\xf1\xab\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xe6\x02\n&ListErrorsInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xee\x02\n,ListErrorsRegionInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa0\x02\n\x1eListExternalVpnGatewaysRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xae\x02\n\x1bListFirewallPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tH\x04\x88\x01\x01\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x0c\n\n_parent_idB\x19\n\x17_return_partial_success\"\x96\x02\n\x14ListFirewallsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb4\x02\n\x1aListForwardingRulesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb5\x02\n\x1dListFutureReservationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9c\x02\n\x1aListGlobalAddressesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa2\x02\n ListGlobalForwardingRulesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa8\x02\n&ListGlobalNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9d\x02\n\x1bListGlobalOperationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xba\x02\n\'ListGlobalOrganizationOperationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tH\x04\x88\x01\x01\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x0c\n\n_parent_idB\x19\n\x17_return_partial_success\"\xaa\x02\n(ListGlobalPublicDelegatedPrefixesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x99\x02\n\x17ListHealthChecksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x93\x02\n\x11ListImagesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xed\x02\n-ListInstanceGroupManagerResizeRequestsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb8\x02\n ListInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb1\x02\n\x19ListInstanceGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9e\x02\n\x1cListInstanceTemplatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd9\x03\n\"ListInstancesInstanceGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12}\n/instance_groups_list_instances_request_resource\x18\x9f\xa8\x8c\xe3\x01 \x01(\x0b\x32;.google.cloud.compute.v1.InstanceGroupsListInstancesRequestB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xee\x03\n(ListInstancesRegionInstanceGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x89\x01\n6region_instance_groups_list_instances_request_resource\x18\xd4\xa9\x80\x17 \x01(\x0b\x32\x41.google.cloud.compute.v1.RegionInstanceGroupsListInstancesRequestB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xac\x02\n\x14ListInstancesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb3\x02\n\x1bListInstantSnapshotsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa9\x02\n\'ListInterconnectAttachmentGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbc\x02\n\"ListInterconnectAttachmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9f\x02\n\x1dListInterconnectGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa2\x02\n ListInterconnectLocationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa8\x02\n&ListInterconnectRemoteLocationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9a\x02\n\x18ListInterconnectsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x95\x02\n\x13ListLicensesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9a\x02\n\x18ListMachineImagesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xaf\x02\n\x17ListMachineTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xf0\x02\n0ListManagedInstancesInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xf8\x02\n6ListManagedInstancesRegionInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb7\x02\n\x1dListNetworkAttachmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb8\x02\n ListNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xe1\x02\n6ListNetworkEndpointsGlobalNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xff\x03\n0ListNetworkEndpointsNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x8b\x01\n7network_endpoint_groups_list_endpoints_request_resource\x18\x8e\x98\xaf\x1c \x01(\x0b\x32\x42.google.cloud.compute.v1.NetworkEndpointGroupsListEndpointsRequestB\x03\xe0\x41\x02\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xf9\x02\n6ListNetworkEndpointsRegionNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa4\x02\n\"ListNetworkFirewallPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9c\x02\n\x1aListNetworkProfilesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x95\x02\n\x13ListNetworksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xad\x02\n\x15ListNodeGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb2\x02\n\x18ListNodeTemplatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xac\x02\n\x14ListNodeTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xcf\x02\n\x1aListNodesNodeGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xba\x02\n\'ListOrganizationSecurityPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tH\x04\x88\x01\x01\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x0c\n\n_parent_idB\x19\n\x17_return_partial_success\"\xb5\x02\n\x1bListPacketMirroringsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x80\x04\n ListPeeringRoutesNetworksRequest\x12\x19\n\tdirection\x18\xff\x8e\x80\x35 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x1c\n\x0cpeering_name\x18\xaa\xd0\x80w \x01(\tH\x05\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x06\x88\x01\x01\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x07\x88\x01\x01\"H\n\tDirection\x12\x17\n\x13UNDEFINED_DIRECTION\x10\x00\x12\x10\n\x08INCOMING\x10\xa6\xd0\xb7\xa1\x01\x12\x10\n\x08OUTGOING\x10\xec\xc6\xcc\x92\x01\x42\x0c\n\n_directionB\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x0f\n\r_peering_nameB\t\n\x07_regionB\x19\n\x17_return_partial_success\"\xf2\x02\n2ListPerInstanceConfigsInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xfa\x02\n8ListPerInstanceConfigsRegionInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd5\x02\nBListPreconfiguredExpressionSetsOrganizationSecurityPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tH\x04\x88\x01\x01\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x0c\n\n_parent_idB\x19\n\x17_return_partial_success\"\xb8\x02\n6ListPreconfiguredExpressionSetsSecurityPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9c\x02\n\x1aListPreviewFeaturesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa5\x02\n#ListPublicAdvertisedPrefixesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbc\x02\n\"ListPublicDelegatedPrefixesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xcf\x02\n\x1dListReferrersInstancesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb6\x02\n\x1cListRegionAutoscalersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xba\x02\n ListRegionBackendServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb6\x02\n\x1cListRegionCommitmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc0\x02\n&ListRegionCompositeHealthChecksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb4\x02\n\x1aListRegionDiskTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb0\x02\n\x16ListRegionDisksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc4\x02\n*ListRegionHealthAggregationPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbe\x02\n$ListRegionHealthCheckServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb7\x02\n\x1dListRegionHealthChecksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb8\x02\n\x1eListRegionHealthSourcesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc0\x02\n&ListRegionInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb9\x02\n\x1fListRegionInstanceGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbc\x02\n\"ListRegionInstanceTemplatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbb\x02\n!ListRegionInstantSnapshotsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc0\x02\n&ListRegionNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc2\x02\n(ListRegionNetworkFirewallPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc0\x02\n&ListRegionNotificationEndpointsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb5\x02\n\x1bListRegionOperationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbb\x02\n!ListRegionSecurityPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xba\x02\n ListRegionSslCertificatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb6\x02\n\x1cListRegionSslPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbc\x02\n\"ListRegionTargetHttpProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbd\x02\n#ListRegionTargetHttpsProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbb\x02\n!ListRegionTargetTcpProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb2\x02\n\x18ListRegionUrlMapsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb0\x02\n\x16ListRegionZonesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x94\x02\n\x12ListRegionsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd1\x02\n\x1cListReservationBlocksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd1\x02\n\x1bListReservationSlotsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd5\x02\n\x1fListReservationSubBlocksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xaf\x02\n\x17ListReservationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb5\x02\n\x1bListResourcePoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd1\x02\n\x1fListRoutePoliciesRoutersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xac\x02\n\x12ListRoutersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x93\x02\n\x11ListRoutesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9d\x02\n\x1bListSecurityPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb7\x02\n\x1dListServiceAttachmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x96\x02\n\x14ListSnapshotsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9c\x02\n\x1aListSslCertificatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x98\x02\n\x16ListSslPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb3\x02\n\x1bListStoragePoolTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xaf\x02\n\x17ListStoragePoolsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x99\x03\n\x16ListSubnetworksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x15\n\x05views\x18\xee\xb4\xc0\x35 \x01(\tH\x05\x88\x01\x01\"F\n\x05Views\x12\x13\n\x0fUNDEFINED_VIEWS\x10\x00\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\x12\x18\n\x10WITH_UTILIZATION\x10\x89\xa0\xaf\xf0\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x08\n\x06_views\"\x9e\x02\n\x1cListTargetGrpcProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9e\x02\n\x1cListTargetHttpProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9f\x02\n\x1dListTargetHttpsProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb2\x02\n\x1aListTargetInstancesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb0\x02\n\x16ListTargetPoolsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9d\x02\n\x1bListTargetSslProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9d\x02\n\x1bListTargetTcpProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb6\x02\n\x1cListTargetVpnGatewaysRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x94\x02\n\x12ListUrlMapsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa2\x02\n ListUsableBackendServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc0\x02\n&ListUsableRegionBackendServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd4\x02\n\x1cListUsableSubnetworksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12 \n\x0fservice_project\x18\x8f\xe7\x80\xfd\x01 \x01(\tH\x05\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x12\n\x10_service_project\"\xb0\x02\n\x16ListVpnGatewaysRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xaf\x02\n\x15ListVpnTunnelsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbb\x02\n\x15ListWireGroupsRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x8d\x03\n\x1bListXpnHostsProjectsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12n\n(projects_list_xpn_hosts_request_resource\x18\x97\xd0\xceq \x01(\x0b\x32\x34.google.cloud.compute.v1.ProjectsListXpnHostsRequestB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb1\x02\n\x19ListZoneOperationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x92\x02\n\x10ListZonesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x8f\x01\n\tLocalDisk\x12\x1a\n\ndisk_count\x18\xed\xaf\x9dW \x01(\x05H\x00\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x05H\x01\x88\x01\x01\x12\x19\n\tdisk_type\x18\x9c\xe9\xac, \x01(\tH\x02\x88\x01\x01\x42\r\n\x0b_disk_countB\x0f\n\r_disk_size_gbB\x0c\n\n_disk_type\"\\\n\x10LocalizedMessage\x12\x17\n\x06locale\x18\xda\x9c\xd8\xf4\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x01\x88\x01\x01\x42\t\n\x07_localeB\n\n\x08_message\"\x9e\x03\n\x0eLocationPolicy\x12M\n\tlocations\x18\xde\xae\x91\xc5\x01 \x03(\x0b\x32\x36.google.cloud.compute.v1.LocationPolicy.LocationsEntry\x12\x1d\n\x0ctarget_shape\x18\xf3\xe6\xbb\xa1\x01 \x01(\tH\x00\x88\x01\x01\x12J\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\x0b\x32\x38.google.cloud.compute.v1.LocationPolicyZoneConfiguration\x1a\x61\n\x0eLocationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12>\n\x05value\x18\x02 \x01(\x0b\x32/.google.cloud.compute.v1.LocationPolicyLocation:\x02\x38\x01\"^\n\x0bTargetShape\x12\x1a\n\x16UNDEFINED_TARGET_SHAPE\x10\x00\x12\t\n\x03\x41NY\x10\xcc\xfb\x03\x12\x16\n\x0f\x41NY_SINGLE_ZONE\x10\xd0\xa6\x91\x1d\x12\x10\n\x08\x42\x41LANCED\x10\x88\xba\xad\xdf\x01\x42\x0f\n\r_target_shape\"\x8e\x02\n\x16LocationPolicyLocation\x12W\n\x0b\x63onstraints\x18\xb6\xcc\xee\x01 \x01(\x0b\x32:.google.cloud.compute.v1.LocationPolicyLocationConstraintsH\x00\x88\x01\x01\x12\x1a\n\npreference\x18\xdb\xf9\xf2G \x01(\tH\x01\x88\x01\x01\"`\n\nPreference\x12\x18\n\x14UNDEFINED_PREFERENCE\x10\x00\x12\x0c\n\x05\x41LLOW\x10\xa9\xd6\xde\x1d\x12\n\n\x04\x44\x45NY\x10\x8c\xec\x7f\x12\x1e\n\x16PREFERENCE_UNSPECIFIED\x10\xb3\xeb\xce\xec\x01\x42\x0e\n\x0c_constraintsB\r\n\x0b_preference\"M\n!LocationPolicyLocationConstraints\x12\x1a\n\tmax_count\x18\xf4\xfc\x92\x89\x01 \x01(\x05H\x00\x88\x01\x01\x42\x0c\n\n_max_count\"@\n\x1fLocationPolicyZoneConfiguration\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_zone\"\xb4\x0b\n\x0cMachineImage\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0bguest_flush\x18\xdd\x93\xec\xb7\x01 \x01(\x08H\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12P\n\x13instance_properties\x18\x9d\x9e\xd8\x66 \x01(\x0b\x32+.google.cloud.compute.v1.InstancePropertiesH\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x06\x88\x01\x01\x12\x45\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x31.google.cloud.compute.v1.MachineImage.LabelsEntry\x12]\n\x1cmachine_image_encryption_key\x18\xff\xff\xe7\xfb\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12\x43\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32+.google.cloud.compute.v1.MachineImageParamsH\t\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\n\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x0b\x88\x01\x01\x12;\n\x0bsaved_disks\x18\xbe\xed\xc0\xbd\x01 \x03(\x0b\x32\".google.cloud.compute.v1.SavedDisk\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\x12Y\n\x1bsource_disk_encryption_keys\x18\xb2\xf8\xcf\xb0\x01 \x03(\x0b\x32\x30.google.cloud.compute.v1.SourceDiskEncryptionKey\x12 \n\x0fsource_instance\x18\xb9\x98\xfd\xbc\x01 \x01(\tH\r\x88\x01\x01\x12^\n\x1asource_instance_properties\x18\xf9\xd1\xcb\xe2\x01 \x01(\x0b\x32\x31.google.cloud.compute.v1.SourceInstancePropertiesH\x0e\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x0f\x88\x01\x01\x12\x1d\n\x11storage_locations\x18\x9a\xed\xb3\x9c\x01 \x03(\t\x12#\n\x13total_storage_bytes\x18\xec\x87\x84\' \x01(\x03H\x10\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"s\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x10\n\tUPLOADING\x10\xa1\x9c\xcd\x7f\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_guest_flushB\x05\n\x03_idB\x16\n\x14_instance_propertiesB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x1f\n\x1d_machine_image_encryption_keyB\x07\n\x05_nameB\t\n\x07_paramsB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\x12\n\x10_source_instanceB\x1d\n\x1b_source_instance_propertiesB\t\n\x07_statusB\x16\n\x14_total_storage_bytes\"\xa9\x02\n\x10MachineImageList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x37\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32%.google.cloud.compute.v1.MachineImage\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb9\x01\n\x12MachineImageParams\x12g\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x44.google.cloud.compute.v1.MachineImageParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8b\x08\n\x0bMachineType\x12?\n\x0c\x61\x63\x63\x65lerators\x18\xe8\xd6\xc5\x80\x01 \x03(\x0b\x32%.google.cloud.compute.v1.Accelerators\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12N\n\x12\x62undled_local_ssds\x18\x80\xe7\xe0\xb8\x01 \x01(\x0b\x32).google.cloud.compute.v1.BundledLocalSsdsH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12\x1b\n\nguest_cpus\x18\xd2\xcb\xc8\xbb\x01 \x01(\x05H\x05\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x1e\n\x0eimage_space_gb\x18\x98\xf2\xf5# \x01(\x05H\x07\x88\x01\x01\x12\x1e\n\ris_shared_cpu\x18\x83\xda\xcf\xf8\x01 \x01(\x08H\x08\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\t\x88\x01\x01\x12)\n\x18maximum_persistent_disks\x18\x8d\xf6\xce\xec\x01 \x01(\x05H\n\x88\x01\x01\x12\x30\n maximum_persistent_disks_size_gb\x18\xa7\x95\xc8I \x01(\x03H\x0b\x88\x01\x01\x12\x19\n\tmemory_mb\x18\x93\x93\xa8\x37 \x01(\x05H\x0c\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\r\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0e\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0f\x88\x01\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\x42\x0f\n\r_architectureB\x15\n\x13_bundled_local_ssdsB\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\r\n\x0b_guest_cpusB\x05\n\x03_idB\x11\n\x0f_image_space_gbB\x10\n\x0e_is_shared_cpuB\x07\n\x05_kindB\x1b\n\x19_maximum_persistent_disksB#\n!_maximum_persistent_disks_size_gbB\x0c\n\n_memory_mbB\x07\n\x05_nameB\x0c\n\n_self_linkB\x07\n\x05_zone\"\xc2\x03\n\x19MachineTypeAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12O\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32=.google.cloud.compute.v1.MachineTypeAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a]\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12>\n\x05value\x18\x02 \x01(\x0b\x32/.google.cloud.compute.v1.MachineTypesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa7\x02\n\x0fMachineTypeList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x36\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32$.google.cloud.compute.v1.MachineType\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x9f\x01\n\x16MachineTypesScopedList\x12>\n\rmachine_types\x18\x81\xdd\x81& \x03(\x0b\x32$.google.cloud.compute.v1.MachineType\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x82\x0b\n\x0fManagedInstance\x12\x1e\n\x0e\x63urrent_action\x18\xbc\xa7\x8dU \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x01\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x02\x88\x01\x01\x12S\n\x0finstance_health\x18\xc6\x92\xbc\xb6\x01 \x03(\x0b\x32\x36.google.cloud.compute.v1.ManagedInstanceInstanceHealth\x12\x1f\n\x0finstance_status\x18\xdc\xad\x9fS \x01(\tH\x03\x88\x01\x01\x12R\n\x0clast_attempt\x18\xa4\xac\xa8\xcf\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.ManagedInstanceLastAttemptH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12T\n\x1bpreserved_state_from_config\x18\xe2\xeb\x85/ \x01(\x0b\x32\'.google.cloud.compute.v1.PreservedStateH\x06\x88\x01\x01\x12U\n\x1bpreserved_state_from_policy\x18\xd2\xaf\xbe\xe0\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.PreservedStateH\x07\x88\x01\x01\x12{\n\"properties_from_flexibility_policy\x18\xc1\xc5\x94J \x01(\x0b\x32G.google.cloud.compute.v1.ManagedInstancePropertiesFromFlexibilityPolicyH\x08\x88\x01\x01\x12I\n\x07version\x18\xd8\xb9\xd4\xa7\x01 \x01(\x0b\x32/.google.cloud.compute.v1.ManagedInstanceVersionH\t\x88\x01\x01\"\x85\x02\n\rCurrentAction\x12\x1c\n\x18UNDEFINED_CURRENT_ACTION\x10\x00\x12\x12\n\nABANDONING\x10\xcd\xca\x90\xb9\x01\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12 \n\x18\x43REATING_WITHOUT_RETRIES\x10\x89\xc6\xbe\xcc\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x12\n\nRECREATING\x10\xec\x8b\xfe\x88\x01\x12\x11\n\nREFRESHING\x10\xa7\xfe\xecM\x12\x12\n\nRESTARTING\x10\xf3\xee\xeb\x98\x01\x12\x10\n\x08RESUMING\x10\xaa\xfb\x89\xd5\x01\x12\x10\n\x08STARTING\x10\xc0\xa0\x8b\xe9\x01\x12\x10\n\tVERIFYING\x10\xa9\xc1\x8c\x08\"\xfd\x01\n\x0eInstanceStatus\x12\x1d\n\x19UNDEFINED_INSTANCE_STATUS\x10\x00\x12\x16\n\x0e\x44\x45PROVISIONING\x10\xee\x93\xc4\xcc\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x14\n\x0cPROVISIONING\x10\xed\xf5\xda\x8a\x01\x12\x11\n\tREPAIRING\x10\x95\x82\x95\xc5\x01\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x12\x0f\n\x07STAGING\x10\x9b\xc8\xc6\xcd\x01\x12\x0f\n\x07STOPPED\x10\xad\xbb\xec\xd3\x01\x12\x10\n\x08STOPPING\x10\xf4\xd0\xa2\xa7\x01\x12\x10\n\tSUSPENDED\x10\xbb\xbb\xb6\x18\x12\x12\n\nSUSPENDING\x10\xa6\xd4\x98\xf5\x01\x12\x11\n\nTERMINATED\x10\xa3\xf4\x9bwB\x11\n\x0f_current_actionB\x05\n\x03_idB\x0b\n\t_instanceB\x12\n\x10_instance_statusB\x0f\n\r_last_attemptB\x07\n\x05_nameB\x1e\n\x1c_preserved_state_from_configB\x1e\n\x1c_preserved_state_from_policyB%\n#_properties_from_flexibility_policyB\n\n\x08_version\"\xa6\x02\n\x1dManagedInstanceInstanceHealth\x12&\n\x15\x64\x65tailed_health_state\x18\x9d\xd0\xb4\xf3\x01 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tH\x01\x88\x01\x01\"\x92\x01\n\x13\x44\x65tailedHealthState\x12#\n\x1fUNDEFINED_DETAILED_HEALTH_STATE\x10\x00\x12\x10\n\x08\x44RAINING\x10\xea\xd5\x8c\xe5\x01\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12\x0f\n\x07TIMEOUT\x10\xc1\xb2\xeb\xe3\x01\x12\x11\n\tUNHEALTHY\x10\xc4\xb9\xad\xdc\x01\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\x42\x18\n\x16_detailed_health_stateB\x0f\n\r_health_check\"{\n\x1aManagedInstanceLastAttempt\x12R\n\x06\x65rrors\x18\xeb\xde\xd5\x96\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.ManagedInstanceLastAttemptErrorsH\x00\x88\x01\x01\x42\t\n\x07_errors\"W\n ManagedInstanceLastAttemptErrors\x12\x33\n\x06\x65rrors\x18\xeb\xde\xd5\x96\x01 \x03(\x0b\x32\x1f.google.cloud.compute.v1.Errors\"_\n.ManagedInstancePropertiesFromFlexibilityPolicy\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_machine_type\"q\n\x16ManagedInstanceVersion\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\x14\n\x12_instance_templateB\x07\n\x05_name\"\x88\x01\n\x08Metadata\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12\x30\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1e.google.cloud.compute.v1.Items\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_fingerprintB\x07\n\x05_kind\"\x8f\x02\n\x0eMetadataFilter\x12L\n\rfilter_labels\x18\xa6\xf5\xe8\x92\x01 \x03(\x0b\x32\x31.google.cloud.compute.v1.MetadataFilterLabelMatch\x12%\n\x15\x66ilter_match_criteria\x18\xc0\xd0\xb6r \x01(\tH\x00\x88\x01\x01\"n\n\x13\x46ilterMatchCriteria\x12#\n\x1fUNDEFINED_FILTER_MATCH_CRITERIA\x10\x00\x12\x10\n\tMATCH_ALL\x10\xe7\xe7\x92V\x12\x10\n\tMATCH_ANY\x10\xb2\xe8\x92V\x12\x0e\n\x07NOT_SET\x10\xb6\x99\x84NB\x18\n\x16_filter_match_criteria\"Z\n\x18MetadataFilterLabelMatch\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05value\x18\xf1\xa2\xb2\x35 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\x08\n\x06_value\"\x8b\x02\n\x12MoveAddressRequest\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12l\n®ion_addresses_move_request_resource\x18\xc4\xb0\x88\xc3\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.RegionAddressesMoveRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbd\x01\n\x16MoveDiskProjectRequest\x12U\n\x1a\x64isk_move_request_resource\x18\xca\xc2\xa0\x95\x01 \x01(\x0b\x32(.google.cloud.compute.v1.DiskMoveRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x90\x01\n\x19MoveFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12&\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tB\x0f\xe0\x41\x02\xf2G\tparent_id\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf0\x01\n\x18MoveGlobalAddressRequest\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tB\x03\xe0\x41\x02\x12l\n&global_addresses_move_request_resource\x18\xf3\xf1\xb1\x90\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.GlobalAddressesMoveRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc9\x01\n\x1aMoveInstanceProjectRequest\x12]\n\x1einstance_move_request_resource\x18\xc2\xbc\xce\x94\x01 \x01(\x0b\x32,.google.cloud.compute.v1.InstanceMoveRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xab\x01\n%MoveOrganizationSecurityPolicyRequest\x12(\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tB\x0c\xf2G\tparent_idH\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0c\n\n_parent_idB\r\n\x0b_request_id\"I\n\tNamedPort\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x01\x88\x01\x01\x42\x07\n\x05_nameB\x07\n\x05_port\"\x88\x01\n\tNatIpInfo\x12S\n\x14nat_ip_info_mappings\x18\x9c\x80\x8es \x03(\x0b\x32\x32.google.cloud.compute.v1.NatIpInfoNatIpInfoMapping\x12\x19\n\x08nat_name\x18\xe9\xad\xf8\xca\x01 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_nat_name\"\xf2\x01\n\x19NatIpInfoNatIpInfoMapping\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06nat_ip\x18\x85\xd2\x88\n \x01(\tH\x01\x88\x01\x01\x12\x15\n\x05usage\x18\xa1\xfb\x99\x35 \x01(\tH\x02\x88\x01\x01\"5\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\n\n\x04\x41UTO\x10\xaf\xab{\x12\r\n\x06MANUAL\x10\xc6\xb7\xf7\x38\";\n\x05Usage\x12\x13\n\x0fUNDEFINED_USAGE\x10\x00\x12\r\n\x06IN_USE\x10\xcd\xce\xa5\x08\x12\x0e\n\x06UNUSED\x10\xd6\xf3\xfb\xab\x01\x42\x07\n\x05_modeB\t\n\x07_nat_ipB\x08\n\x06_usage\"J\n\x11NatIpInfoResponse\x12\x35\n\x06result\x18\x9d\x90\xb7\x42 \x03(\x0b\x32\".google.cloud.compute.v1.NatIpInfo\"\xed\t\n\x07Network\x12\x1b\n\x0bI_pv4_range\x18\xb6\xb0\x9f\x1c \x01(\tH\x00\x88\x01\x01\x12\'\n\x17\x61uto_create_subnetworks\x18\x92\xc8\x92z \x01(\x08H\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12)\n\x18\x65nable_ula_internal_ipv6\x18\x98\x8f\x88\xca\x01 \x01(\x08H\x04\x88\x01\x01\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tH\x05\x88\x01\x01\x12\x1d\n\rgateway_i_pv4\x18\xdd\xd8\x99U \x01(\tH\x06\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x07\x88\x01\x01\x12$\n\x13internal_ipv6_range\x18\xa7\xcf\xa6\x84\x01 \x01(\tH\x08\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\t\x88\x01\x01\x12\x12\n\x03mtu\x18\xae\xcf\x06 \x01(\x05H\n\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0b\x88\x01\x01\x12\x39\n)network_firewall_policy_enforcement_order\x18\xd0\x82\x8d\x03 \x01(\tH\x0c\x88\x01\x01\x12\x1f\n\x0fnetwork_profile\x18\x98\xf9\xc5R \x01(\tH\r\x88\x01\x01\x12>\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32&.google.cloud.compute.v1.NetworkParamsH\x0e\x88\x01\x01\x12<\n\x08peerings\x18\xb3\xaa\xa9! \x03(\x0b\x32\'.google.cloud.compute.v1.NetworkPeering\x12N\n\x0erouting_config\x18\xdb\xa9\xd3\xf9\x01 \x01(\x0b\x32-.google.cloud.compute.v1.NetworkRoutingConfigH\x0f\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x10\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x11\x88\x01\x01\x12\x17\n\x0bsubnetworks\x18\xc5\xd4\xa5\xc6\x01 \x03(\t\"\xa0\x01\n%NetworkFirewallPolicyEnforcementOrder\x12\x37\n3UNDEFINED_NETWORK_FIREWALL_POLICY_ENFORCEMENT_ORDER\x10\x00\x12\x1d\n\x16\x41\x46TER_CLASSIC_FIREWALL\x10\xd0\xfc\xdaI\x12\x1f\n\x17\x42\x45\x46ORE_CLASSIC_FIREWALL\x10\xed\xed\xb1\xa1\x01\x42\x0e\n\x0c_I_pv4_rangeB\x1a\n\x18_auto_create_subnetworksB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x1b\n\x19_enable_ula_internal_ipv6B\x12\n\x10_firewall_policyB\x10\n\x0e_gateway_i_pv4B\x05\n\x03_idB\x16\n\x14_internal_ipv6_rangeB\x07\n\x05_kindB\x06\n\x04_mtuB\x07\n\x05_nameB,\n*_network_firewall_policy_enforcement_orderB\x12\n\x10_network_profileB\t\n\x07_paramsB\x11\n\x0f_routing_configB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_id\"\xa7\x06\n\x11NetworkAttachment\x12]\n\x14\x63onnection_endpoints\x18\xdd\xa2\xbe\x9b\x01 \x03(\x0b\x32;.google.cloud.compute.v1.NetworkAttachmentConnectedEndpoint\x12&\n\x15\x63onnection_preference\x18\xdc\xf9\xa4\x88\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x07\x88\x01\x01\x12 \n\x15producer_accept_lists\x18\xab\x9a\xda` \x03(\t\x12 \n\x15producer_reject_lists\x18\x82\xfd\xfa\x01 \x03(\t\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\n\x88\x01\x01\x12\x17\n\x0bsubnetworks\x18\xc5\xd4\xa5\xc6\x01 \x03(\t\"|\n\x14\x43onnectionPreference\x12#\n\x1fUNDEFINED_CONNECTION_PREFERENCE\x10\x00\x12\x17\n\x10\x41\x43\x43\x45PT_AUTOMATIC\x10\x94\xf7\xf0#\x12\x15\n\rACCEPT_MANUAL\x10\xdd\xed\xf1\xb1\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x42\x18\n\x16_connection_preferenceB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_regionB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_id\"\xbb\x03\n\x1fNetworkAttachmentAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12U\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x43.google.cloud.compute.v1.NetworkAttachmentAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x63\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x44\n\x05value\x18\x02 \x01(\x0b\x32\x35.google.cloud.compute.v1.NetworkAttachmentsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x87\x04\n\"NetworkAttachmentConnectedEndpoint\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0cipv6_address\x18\x9c\xb3\xef\xa2\x01 \x01(\tH\x01\x88\x01\x01\x12\"\n\x11project_id_or_num\x18\xa8\x8a\xe5\xa6\x01 \x01(\tH\x02\x88\x01\x01\x12#\n\x18secondary_ip_cidr_ranges\x18\x94\xb2\xf0\x37 \x03(\t\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x03\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\x04\x88\x01\x01\x12&\n\x15subnetwork_cidr_range\x18\xa3\xdb\xdf\xb6\x01 \x01(\tH\x05\x88\x01\x01\"\x94\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0f\n\x08\x41\x43\x43\x45PTED\x10\xa7\x9f\xd2u\x12\x0e\n\x06\x43LOSED\x10\xec\xaa\xa3\xb5\x01\x12\x17\n\x0fNEEDS_ATTENTION\x10\xbc\x8b\xa2\xa4\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x0f\n\x08REJECTED\x10\xfe\x88\x84S\x12\x19\n\x12STATUS_UNSPECIFIED\x10\xca\xcc\x8b\x14\x42\r\n\x0b_ip_addressB\x0f\n\r_ipv6_addressB\x14\n\x12_project_id_or_numB\t\n\x07_statusB\r\n\x0b_subnetworkB\x18\n\x16_subnetwork_cidr_range\"\xb3\x02\n\x15NetworkAttachmentList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12<\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32*.google.cloud.compute.v1.NetworkAttachment\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb2\x01\n\x1cNetworkAttachmentsScopedList\x12K\n\x13network_attachments\x18\x9f\xde\xd6\xf8\x01 \x03(\x0b\x32*.google.cloud.compute.v1.NetworkAttachment\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xc4\x03\n\x1aNetworkEdgeSecurityService\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x06\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\t\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x12\n\x10_security_policyB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_id\"\x8e\x04\n(NetworkEdgeSecurityServiceAggregatedList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12^\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32L.google.cloud.compute.v1.NetworkEdgeSecurityServiceAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x1al\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12M\n\x05value\x18\x02 \x01(\x0b\x32>.google.cloud.compute.v1.NetworkEdgeSecurityServicesScopedList:\x02\x38\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xce\x01\n%NetworkEdgeSecurityServicesScopedList\x12^\n\x1enetwork_edge_security_services\x18\xac\xcb\xf8\x10 \x03(\x0b\x32\x33.google.cloud.compute.v1.NetworkEdgeSecurityService\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x9e\x03\n\x0fNetworkEndpoint\x12Q\n\x0b\x61nnotations\x18\xa4\xf6\xb5\x35 \x03(\x0b\x32\x39.google.cloud.compute.v1.NetworkEndpoint.AnnotationsEntry\x12\'\n\x17\x63lient_destination_port\x18\x86\x88\x82; \x01(\x05H\x00\x88\x01\x01\x12\x14\n\x04\x66qdn\x18\x95\xa5\xc0\x01 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x02\x88\x01\x01\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x03\x88\x01\x01\x12\x1d\n\x0cipv6_address\x18\x9c\xb3\xef\xa2\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x05\x88\x01\x01\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x1a\n\x18_client_destination_portB\x07\n\x05_fqdnB\x0b\n\t_instanceB\r\n\x0b_ip_addressB\x0f\n\r_ipv6_addressB\x07\n\x05_port\"\x89\x0b\n\x14NetworkEndpointGroup\x12V\n\x0b\x61nnotations\x18\xa4\xf6\xb5\x35 \x03(\x0b\x32>.google.cloud.compute.v1.NetworkEndpointGroup.AnnotationsEntry\x12S\n\napp_engine\x18\xa0\x8c\xc0\xa2\x01 \x01(\x0b\x32\x36.google.cloud.compute.v1.NetworkEndpointGroupAppEngineH\x00\x88\x01\x01\x12[\n\x0e\x63loud_function\x18\xa2\xe5\xf3\xf7\x01 \x01(\x0b\x32:.google.cloud.compute.v1.NetworkEndpointGroupCloudFunctionH\x01\x88\x01\x01\x12P\n\tcloud_run\x18\x81\xcb\xfa\x34 \x01(\x0b\x32\x35.google.cloud.compute.v1.NetworkEndpointGroupCloudRunH\x02\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x03\x88\x01\x01\x12\x1d\n\x0c\x64\x65\x66\x61ult_port\x18\xbf\xf7\xf0\xc9\x01 \x01(\x05H\x04\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x05\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\t\x88\x01\x01\x12%\n\x15network_endpoint_type\x18\xd3\xc6\xb4\x38 \x01(\tH\n\x88\x01\x01\x12N\n\x08psc_data\x18\xc9\xdb\xa6\" \x01(\x0b\x32\x34.google.cloud.compute.v1.NetworkEndpointGroupPscDataH\x0b\x88\x01\x01\x12#\n\x12psc_target_service\x18\xe6\xc2\xaa\x80\x01 \x01(\tH\x0c\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\r\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0e\x88\x01\x01\x12\x14\n\x04size\x18\x81\xc0\xd7\x01 \x01(\x05H\x0f\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\x10\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x11\x88\x01\x01\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8a\x02\n\x13NetworkEndpointType\x12#\n\x1fUNDEFINED_NETWORK_ENDPOINT_TYPE\x10\x00\x12\x11\n\tGCE_VM_IP\x10\xd9\xed\xd0\xbf\x01\x12\x16\n\x0eGCE_VM_IP_PORT\x10\xa7\xe4\xa5\xef\x01\x12\x18\n\x11GCE_VM_IP_PORTMAP\x10\xb5\xe3\xf0\n\x12\x1a\n\x12INTERNET_FQDN_PORT\x10\xed\xd0\xdb\xc0\x01\x12\x18\n\x10INTERNET_IP_PORT\x10\x9b\xdb\xe5\xe3\x01\x12\x1f\n\x17NON_GCP_PRIVATE_IP_PORT\x10\xe0\x93\xb7\xa0\x01\x12\x1e\n\x17PRIVATE_SERVICE_CONNECT\x10\xc4\xf4\xf9\x16\x12\x12\n\nSERVERLESS\x10\xdc\xc6\xfd\x80\x01\x42\r\n\x0b_app_engineB\x11\n\x0f_cloud_functionB\x0c\n\n_cloud_runB\x15\n\x13_creation_timestampB\x0f\n\r_default_portB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_networkB\x18\n\x16_network_endpoint_typeB\x0b\n\t_psc_dataB\x15\n\x13_psc_target_serviceB\t\n\x07_regionB\x0c\n\n_self_linkB\x07\n\x05_sizeB\r\n\x0b_subnetworkB\x07\n\x05_zone\"\xdd\x03\n\"NetworkEndpointGroupAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12X\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x46.google.cloud.compute.v1.NetworkEndpointGroupAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x66\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12G\n\x05value\x18\x02 \x01(\x0b\x32\x38.google.cloud.compute.v1.NetworkEndpointGroupsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x92\x01\n\x1dNetworkEndpointGroupAppEngine\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08url_mask\x18\xbc\x8f\xa4\x31 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x07version\x18\xd8\xb9\xd4\xa7\x01 \x01(\tH\x02\x88\x01\x01\x42\n\n\x08_serviceB\x0b\n\t_url_maskB\n\n\x08_version\"r\n!NetworkEndpointGroupCloudFunction\x12\x19\n\x08\x66unction\x18\xd8\xe7\xbd\x92\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08url_mask\x18\xbc\x8f\xa4\x31 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_functionB\x0b\n\t_url_mask\"\x87\x01\n\x1cNetworkEndpointGroupCloudRun\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03tag\x18\x9a\xff\x06 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x08url_mask\x18\xbc\x8f\xa4\x31 \x01(\tH\x02\x88\x01\x01\x42\n\n\x08_serviceB\x06\n\x04_tagB\x0b\n\t_url_mask\"\xb9\x02\n\x18NetworkEndpointGroupList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.NetworkEndpointGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbd\x03\n\x1bNetworkEndpointGroupPscData\x12%\n\x14\x63onsumer_psc_address\x18\xac\xad\xeb\xd7\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\rproducer_port\x18\x8e\xda\xc1\xc3\x01 \x01(\x05H\x01\x88\x01\x01\x12\"\n\x11psc_connection_id\x18\xdd\xa5\xa3\x8b\x01 \x01(\x04H\x02\x88\x01\x01\x12%\n\x15psc_connection_status\x18\xb4\xc9\xe7W \x01(\tH\x03\x88\x01\x01\"\xb0\x01\n\x13PscConnectionStatus\x12#\n\x1fUNDEFINED_PSC_CONNECTION_STATUS\x10\x00\x12\x0f\n\x08\x41\x43\x43\x45PTED\x10\xa7\x9f\xd2u\x12\x0e\n\x06\x43LOSED\x10\xec\xaa\xa3\xb5\x01\x12\x17\n\x0fNEEDS_ATTENTION\x10\xbc\x8b\xa2\xa4\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x0f\n\x08REJECTED\x10\xfe\x88\x84S\x12\x19\n\x12STATUS_UNSPECIFIED\x10\xca\xcc\x8b\x14\x42\x17\n\x15_consumer_psc_addressB\x10\n\x0e_producer_portB\x14\n\x12_psc_connection_idB\x18\n\x16_psc_connection_status\"u\n+NetworkEndpointGroupsAttachEndpointsRequest\x12\x46\n\x11network_endpoints\x18\xad\x91\xbaG \x03(\x0b\x32(.google.cloud.compute.v1.NetworkEndpoint\"u\n+NetworkEndpointGroupsDetachEndpointsRequest\x12\x46\n\x11network_endpoints\x18\xad\x91\xbaG \x03(\x0b\x32(.google.cloud.compute.v1.NetworkEndpoint\"\xa4\x01\n)NetworkEndpointGroupsListEndpointsRequest\x12\x1e\n\rhealth_status\x18\xb5\xd6\xba\xb5\x01 \x01(\tH\x00\x88\x01\x01\"E\n\x0cHealthStatus\x12\x1b\n\x17UNDEFINED_HEALTH_STATUS\x10\x00\x12\x0b\n\x04SHOW\x10\xfd\xa5\x9b\x01\x12\x0b\n\x04SKIP\x10\xff\xba\x9b\x01\x42\x10\n\x0e_health_status\"\xab\x02\n)NetworkEndpointGroupsListNetworkEndpoints\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12J\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x38.google.cloud.compute.v1.NetworkEndpointWithHealthStatus\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x03\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\n\n\x08_warning\"\xbb\x01\n\x1fNetworkEndpointGroupsScopedList\x12Q\n\x17network_endpoint_groups\x18\xad\x97\xff\r \x03(\x0b\x32-.google.cloud.compute.v1.NetworkEndpointGroup\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xcf\x01\n\x1fNetworkEndpointWithHealthStatus\x12K\n\x07healths\x18\x97\x93\xad{ \x03(\x0b\x32\x37.google.cloud.compute.v1.HealthStatusForNetworkEndpoint\x12J\n\x10network_endpoint\x18\x86\x91\x8a\x1b \x01(\x0b\x32(.google.cloud.compute.v1.NetworkEndpointH\x00\x88\x01\x01\x42\x13\n\x11_network_endpoint\"\xda\x03\n#NetworkFirewallPolicyAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12Y\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32G.google.cloud.compute.v1.NetworkFirewallPolicyAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.FirewallPoliciesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xd9\x0b\n\x10NetworkInterface\x12@\n\x0e\x61\x63\x63\x65ss_configs\x18\x96\xbb\xfa\x34 \x03(\x0b\x32%.google.cloud.compute.v1.AccessConfig\x12\x41\n\x0f\x61lias_ip_ranges\x18\xbf\x83\xdcN \x03(\x0b\x32%.google.cloud.compute.v1.AliasIpRange\x12&\n\x15\x65nable_vpc_scoped_dns\x18\xcc\xf8\x92\x87\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x01\x88\x01\x01\x12\x1a\n\nigmp_query\x18\xca\xa4\xb6\x0e \x01(\tH\x02\x88\x01\x01\x12+\n\x1binternal_ipv6_prefix_length\x18\x9d\x83\x99\x61 \x01(\x05H\x03\x88\x01\x01\x12\x46\n\x13ipv6_access_configs\x18\xee\xe5\xc4\xe6\x01 \x03(\x0b\x32%.google.cloud.compute.v1.AccessConfig\x12!\n\x10ipv6_access_type\x18\xdd\xf5\xd1\xf0\x01 \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x0cipv6_address\x18\x9c\xb3\xef\xa2\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x08\x88\x01\x01\x12\"\n\x12network_attachment\x18\xd4\x97\x8fk \x01(\tH\t\x88\x01\x01\x12\x1b\n\x0bnetwork_i_p\x18\x89\xb1\xe5\x62 \x01(\tH\n\x88\x01\x01\x12\x18\n\x08nic_type\x18\x91\xc6\xc2\x1c \x01(\tH\x0b\x88\x01\x01\x12 \n\x0fparent_nic_name\x18\xd7\xac\xd7\xc7\x01 \x01(\tH\x0c\x88\x01\x01\x12\x1c\n\x0bqueue_count\x18\xe1\xf8\x97\xf0\x01 \x01(\x05H\r\x88\x01\x01\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH\x0e\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\x0f\x88\x01\x01\x12\x14\n\x04vlan\x18\xe3\x8a\xdd\x01 \x01(\x05H\x10\x88\x01\x01\"X\n\tIgmpQuery\x12\x18\n\x14UNDEFINED_IGMP_QUERY\x10\x00\x12\x1a\n\x13IGMP_QUERY_DISABLED\x10\xf1\xb1\xbe\r\x12\x15\n\rIGMP_QUERY_V2\x10\xd1\xe9\x82\x9f\x01\"y\n\x0eIpv6AccessType\x12\x1e\n\x1aUNDEFINED_IPV6_ACCESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\x12$\n\x1cUNSPECIFIED_IPV6_ACCESS_TYPE\x10\xa5\xf6\xa4\x95\x01\"\x89\x01\n\x07NicType\x12\x16\n\x12UNDEFINED_NIC_TYPE\x10\x00\x12\x0c\n\x05GVNIC\x10\x99\x95\xc3 \x12\x0b\n\x04IDPF\x10\xd1\xf0\x88\x01\x12\x0c\n\x05IRDMA\x10\x8f\x86\xac!\x12\x0c\n\x05MRDMA\x10\x93\xc2\x8d#\x12\x1b\n\x14UNSPECIFIED_NIC_TYPE\x10\xd9\xbe\x92 \x12\x12\n\nVIRTIO_NET\x10\xd9\xb6\xcb\xd7\x01\"{\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\x12\x10\n\tIPV6_ONLY\x10\xe4\xad\xfc%\x12\x1e\n\x16UNSPECIFIED_STACK_TYPE\x10\xd9\xd1\x91\x8e\x01\x42\x18\n\x16_enable_vpc_scoped_dnsB\x0e\n\x0c_fingerprintB\r\n\x0b_igmp_queryB\x1e\n\x1c_internal_ipv6_prefix_lengthB\x13\n\x11_ipv6_access_typeB\x0f\n\r_ipv6_addressB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_networkB\x15\n\x13_network_attachmentB\x0e\n\x0c_network_i_pB\x0b\n\t_nic_typeB\x12\n\x10_parent_nic_nameB\x0e\n\x0c_queue_countB\r\n\x0b_stack_typeB\r\n\x0b_subnetworkB\x07\n\x05_vlan\"\x9f\x02\n\x0bNetworkList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x32\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32 .google.cloud.compute.v1.Network\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xaf\x01\n\rNetworkParams\x12\x62\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32?.google.cloud.compute.v1.NetworkParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xce\x08\n\x0eNetworkPeering\x12\"\n\x12\x61uto_create_routes\x18\xdd\xe2\xb2\x1b \x01(\x08H\x00\x88\x01\x01\x12[\n\x11\x63onnection_status\x18\xf3\xf0\xd1\xfa\x01 \x01(\x0b\x32\x37.google.cloud.compute.v1.NetworkPeeringConnectionStatusH\x01\x88\x01\x01\x12&\n\x16\x65xchange_subnet_routes\x18\xd0\xca\xc6\x0c \x01(\x08H\x02\x88\x01\x01\x12$\n\x14\x65xport_custom_routes\x18\x8d\xa5\xdf\x1c \x01(\x08H\x03\x88\x01\x01\x12\x33\n#export_subnet_routes_with_public_ip\x18\xe2\xea\xd9. \x01(\x08H\x04\x88\x01\x01\x12$\n\x14import_custom_routes\x18\xbe\xf1\xb3^ \x01(\x08H\x05\x88\x01\x01\x12\x33\n#import_subnet_routes_with_public_ip\x18\x91\x8e\xf0\x06 \x01(\x08H\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x08\x88\x01\x01\x12\x18\n\x08peer_mtu\x18\xd1\x8e\x97! \x01(\x05H\t\x88\x01\x01\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH\n\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x0b\x88\x01\x01\x12\x1d\n\rstate_details\x18\x94\xf9\xc8- \x01(\tH\x0c\x88\x01\x01\x12\x1f\n\x0fupdate_strategy\x18\xa9\xdc\xf5\x02 \x01(\tH\r\x88\x01\x01\"I\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\">\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08INACTIVE\x10\xeb\x98\xf9\x80\x01\"j\n\x0eUpdateStrategy\x12\x1d\n\x19UNDEFINED_UPDATE_STRATEGY\x10\x00\x12\x10\n\tCONSENSUS\x10\xd7\xf8\xfc`\x12\x12\n\x0bINDEPENDENT\x10\xda\x96\xc8<\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x15\n\x13_auto_create_routesB\x14\n\x12_connection_statusB\x19\n\x17_exchange_subnet_routesB\x17\n\x15_export_custom_routesB&\n$_export_subnet_routes_with_public_ipB\x17\n\x15_import_custom_routesB&\n$_import_subnet_routes_with_public_ipB\x07\n\x05_nameB\n\n\x08_networkB\x0b\n\t_peer_mtuB\r\n\x0b_stack_typeB\x08\n\x06_stateB\x10\n\x0e_state_detailsB\x12\n\x10_update_strategy\"\xcc\x03\n\x1eNetworkPeeringConnectionStatus\x12g\n\x0f\x63onsensus_state\x18\xc9\xbd\x8b\xb5\x01 \x01(\x0b\x32\x45.google.cloud.compute.v1.NetworkPeeringConnectionStatusConsensusStateH\x00\x88\x01\x01\x12r\n\x15traffic_configuration\x18\xb4\xd4\xb6? \x01(\x0b\x32K.google.cloud.compute.v1.NetworkPeeringConnectionStatusTrafficConfigurationH\x01\x88\x01\x01\x12\x1f\n\x0fupdate_strategy\x18\xa9\xdc\xf5\x02 \x01(\tH\x02\x88\x01\x01\"j\n\x0eUpdateStrategy\x12\x1d\n\x19UNDEFINED_UPDATE_STRATEGY\x10\x00\x12\x10\n\tCONSENSUS\x10\xd7\xf8\xfc`\x12\x12\n\x0bINDEPENDENT\x10\xda\x96\xc8<\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x12\n\x10_consensus_stateB\x18\n\x16_traffic_configurationB\x12\n\x10_update_strategy\"\xe6\x03\n,NetworkPeeringConnectionStatusConsensusState\x12\x1e\n\rdelete_status\x18\x86\xc2\xc2\xe6\x01 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\rupdate_status\x18\xa8\xa0\xeb~ \x01(\tH\x01\x88\x01\x01\"\xa8\x01\n\x0c\x44\x65leteStatus\x12\x1b\n\x17UNDEFINED_DELETE_STATUS\x10\x00\x12\x1b\n\x13\x44\x45LETE_ACKNOWLEDGED\x10\xdc\xae\x8e\x9b\x01\x12!\n\x19\x44\x45LETE_STATUS_UNSPECIFIED\x10\xde\x8a\xc5\xbc\x01\x12\x1d\n\x16LOCAL_DELETE_REQUESTED\x10\xae\xb8\xb3l\x12\x1c\n\x15PEER_DELETE_REQUESTED\x10\xf7\xd5\xab^\"\xa7\x01\n\x0cUpdateStatus\x12\x1b\n\x17UNDEFINED_UPDATE_STATUS\x10\x00\x12\x0e\n\x07IN_SYNC\x10\xf5\xe2\x8a\x01\x12\"\n\x1bPENDING_LOCAL_ACKNOWLEDMENT\x10\xc0\xcd\xd1m\x12$\n\x1cPENDING_PEER_ACKNOWLEDGEMENT\x10\xc5\x8d\xae\xc8\x01\x12 \n\x19UPDATE_STATUS_UNSPECIFIED\x10\x80\xa3\xcf\x39\x42\x10\n\x0e_delete_statusB\x10\n\x0e_update_status\"\xad\x04\n2NetworkPeeringConnectionStatusTrafficConfiguration\x12-\n\x1c\x65xport_custom_routes_to_peer\x18\xf4\x99\xca\x88\x01 \x01(\x08H\x00\x88\x01\x01\x12;\n+export_subnet_routes_with_public_ip_to_peer\x18\xc9\x95\xfe\x03 \x01(\x08H\x01\x88\x01\x01\x12/\n\x1eimport_custom_routes_from_peer\x18\x96\xd5\x87\xbe\x01 \x01(\x08H\x02\x88\x01\x01\x12=\n-import_subnet_routes_with_public_ip_from_peer\x18\xa9\xda\xf5o \x01(\x08H\x03\x88\x01\x01\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH\x04\x88\x01\x01\"I\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\nB\x1f\n\x1d_export_custom_routes_to_peerB.\n,_export_subnet_routes_with_public_ip_to_peerB!\n\x1f_import_custom_routes_from_peerB0\n._import_subnet_routes_with_public_ip_from_peerB\r\n\x0b_stack_type\"\xce\x01\n\x18NetworkPerformanceConfig\x12+\n\x1btotal_egress_bandwidth_tier\x18\xff\x9f\x85> \x01(\tH\x00\x88\x01\x01\"e\n\x18TotalEgressBandwidthTier\x12)\n%UNDEFINED_TOTAL_EGRESS_BANDWIDTH_TIER\x10\x00\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\x12\x0e\n\x06TIER_1\x10\x94\xca\xf1\x9b\x01\x42\x1e\n\x1c_total_egress_bandwidth_tier\"\xed\x04\n\x0eNetworkProfile\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12P\n\x08\x66\x65\x61tures\x18\xbd\xc8\xb3u \x01(\x0b\x32\x36.google.cloud.compute.v1.NetworkProfileNetworkFeaturesH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12J\n\x08location\x18\xb5\xbf\xbe\x8a\x01 \x01(\x0b\x32/.google.cloud.compute.v1.NetworkProfileLocationH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12P\n\x0cprofile_type\x18\x90\xc0\xcdG \x01(\x0b\x32\x32.google.cloud.compute.v1.NetworkProfileProfileTypeH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\n\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0b\n\t_featuresB\x05\n\x03_idB\x07\n\x05_kindB\x0b\n\t_locationB\x07\n\x05_nameB\x0f\n\r_profile_typeB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x07\n\x05_zone\"\x92\x01\n\x16NetworkProfileLocation\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05scope\x18\xd4\xfc\x8c\x34 \x01(\tH\x01\x88\x01\x01\"8\n\x05Scope\x12\x13\n\x0fUNDEFINED_SCOPE\x10\x00\x12\r\n\x06REGION\x10\xf4\xb5\xec~\x12\x0b\n\x04ZONE\x10\xac\xb7\xa8\x01\x42\x07\n\x05_nameB\x08\n\x06_scope\"\xb9\x36\n\x1dNetworkProfileNetworkFeatures\x12\x1c\n\x10\x61\x64\x64ress_purposes\x18\x80\xde\xbd\xce\x01 \x03(\t\x12\'\n\x16\x61llow_address_creation\x18\x80\xa2\x83\xd7\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x15\x61llow_alias_ip_ranges\x18\xc9\x91\xb1\xda\x01 \x01(\tH\x01\x88\x01\x01\x12&\n\x16\x61llow_auto_mode_subnet\x18\x9f\x82\xc9H \x01(\tH\x02\x88\x01\x01\x12\'\n\x17\x61llow_class_d_firewalls\x18\x9b\xe3\xe0> \x01(\tH\x03\x88\x01\x01\x12\x1f\n\x0f\x61llow_cloud_nat\x18\xa1\xd5\xc1y \x01(\tH\x04\x88\x01\x01\x12#\n\x12\x61llow_cloud_router\x18\xc9\xcb\x8d\xd7\x01 \x01(\tH\x05\x88\x01\x01\x12,\n\x1c\x61llow_default_nic_attachment\x18\xae\xee\xda\x19 \x01(\tH\x06\x88\x01\x01\x12(\n\x18\x61llow_external_ip_access\x18\xbe\xb9\xdc> \x01(\tH\x07\x88\x01\x01\x12%\n\x15\x61llow_firewall_policy\x18\xdb\x98\x9by \x01(\tH\x08\x88\x01\x01\x12#\n\x12\x61llow_interconnect\x18\xc4\x93\xe1\x85\x01 \x01(\tH\t\x88\x01\x01\x12$\n\x13\x61llow_ip_forwarding\x18\x9f\xdd\xe8\xee\x01 \x01(\tH\n\x88\x01\x01\x12$\n\x14\x61llow_load_balancing\x18\xb6\x98\xc1j \x01(\tH\x0b\x88\x01\x01\x12/\n\x1f\x61llow_multi_nic_in_same_network\x18\xfc\xb4\x8a* \x01(\tH\x0c\x88\x01\x01\x12\x33\n\"allow_multi_nic_in_same_subnetwork\x18\xe0\x91\xcd\x84\x01 \x01(\tH\r\x88\x01\x01\x12\x1f\n\x0f\x61llow_multicast\x18\x82\xc5\x9f\x05 \x01(\tH\x0e\x88\x01\x01\x12\x1a\n\tallow_ncc\x18\xd8\xde\xc6\xb1\x01 \x01(\tH\x0f\x88\x01\x01\x12\'\n\x17\x61llow_network_migration\x18\x87\xa7\x9fr \x01(\tH\x10\x88\x01\x01\x12\'\n\x16\x61llow_packet_mirroring\x18\x82\xee\x9f\xf4\x01 \x01(\tH\x11\x88\x01\x01\x12,\n\x1b\x61llow_private_google_access\x18\xf8\xff\xd5\xb2\x01 \x01(\tH\x12\x88\x01\x01\x12\x1a\n\tallow_psc\x18\xca\xf1\xc6\xb1\x01 \x01(\tH\x13\x88\x01\x01\x12*\n\x1a\x61llow_same_network_unicast\x18\xfb\xa8\xf1O \x01(\tH\x14\x88\x01\x01\x12#\n\x13\x61llow_static_routes\x18\xc5\x9f\xabX \x01(\tH\x15\x88\x01\x01\x12$\n\x14\x61llow_sub_interfaces\x18\xef\xb2\xf0u \x01(\tH\x16\x88\x01\x01\x12*\n\x19\x61llow_subnetwork_creation\x18\x9a\x94\x83\xdb\x01 \x01(\tH\x17\x88\x01\x01\x12)\n\x18\x61llow_vpc_firewall_rules\x18\xc4\xc7\xdf\xf2\x01 \x01(\tH\x18\x88\x01\x01\x12!\n\x11\x61llow_vpc_peering\x18\xf4\xcb\x83\x37 \x01(\tH\x19\x88\x01\x01\x12\x1a\n\tallow_vpn\x18\xfe\x9d\xc7\xb1\x01 \x01(\tH\x1a\x88\x01\x01\x12!\n\x15\x66irewall_policy_types\x18\x8b\x80\xa9\xba\x01 \x03(\t\x12\x1a\n\x0finterface_types\x18\xf3\xb3\xaaK \x03(\t\x12\x1a\n\tmulticast\x18\xf8\x97\xd8\xc0\x01 \x01(\tH\x1b\x88\x01\x01\x12\x37\n&predefined_network_internal_ipv6_range\x18\xdd\x82\xd7\xfb\x01 \x01(\tH\x1c\x88\x01\x01\x12y\n\x1cpredefined_subnetwork_ranges\x18\xce\xc4\xf3\xc2\x01 \x03(\x0b\x32O.google.cloud.compute.v1.NetworkProfileNetworkFeaturesPredefinedSubnetworkRange\x12\x1b\n\x0fsubnet_purposes\x18\xb7\x9b\xd8\x8f\x01 \x03(\t\x12\x1e\n\x12subnet_stack_types\x18\xa0\xec\xb7\xf8\x01 \x03(\t\x12\x1f\n\x13subnetwork_purposes\x18\xc6\xa0\xf1\xfb\x01 \x03(\t\x12\"\n\x16subnetwork_stack_types\x18\xb1\xea\xa5\xd0\x01 \x03(\t\x12\x17\n\x07unicast\x18\xaf\x90\x91w \x01(\tH\x1d\x88\x01\x01\"\xf3\x01\n\x0f\x41\x64\x64ressPurposes\x12\x1e\n\x1aUNDEFINED_ADDRESS_PURPOSES\x10\x00\x12\x14\n\x0c\x44NS_RESOLVER\x10\xfc\xdc\x83\xe3\x01\x12\x13\n\x0cGCE_ENDPOINT\x10\xab\xc4\xf5m\x12\x1a\n\x12IPSEC_INTERCONNECT\x10\x83\xd2\xaa\xa2\x01\x12\x0f\n\x08NAT_AUTO\x10\xad\xb4\x85N\x12\x1e\n\x17PRIVATE_SERVICE_CONNECT\x10\xc4\xf4\xf9\x16\x12\x12\n\nSERVERLESS\x10\xdc\xc6\xfd\x80\x01\x12\x1f\n\x17SHARED_LOADBALANCER_VIP\x10\xd4\xd3\xb3\x8c\x01\x12\x13\n\x0bVPC_PEERING\x10\xaa\xf3\x8e\xbf\x01\"\x7f\n\x14\x41llowAddressCreation\x12$\n UNDEFINED_ALLOW_ADDRESS_CREATION\x10\x00\x12\x1f\n\x18\x41\x44\x44RESS_CREATION_ALLOWED\x10\xb3\xc2\xdeV\x12 \n\x18\x41\x44\x44RESS_CREATION_BLOCKED\x10\xf7\x82\x8a\xff\x01\"{\n\x12\x41llowAliasIpRanges\x12#\n\x1fUNDEFINED_ALLOW_ALIAS_IP_RANGES\x10\x00\x12\x1f\n\x17\x41LIAS_IP_RANGES_ALLOWED\x10\xe8\x9d\xd5\xdd\x01\x12\x1f\n\x17\x41LIAS_IP_RANGES_BLOCKED\x10\xac\xde\x80\x86\x01\"~\n\x13\x41llowAutoModeSubnet\x12$\n UNDEFINED_ALLOW_AUTO_MODE_SUBNET\x10\x00\x12 \n\x18\x41UTO_MODE_SUBNET_ALLOWED\x10\xb2\xac\xbb\xba\x01\x12\x1f\n\x18\x41UTO_MODE_SUBNET_BLOCKED\x10\xf6\xec\xe6\x62\"\x82\x01\n\x14\x41llowClassDFirewalls\x12%\n!UNDEFINED_ALLOW_CLASS_D_FIREWALLS\x10\x00\x12!\n\x19\x43LASS_D_FIREWALLS_ALLOWED\x10\xfa\xcf\x85\xa6\x01\x12 \n\x19\x43LASS_D_FIREWALLS_BLOCKED\x10\xbe\x90\xb1N\"b\n\rAllowCloudNat\x12\x1d\n\x19UNDEFINED_ALLOW_CLOUD_NAT\x10\x00\x12\x18\n\x11\x43LOUD_NAT_ALLOWED\x10\xa0\xba\xa2u\x12\x18\n\x11\x43LOUD_NAT_BLOCKED\x10\xe4\xfa\xcd\x1d\"o\n\x10\x41llowCloudRouter\x12 \n\x1cUNDEFINED_ALLOW_CLOUD_ROUTER\x10\x00\x12\x1c\n\x14\x43LOUD_ROUTER_ALLOWED\x10\xfc\xc3\x9d\xae\x01\x12\x1b\n\x14\x43LOUD_ROUTER_BLOCKED\x10\xc0\x84\xc9V\"\x96\x01\n\x19\x41llowDefaultNicAttachment\x12*\n&UNDEFINED_ALLOW_DEFAULT_NIC_ATTACHMENT\x10\x00\x12%\n\x1e\x44\x45\x46\x41ULT_NIC_ATTACHMENT_ALLOWED\x10\x81\x9c\xc2\x05\x12&\n\x1e\x44\x45\x46\x41ULT_NIC_ATTACHMENT_BLOCKED\x10\xc5\xdc\xed\xad\x01\"\x86\x01\n\x15\x41llowExternalIpAccess\x12&\n\"UNDEFINED_ALLOW_EXTERNAL_IP_ACCESS\x10\x00\x12!\n\x1a\x45XTERNAL_IP_ACCESS_ALLOWED\x10\xd1\x98\x9d\x34\x12\"\n\x1a\x45XTERNAL_IP_ACCESS_BLOCKED\x10\x95\xd9\xc8\xdc\x01\"{\n\x13\x41llowFirewallPolicy\x12#\n\x1fUNDEFINED_ALLOW_FIREWALL_POLICY\x10\x00\x12\x1f\n\x17\x46IREWALL_POLICY_ALLOWED\x10\x9a\xb9\x9f\xb9\x01\x12\x1e\n\x17\x46IREWALL_POLICY_BLOCKED\x10\xde\xf9\xca\x61\"p\n\x11\x41llowInterconnect\x12 \n\x1cUNDEFINED_ALLOW_INTERCONNECT\x10\x00\x12\x1b\n\x14INTERCONNECT_ALLOWED\x10\xd7\xa5\xd3M\x12\x1c\n\x14INTERCONNECT_BLOCKED\x10\x9b\xe6\xfe\xf5\x01\"s\n\x11\x41llowIpForwarding\x12!\n\x1dUNDEFINED_ALLOW_IP_FORWARDING\x10\x00\x12\x1c\n\x15IP_FORWARDING_ALLOWED\x10\xde\xd8\xe1H\x12\x1d\n\x15IP_FORWARDING_BLOCKED\x10\xa2\x99\x8d\xf1\x01\"w\n\x12\x41llowLoadBalancing\x12\"\n\x1eUNDEFINED_ALLOW_LOAD_BALANCING\x10\x00\x12\x1d\n\x16LOAD_BALANCING_ALLOWED\x10\xa9\xf1\xc5\r\x12\x1e\n\x16LOAD_BALANCING_BLOCKED\x10\xed\xb1\xf1\xb5\x01\"\xa1\x01\n\x1a\x41llowMultiNicInSameNetwork\x12-\n)UNDEFINED_ALLOW_MULTI_NIC_IN_SAME_NETWORK\x10\x00\x12)\n!MULTI_NIC_IN_SAME_NETWORK_ALLOWED\x10\xdb\xfb\x96\xda\x01\x12)\n!MULTI_NIC_IN_SAME_NETWORK_BLOCKED\x10\x9f\xbc\xc2\x82\x01\"\xac\x01\n\x1d\x41llowMultiNicInSameSubnetwork\x12\x30\n,UNDEFINED_ALLOW_MULTI_NIC_IN_SAME_SUBNETWORK\x10\x00\x12,\n$MULTI_NIC_IN_SAME_SUBNETWORK_ALLOWED\x10\xb3\xec\xac\x89\x01\x12+\n$MULTI_NIC_IN_SAME_SUBNETWORK_BLOCKED\x10\xf7\xac\xd8\x31\"d\n\x0e\x41llowMulticast\x12\x1d\n\x19UNDEFINED_ALLOW_MULTICAST\x10\x00\x12\x18\n\x11MULTICAST_ALLOWED\x10\xa1\xf0\xa7\x15\x12\x19\n\x11MULTICAST_BLOCKED\x10\xe5\xb0\xd3\xbd\x01\"M\n\x08\x41llowNcc\x12\x17\n\x13UNDEFINED_ALLOW_NCC\x10\x00\x12\x13\n\x0bNCC_ALLOWED\x10\xf7\xa6\xe5\xde\x01\x12\x13\n\x0bNCC_BLOCKED\x10\xbb\xe7\x90\x87\x01\"\x83\x01\n\x15\x41llowNetworkMigration\x12%\n!UNDEFINED_ALLOW_NETWORK_MIGRATION\x10\x00\x12 \n\x19NETWORK_MIGRATION_ALLOWED\x10\x86\xa4\xee\x06\x12!\n\x19NETWORK_MIGRATION_BLOCKED\x10\xca\xe4\x99\xaf\x01\"\x7f\n\x14\x41llowPacketMirroring\x12$\n UNDEFINED_ALLOW_PACKET_MIRRORING\x10\x00\x12\x1f\n\x18PACKET_MIRRORING_ALLOWED\x10\xf5\xd1\x88,\x12 \n\x18PACKET_MIRRORING_BLOCKED\x10\xb9\x92\xb4\xd4\x01\"\x91\x01\n\x18\x41llowPrivateGoogleAccess\x12)\n%UNDEFINED_ALLOW_PRIVATE_GOOGLE_ACCESS\x10\x00\x12$\n\x1dPRIVATE_GOOGLE_ACCESS_ALLOWED\x10\x97\xe5\xa3i\x12$\n\x1dPRIVATE_GOOGLE_ACCESS_BLOCKED\x10\xdb\xa5\xcf\x11\"L\n\x08\x41llowPsc\x12\x17\n\x13UNDEFINED_ALLOW_PSC\x10\x00\x12\x12\n\x0bPSC_ALLOWED\x10\xe9\x95\xe7Q\x12\x13\n\x0bPSC_BLOCKED\x10\xad\xd6\x92\xfa\x01\"\x8e\x01\n\x17\x41llowSameNetworkUnicast\x12(\n$UNDEFINED_ALLOW_SAME_NETWORK_UNICAST\x10\x00\x12#\n\x1cSAME_NETWORK_UNICAST_ALLOWED\x10\xce\xa8\x95L\x12$\n\x1cSAME_NETWORK_UNICAST_BLOCKED\x10\x92\xe9\xc0\xf4\x01\"s\n\x11\x41llowStaticRoutes\x12!\n\x1dUNDEFINED_ALLOW_STATIC_ROUTES\x10\x00\x12\x1d\n\x15STATIC_ROUTES_ALLOWED\x10\x84\xaf\x86\xc3\x01\x12\x1c\n\x15STATIC_ROUTES_BLOCKED\x10\xc8\xef\xb1k\"u\n\x12\x41llowSubInterfaces\x12\"\n\x1eUNDEFINED_ALLOW_SUB_INTERFACES\x10\x00\x12\x1c\n\x15SUBINTERFACES_ALLOWED\x10\xc3\xb5\xd5K\x12\x1d\n\x15SUBINTERFACES_BLOCKED\x10\x87\xf6\x80\xf4\x01\"\x8b\x01\n\x17\x41llowSubnetworkCreation\x12\'\n#UNDEFINED_ALLOW_SUBNETWORK_CREATION\x10\x00\x12\"\n\x1bSUBNETWORK_CREATION_ALLOWED\x10\xd9\x80\xcfK\x12#\n\x1bSUBNETWORK_CREATION_BLOCKED\x10\x9d\xc1\xfa\xf3\x01\"\x87\x01\n\x15\x41llowVpcFirewallRules\x12&\n\"UNDEFINED_ALLOW_VPC_FIREWALL_RULES\x10\x00\x12\"\n\x1aVPC_FIREWALL_RULES_ALLOWED\x10\xd7\xfa\xb9\xe9\x01\x12\"\n\x1aVPC_FIREWALL_RULES_BLOCKED\x10\x9b\xbb\xe5\x91\x01\"j\n\x0f\x41llowVpcPeering\x12\x1f\n\x1bUNDEFINED_ALLOW_VPC_PEERING\x10\x00\x12\x1a\n\x13VPC_PEERING_ALLOWED\x10\xf3\xc7\xd6|\x12\x1a\n\x13VPC_PEERING_BLOCKED\x10\xb7\x88\x82%\"L\n\x08\x41llowVpn\x12\x17\n\x13UNDEFINED_ALLOW_VPN\x10\x00\x12\x12\n\x0bVPN_ALLOWED\x10\x9d\xda\xa9M\x12\x13\n\x0bVPN_BLOCKED\x10\xe1\x9a\xd5\xf5\x01\"f\n\x13\x46irewallPolicyTypes\x12#\n\x1fUNDEFINED_FIREWALL_POLICY_TYPES\x10\x00\x12\x17\n\x10RDMA_ROCE_POLICY\x10\x99\xb5\xf7\x46\x12\x11\n\nVPC_POLICY\x10\xe8\x8a\xb8#\"\x97\x01\n\x0eInterfaceTypes\x12\x1d\n\x19UNDEFINED_INTERFACE_TYPES\x10\x00\x12\x0c\n\x05GVNIC\x10\x99\x95\xc3 \x12\x0b\n\x04IDPF\x10\xd1\xf0\x88\x01\x12\x0c\n\x05IRDMA\x10\x8f\x86\xac!\x12\x0c\n\x05MRDMA\x10\x93\xc2\x8d#\x12\x1b\n\x14UNSPECIFIED_NIC_TYPE\x10\xd9\xbe\x92 \x12\x12\n\nVIRTIO_NET\x10\xd9\xb6\xcb\xd7\x01\"R\n\tMulticast\x12\x17\n\x13UNDEFINED_MULTICAST\x10\x00\x12\x15\n\rMULTICAST_SDN\x10\xb6\xbe\xe3\xfd\x01\x12\x15\n\rMULTICAST_ULL\x10\xae\xcf\xe3\xfd\x01\"w\n\x0eSubnetPurposes\x12\x1d\n\x19UNDEFINED_SUBNET_PURPOSES\x10\x00\x12&\n\x1eSUBNET_PURPOSE_CUSTOM_HARDWARE\x10\xd3\xdd\x82\x87\x01\x12\x1e\n\x16SUBNET_PURPOSE_PRIVATE\x10\xc0\xec\xe8\xc0\x01\"\xa0\x01\n\x10SubnetStackTypes\x12 \n\x1cUNDEFINED_SUBNET_STACK_TYPES\x10\x00\x12\"\n\x1bSUBNET_STACK_TYPE_IPV4_IPV6\x10\x95\x97\xe2\x13\x12\"\n\x1bSUBNET_STACK_TYPE_IPV4_ONLY\x10\xba\xfa\xec\x13\x12\"\n\x1bSUBNET_STACK_TYPE_IPV6_ONLY\x10\xf8\xdc\x93/\"\xef\x01\n\x12SubnetworkPurposes\x12!\n\x1dUNDEFINED_SUBNETWORK_PURPOSES\x10\x00\x12\x1b\n\x14GLOBAL_MANAGED_PROXY\x10\xf2\xcb\xe0p\x12#\n\x1cINTERNAL_HTTPS_LOAD_BALANCER\x10\xd9\xb6\xcev\x12\x16\n\x0ePEER_MIGRATION\x10\x91\xaa\xc7\xea\x01\x12\x0f\n\x07PRIVATE\x10\xe3\xe2\xb2\xc0\x01\x12\x13\n\x0bPRIVATE_NAT\x10\xa5\xc8\xae\xaf\x01\x12\x17\n\x10PRIVATE_RFC_1918\x10\xdb\xfe\xc5y\x12\x1d\n\x16REGIONAL_MANAGED_PROXY\x10\xee\xb6\xfdH\"r\n\x14SubnetworkStackTypes\x12$\n UNDEFINED_SUBNETWORK_STACK_TYPES\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\x12\x10\n\tIPV6_ONLY\x10\xe4\xad\xfc%\"J\n\x07Unicast\x12\x15\n\x11UNDEFINED_UNICAST\x10\x00\x12\x13\n\x0bUNICAST_SDN\x10\xed\xc7\x96\xb5\x01\x12\x13\n\x0bUNICAST_ULL\x10\xe5\xd8\x96\xb5\x01\x42\x19\n\x17_allow_address_creationB\x18\n\x16_allow_alias_ip_rangesB\x19\n\x17_allow_auto_mode_subnetB\x1a\n\x18_allow_class_d_firewallsB\x12\n\x10_allow_cloud_natB\x15\n\x13_allow_cloud_routerB\x1f\n\x1d_allow_default_nic_attachmentB\x1b\n\x19_allow_external_ip_accessB\x18\n\x16_allow_firewall_policyB\x15\n\x13_allow_interconnectB\x16\n\x14_allow_ip_forwardingB\x17\n\x15_allow_load_balancingB\"\n _allow_multi_nic_in_same_networkB%\n#_allow_multi_nic_in_same_subnetworkB\x12\n\x10_allow_multicastB\x0c\n\n_allow_nccB\x1a\n\x18_allow_network_migrationB\x19\n\x17_allow_packet_mirroringB\x1e\n\x1c_allow_private_google_accessB\x0c\n\n_allow_pscB\x1d\n\x1b_allow_same_network_unicastB\x16\n\x14_allow_static_routesB\x17\n\x15_allow_sub_interfacesB\x1c\n\x1a_allow_subnetwork_creationB\x1b\n\x19_allow_vpc_firewall_rulesB\x14\n\x12_allow_vpc_peeringB\x0c\n\n_allow_vpnB\x0c\n\n_multicastB)\n\'_predefined_network_internal_ipv6_rangeB\n\n\x08_unicast\"\x90\x01\n6NetworkProfileNetworkFeaturesPredefinedSubnetworkRange\x12\x1a\n\nipv6_range\x18\xe5\x81\xef\x17 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bname_prefix\x18\xc6\xa5\xddp \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_ipv6_rangeB\x0e\n\x0c_name_prefix\"\x88\x04\n\x19NetworkProfileProfileType\x12\x1d\n\x0cnetwork_type\x18\xab\xb5\xdc\xf6\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0crdma_subtype\x18\x81\x8b\x8e\' \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0bull_subtype\x18\xf0\xa7\xfc, \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0bvpc_subtype\x18\xa4\xc8\x86\xaa\x01 \x01(\tH\x03\x88\x01\x01\"L\n\x0bNetworkType\x12\x1a\n\x16UNDEFINED_NETWORK_TYPE\x10\x00\x12\x0b\n\x04RDMA\x10\xc6\x9e\x99\x01\x12\t\n\x03ULL\x10\x95\x91\x05\x12\t\n\x03VPC\x10\xc9\x99\x05\"Z\n\x0bRdmaSubtype\x12\x1a\n\x16UNDEFINED_RDMA_SUBTYPE\x10\x00\x12\x0e\n\x06\x46\x41LCON\x10\xd1\x89\xab\xd9\x01\x12\x0b\n\x04ROCE\x10\xdf\xee\x99\x01\x12\x12\n\nROCE_METAL\x10\x87\x94\xed\xc8\x01\"M\n\nUllSubtype\x12\x19\n\x15UNDEFINED_ULL_SUBTYPE\x10\x00\x12\x10\n\x08OPERATOR\x10\xa4\xb1\xc0\x86\x01\x12\x12\n\x0bPARTICIPANT\x10\x93\x86\xc6p\"8\n\nVpcSubtype\x12\x19\n\x15UNDEFINED_VPC_SUBTYPE\x10\x00\x12\x0f\n\x08REGIONAL\x10\x9f\xec\x80,B\x0f\n\r_network_typeB\x0f\n\r_rdma_subtypeB\x0e\n\x0c_ull_subtypeB\x0e\n\x0c_vpc_subtype\"\xee\x02\n\x1bNetworkProfilesListResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.NetworkProfile\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xae\x06\n\x14NetworkRoutingConfig\x12&\n\x16\x62gp_always_compare_med\x18\xb6\xe2\xce\x65 \x01(\x08H\x00\x88\x01\x01\x12-\n\x1c\x62gp_best_path_selection_mode\x18\xe9\xfb\xc5\x97\x01 \x01(\tH\x01\x88\x01\x01\x12&\n\x15\x62gp_inter_region_cost\x18\xe1\xf9\xae\xdc\x01 \x01(\tH\x02\x88\x01\x01\x12\x30\n effective_bgp_always_compare_med\x18\xce\xf5\xad\x66 \x01(\x08H\x03\x88\x01\x01\x12/\n\x1f\x65\x66\x66\x65\x63tive_bgp_inter_region_cost\x18\xc9\xc0\xa1X \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x0crouting_mode\x18\xfc\xba\xc8\xe2\x01 \x01(\tH\x05\x88\x01\x01\"g\n\x18\x42gpBestPathSelectionMode\x12*\n&UNDEFINED_BGP_BEST_PATH_SELECTION_MODE\x10\x00\x12\r\n\x06LEGACY\x10\xc9\xcf\xf7,\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\"b\n\x12\x42gpInterRegionCost\x12#\n\x1fUNDEFINED_BGP_INTER_REGION_COST\x10\x00\x12\x17\n\x0f\x41\x44\x44_COST_TO_MED\x10\xdc\xe7\xf6\xe9\x01\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\"L\n\x1b\x45\x66\x66\x65\x63tiveBgpInterRegionCost\x12-\n)UNDEFINED_EFFECTIVE_BGP_INTER_REGION_COST\x10\x00\"J\n\x0bRoutingMode\x12\x1a\n\x16UNDEFINED_ROUTING_MODE\x10\x00\x12\x0e\n\x06GLOBAL\x10\xa3\xef\xef\xeb\x01\x12\x0f\n\x08REGIONAL\x10\x9f\xec\x80,B\x19\n\x17_bgp_always_compare_medB\x1f\n\x1d_bgp_best_path_selection_modeB\x18\n\x16_bgp_inter_region_costB#\n!_effective_bgp_always_compare_medB\"\n _effective_bgp_inter_region_costB\x0f\n\r_routing_mode\"\x84\x02\n\x19NetworksAddPeeringRequest\x12\"\n\x12\x61uto_create_routes\x18\xdd\xe2\xb2\x1b \x01(\x08H\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12I\n\x0fnetwork_peering\x18\xaf\x8c\xec\x9c\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.NetworkPeeringH\x02\x88\x01\x01\x12\x1d\n\x0cpeer_network\x18\xd1\xe0\xdb\xee\x01 \x01(\tH\x03\x88\x01\x01\x42\x15\n\x13_auto_create_routesB\x07\n\x05_nameB\x12\n\x10_network_peeringB\x0f\n\r_peer_network\"\xd6\x01\n%NetworksGetEffectiveFirewallsResponse\x12s\n\x10\x66irewall_policys\x18\xc2\xca\xfc\xc3\x01 \x03(\x0b\x32U.google.cloud.compute.v1.NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy\x12\x38\n\tfirewalls\x18\xf3\xc6\xe8\x81\x01 \x03(\x0b\x32!.google.cloud.compute.v1.Firewall\"\xf3\x03\n.google.cloud.compute.v1.NodeTemplateAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a^\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12?\n\x05value\x18\x02 \x01(\x0b\x32\x30.google.cloud.compute.v1.NodeTemplatesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa9\x02\n\x10NodeTemplateList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x37\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32%.google.cloud.compute.v1.NodeTemplate\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x8e\x01\n\x1fNodeTemplateNodeTypeFlexibility\x12\x14\n\x04\x63pus\x18\xcb\xe7\xba\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\tlocal_ssd\x18\xb0\xbe\xbc\xc1\x01 \x01(\tH\x01\x88\x01\x01\x12\x17\n\x06memory\x18\x81\xfa\x8a\xfe\x01 \x01(\tH\x02\x88\x01\x01\x42\x07\n\x05_cpusB\x0c\n\n_local_ssdB\t\n\x07_memory\"\xa3\x01\n\x17NodeTemplatesScopedList\x12\x41\n\x0enode_templates\x18\xbc\xa2\xed\xa8\x01 \x03(\x0b\x32%.google.cloud.compute.v1.NodeTemplate\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xc6\x04\n\x08NodeType\x12\x1d\n\x0c\x63pu_platform\x18\xaa\xea\xd1\xc3\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\nguest_cpus\x18\xd2\xcb\xc8\xbb\x01 \x01(\x05H\x04\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12\x1d\n\x0clocal_ssd_gb\x18\xca\x88\xff\x9c\x01 \x01(\x05H\x07\x88\x01\x01\x12\x18\n\x07max_vms\x18\xc1\x96\xd5\x92\x01 \x01(\x05H\x08\x88\x01\x01\x12\x19\n\tmemory_mb\x18\x93\x93\xa8\x37 \x01(\x05H\t\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\n\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0b\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0c\x88\x01\x01\x42\x0f\n\r_cpu_platformB\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\r\n\x0b_guest_cpusB\x05\n\x03_idB\x07\n\x05_kindB\x0f\n\r_local_ssd_gbB\n\n\x08_max_vmsB\x0c\n\n_memory_mbB\x07\n\x05_nameB\x0c\n\n_self_linkB\x07\n\x05_zone\"\xb9\x03\n\x16NodeTypeAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12L\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32:.google.cloud.compute.v1.NodeTypeAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aZ\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12;\n\x05value\x18\x02 \x01(\x0b\x32,.google.cloud.compute.v1.NodeTypesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa1\x02\n\x0cNodeTypeList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x33\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32!.google.cloud.compute.v1.NodeType\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x97\x01\n\x13NodeTypesScopedList\x12\x39\n\nnode_types\x18\xfc\xbf\xf5\xe5\x01 \x03(\x0b\x32!.google.cloud.compute.v1.NodeType\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x90\x03\n\x14NotificationEndpoint\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12Y\n\rgrpc_settings\x18\xa4\xc6\xc0\xd9\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.NotificationEndpointGrpcSettingsH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x10\n\x0e_grpc_settingsB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x0c\n\n_self_link\"\xdd\x03\n\"NotificationEndpointAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12X\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x46.google.cloud.compute.v1.NotificationEndpointAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x66\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12G\n\x05value\x18\x02 \x01(\x0b\x32\x38.google.cloud.compute.v1.NotificationEndpointsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb7\x02\n NotificationEndpointGrpcSettings\x12\x1a\n\tauthority\x18\xc3\x8e\xd0\xbf\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08\x65ndpoint\x18\x95\xbb\x9c> \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x0cpayload_name\x18\x9c\xb5\x9c\x8f\x01 \x01(\tH\x02\x88\x01\x01\x12\x43\n\x0fresend_interval\x18\xc9\xb8\x88\xe4\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x03\x88\x01\x01\x12\"\n\x12retry_duration_sec\x18\xdd\xce\x94\x37 \x01(\rH\x04\x88\x01\x01\x42\x0c\n\n_authorityB\x0b\n\t_endpointB\x0f\n\r_payload_nameB\x12\n\x10_resend_intervalB\x15\n\x13_retry_duration_sec\"\xb9\x02\n\x18NotificationEndpointList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.NotificationEndpoint\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xad\x01\n\x1fNotificationEndpointsScopedList\x12\x43\n\tresources\x18\xa5\xfc\xb2N \x03(\x0b\x32-.google.cloud.compute.v1.NotificationEndpoint\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xc6\r\n\tOperation\x12$\n\x13\x63lient_operation_id\x18\xe7\x8d\xde\x8d\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x08\x65nd_time\x18\xb1\xa7\xe7\x36 \x01(\tH\x03\x88\x01\x01\x12\x35\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x1e.google.cloud.compute.v1.ErrorH\x04\x88\x01\x01\x12\x64\n\x1eget_version_operation_metadata\x18\xd7\x90\xcdR \x01(\x0b\x32\x34.google.cloud.compute.v1.GetVersionOperationMetadataH\x05\x88\x01\x01\x12\'\n\x12http_error_message\x18\xd9\xfa\xc8` \x01(\tB\x03\xe8G\x04H\x06\x88\x01\x01\x12,\n\x16http_error_status_code\x18\xec\x84\xf8\x94\x01 \x01(\x05\x42\x03\xe8G\x03H\x07\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x08\x88\x01\x01\x12\x1c\n\x0binsert_time\x18\x93\xa9\xe8\xce\x01 \x01(\tH\t\x88\x01\x01\x12w\n(instances_bulk_insert_operation_metadata\x18\xc1\x86\xc1* \x01(\x0b\x32=.google.cloud.compute.v1.InstancesBulkInsertOperationMetadataH\n\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x0b\x88\x01\x01\x12\x19\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tB\x03\xe8G\x01H\x0c\x88\x01\x01\x12\"\n\x12operation_group_id\x18\xb3\xed\x93\x13 \x01(\tH\r\x88\x01\x01\x12\x1e\n\x0eoperation_type\x18\x92\xf6\xdaT \x01(\tH\x0e\x88\x01\x01\x12\x18\n\x08progress\x18\xad\x84\xd3\" \x01(\x05H\x0f\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x10\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x11\x88\x01\x01\x12\x85\x01\n/set_common_instance_metadata_operation_metadata\x18\xe4\xad\xea\xe9\x01 \x01(\x0b\x32\x43.google.cloud.compute.v1.SetCommonInstanceMetadataOperationMetadataH\x12\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x13\x88\x01\x01\x12\x46\n\x06status\x18\xf2\x9f\xb7V \x01(\x0e\x32).google.cloud.compute.v1.Operation.StatusB\x03\xe8G\x02H\x14\x88\x01\x01\x12\x1f\n\x0estatus_message\x18\xba\xc9\xe9\x8d\x01 \x01(\tH\x15\x88\x01\x01\x12\x19\n\ttarget_id\x18\x89\x95\x8d{ \x01(\x04H\x16\x88\x01\x01\x12\x1b\n\x0btarget_link\x18\xe8\x93\xf1\x1d \x01(\tH\x17\x88\x01\x01\x12\x14\n\x04user\x18\xcb\xd7\xdb\x01 \x01(\tH\x18\x88\x01\x01\x12\x37\n\x08warnings\x18\xd7\x88\xc1\xed\x01 \x03(\x0b\x32!.google.cloud.compute.v1.Warnings\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x19\x88\x01\x01\"K\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0b\n\x04\x44ONE\x10\x82\xb7\x80\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x42\x16\n\x14_client_operation_idB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0b\n\t_end_timeB\x08\n\x06_errorB!\n\x1f_get_version_operation_metadataB\x15\n\x13_http_error_messageB\x19\n\x17_http_error_status_codeB\x05\n\x03_idB\x0e\n\x0c_insert_timeB+\n)_instances_bulk_insert_operation_metadataB\x07\n\x05_kindB\x07\n\x05_nameB\x15\n\x13_operation_group_idB\x11\n\x0f_operation_typeB\x0b\n\t_progressB\t\n\x07_regionB\x0c\n\n_self_linkB2\n0_set_common_instance_metadata_operation_metadataB\r\n\x0b_start_timeB\t\n\x07_statusB\x11\n\x0f_status_messageB\x0c\n\n_target_idB\x0e\n\x0c_target_linkB\x07\n\x05_userB\x07\n\x05_zone\"\xbc\x03\n\x17OperationAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12M\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32;.google.cloud.compute.v1.OperationAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a[\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12<\n\x05value\x18\x02 \x01(\x0b\x32-.google.cloud.compute.v1.OperationsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa3\x02\n\rOperationList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x34\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\".google.cloud.compute.v1.Operation\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x98\x01\n\x14OperationsScopedList\x12\x39\n\noperations\x18\xec\xaf\xff\x01 \x03(\x0b\x32\".google.cloud.compute.v1.Operation\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xa3\x01\n4OrganizationSecurityPoliciesListAssociationsResponse\x12L\n\x0c\x61ssociations\x18\x92\xe8\xca\xf2\x01 \x03(\x0b\x32\x32.google.cloud.compute.v1.SecurityPolicyAssociation\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_kind\"\xda\x06\n\x10OutlierDetection\x12\x45\n\x12\x62\x61se_ejection_time\x18\x87\xd7\xcf& \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x00\x88\x01\x01\x12#\n\x12\x63onsecutive_errors\x18\xa0\xb3\xd0\xb8\x01 \x01(\x05H\x01\x88\x01\x01\x12,\n\x1b\x63onsecutive_gateway_failure\x18\xfa\xb7\x8a\xc7\x01 \x01(\x05H\x02\x88\x01\x01\x12,\n\x1c\x65nforcing_consecutive_errors\x18\xc0\xd3\xd0\x65 \x01(\x05H\x03\x88\x01\x01\x12\x36\n%enforcing_consecutive_gateway_failure\x18\xda\xdf\x8a\xbc\x01 \x01(\x05H\x04\x88\x01\x01\x12&\n\x16\x65nforcing_success_rate\x18\xbc\xef\xdf\\ \x01(\x05H\x05\x88\x01\x01\x12;\n\x08interval\x18\xc5\xc9\xff\x0f \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x06\x88\x01\x01\x12$\n\x14max_ejection_percent\x18\x98\xa6\xe5\x08 \x01(\x05H\x07\x88\x01\x01\x12+\n\x1asuccess_rate_minimum_hosts\x18\xf7\xa1\xda\xfa\x01 \x01(\x05H\x08\x88\x01\x01\x12,\n\x1bsuccess_rate_request_volume\x18\xcd\xeb\x98\x86\x01 \x01(\x05H\t\x88\x01\x01\x12)\n\x19success_rate_stdev_factor\x18\x9d\x83\xa9S \x01(\x05H\n\x88\x01\x01\x42\x15\n\x13_base_ejection_timeB\x15\n\x13_consecutive_errorsB\x1e\n\x1c_consecutive_gateway_failureB\x1f\n\x1d_enforcing_consecutive_errorsB(\n&_enforcing_consecutive_gateway_failureB\x19\n\x17_enforcing_success_rateB\x0b\n\t_intervalB\x17\n\x15_max_ejection_percentB\x1d\n\x1b_success_rate_minimum_hostsB\x1e\n\x1c_success_rate_request_volumeB\x1c\n\x1a_success_rate_stdev_factor\"\xc6\x03\n\x0fPacketIntervals\x12\x16\n\x06\x61vg_ms\x18\xb3\xdc\xd4\x61 \x01(\x03H\x00\x88\x01\x01\x12\x18\n\x08\x64uration\x18\x94\x9b\x91J \x01(\tH\x01\x88\x01\x01\x12\x17\n\x06max_ms\x18\xe1\xc4\xbc\xfc\x01 \x01(\x03H\x02\x88\x01\x01\x12\x17\n\x06min_ms\x18\xb3\xa5\xed\xff\x01 \x01(\x03H\x03\x88\x01\x01\x12\x1d\n\rnum_intervals\x18\xd5\xd5\xecX \x01(\x03H\x04\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x05\x88\x01\x01\"g\n\x08\x44uration\x12\x16\n\x12UNDEFINED_DURATION\x10\x00\x12\x1c\n\x14\x44URATION_UNSPECIFIED\x10\xec\xf9\xa3\xfc\x01\x12\x0b\n\x04HOUR\x10\xe4\xdb\x87\x01\x12\t\n\x03MAX\x10\xc4\xd2\x04\x12\r\n\x06MINUTE\x10\x94\xb4\xba<\"h\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x10\n\x08LOOPBACK\x10\x8b\x93\xeb\xa9\x01\x12\x0e\n\x07RECEIVE\x10\xc3\xfd\xb7Z\x12\x10\n\x08TRANSMIT\x10\xb0\x85\xfb\xd7\x01\x12\x18\n\x10TYPE_UNSPECIFIED\x10\x92\xfb\xdb\xd0\x01\x42\t\n\x07_avg_msB\x0b\n\t_durationB\t\n\x07_max_msB\t\n\x07_min_msB\x10\n\x0e_num_intervalsB\x07\n\x05_type\"\xba\x06\n\x0fPacketMirroring\x12Z\n\rcollector_ilb\x18\xed\x89\xb6\xcb\x01 \x01(\x0b\x32:.google.cloud.compute.v1.PacketMirroringForwardingRuleInfoH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\tH\x03\x88\x01\x01\x12G\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\x0b\x32..google.cloud.compute.v1.PacketMirroringFilterH\x04\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12`\n\x12mirrored_resources\x18\xc4\x9f\xc2; \x01(\x0b\x32<.google.cloud.compute.v1.PacketMirroringMirroredResourceInfoH\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12L\n\x07network\x18\xae\xb4\x85o \x01(\x0b\x32\x33.google.cloud.compute.v1.PacketMirroringNetworkInfoH\t\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\rH\n\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0b\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\"9\n\x06\x45nable\x12\x14\n\x10UNDEFINED_ENABLE\x10\x00\x12\x0c\n\x05\x46\x41LSE\x10\x83\xc2\xe4\x1f\x12\x0b\n\x04TRUE\x10\x8e\xdb\x9d\x01\x42\x10\n\x0e_collector_ilbB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\t\n\x07_enableB\t\n\x07_filterB\x05\n\x03_idB\x07\n\x05_kindB\x15\n\x13_mirrored_resourcesB\x07\n\x05_nameB\n\n\x08_networkB\x0b\n\t_priorityB\t\n\x07_regionB\x0c\n\n_self_link\"\xce\x03\n\x1dPacketMirroringAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12S\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x41.google.cloud.compute.v1.PacketMirroringAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.PacketMirroringsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xc6\x01\n\x15PacketMirroringFilter\x12\x18\n\rI_p_protocols\x18\xd6\xd9\xfe. \x03(\t\x12\x17\n\x0b\x63idr_ranges\x18\x81\x94\xd3\xe8\x01 \x03(\t\x12\x19\n\tdirection\x18\xff\x8e\x80\x35 \x01(\tH\x00\x88\x01\x01\"Q\n\tDirection\x12\x17\n\x13UNDEFINED_DIRECTION\x10\x00\x12\n\n\x04\x42OTH\x10\x81\xe7|\x12\x0e\n\x06\x45GRESS\x10\xf5\xf6\xb4\xce\x01\x12\x0f\n\x07INGRESS\x10\x95\xfd\xbe\xf6\x01\x42\x0c\n\n_direction\"q\n!PacketMirroringForwardingRuleInfo\x12\x1e\n\rcanonical_url\x18\xa4\xff\xa3\xf4\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03url\x18\xef\x8a\x07 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_canonical_urlB\x06\n\x04_url\"\xaf\x02\n\x13PacketMirroringList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.PacketMirroring\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xf7\x01\n#PacketMirroringMirroredResourceInfo\x12^\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32H.google.cloud.compute.v1.PacketMirroringMirroredResourceInfoInstanceInfo\x12_\n\x0bsubnetworks\x18\xc5\xd4\xa5\xc6\x01 \x03(\x0b\x32\x46.google.cloud.compute.v1.PacketMirroringMirroredResourceInfoSubnetInfo\x12\x0f\n\x04tags\x18\x99\xe8\xd8\x01 \x03(\t\"\x7f\n/PacketMirroringMirroredResourceInfoInstanceInfo\x12\x1e\n\rcanonical_url\x18\xa4\xff\xa3\xf4\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03url\x18\xef\x8a\x07 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_canonical_urlB\x06\n\x04_url\"}\n-PacketMirroringMirroredResourceInfoSubnetInfo\x12\x1e\n\rcanonical_url\x18\xa4\xff\xa3\xf4\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03url\x18\xef\x8a\x07 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_canonical_urlB\x06\n\x04_url\"j\n\x1aPacketMirroringNetworkInfo\x12\x1e\n\rcanonical_url\x18\xa4\xff\xa3\xf4\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03url\x18\xef\x8a\x07 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_canonical_urlB\x06\n\x04_url\"\xab\x01\n\x1aPacketMirroringsScopedList\x12\x46\n\x11packet_mirrorings\x18\xa7\xfa\xdcI \x03(\x0b\x32(.google.cloud.compute.v1.PacketMirroring\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xf9\x01\n\x16PatchAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tH\x00\x88\x01\x01\x12H\n\x13\x61utoscaler_resource\x18\xf6\xf0\xff\x62 \x01(\x0b\x32#.google.cloud.compute.v1.AutoscalerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_autoscalerB\r\n\x0b_request_id\"\xdb\x01\n\x19PatchBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12P\n\x17\x62\x61\x63kend_bucket_resource\x18\x98\xce\xc7\xb5\x01 \x01(\x0b\x32&.google.cloud.compute.v1.BackendBucketB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe0\x01\n\x1aPatchBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x62\x61\x63kend_service_resource\x18\xa3\x81\xdf\xa5\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.BackendServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc7\x02\n\x1cPatchCrossSiteNetworkRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12V\n\x1b\x63ross_site_network_resource\x18\xb8\xe4\xdd\x0e \x01(\x0b\x32).google.cloud.compute.v1.CrossSiteNetworkB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x02\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_maskB\x10\n\x0e_validate_only\"\xbd\x01\n\x1aPatchFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x66irewall_policy_resource\x18\xbc\xb6\x87\xec\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicyB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc5\x01\n\x14PatchFirewallRequest\x12\x19\n\x08\x66irewall\x18\x80\xfa\xd5\xf3\x01 \x01(\tB\x03\xe0\x41\x02\x12\x44\n\x11\x66irewall_resource\x18\xed\xb0\xe0\x13 \x01(\x0b\x32!.google.cloud.compute.v1.FirewallB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x81\x02\n\x1aPatchForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x66orwarding_rule_resource\x18\xaf\xc0\xd0\x8f\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.ForwardingRuleB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe6\x01\n PatchGlobalForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x66orwarding_rule_resource\x18\xaf\xc0\xd0\x8f\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.ForwardingRuleB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x83\x02\n(PatchGlobalPublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12`\n public_delegated_prefix_resource\x18\x85\xf8\xd8\x16 \x01(\x0b\x32..google.cloud.compute.v1.PublicDelegatedPrefixB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd3\x01\n\x17PatchHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12K\n\x15health_check_resource\x18\xa8\xc3\xa4` \x01(\x0b\x32$.google.cloud.compute.v1.HealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb9\x01\n\x11PatchImageRequest\x12\x15\n\x05image\x18\xdb\xd2\xea/ \x01(\tB\x03\xe0\x41\x02\x12?\n\x0eimage_resource\x18\xf2\xc4\xfe\xb0\x01 \x01(\x0b\x32\x1e.google.cloud.compute.v1.ImageB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x95\x02\n PatchInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12^\n\x1finstance_group_manager_resource\x18\x8a\x8a\xbe| \x01(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManagerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x8e\x02\n\x1bPatchInstanceSettingRequest\x12V\n\x1ainstance_settings_resource\x18\x80\xa7\xce\x8a\x01 \x01(\x0b\x32).google.cloud.compute.v1.InstanceSettingsB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xc2\x02\n\'PatchInterconnectAttachmentGroupRequest\x12-\n\x1dinterconnect_attachment_group\x18\xf4\xef\x98$ \x01(\tB\x03\xe0\x41\x02\x12l\n&interconnect_attachment_group_resource\x18\xf9\xdf\xe1\x04 \x01(\x0b\x32\x34.google.cloud.compute.v1.InterconnectAttachmentGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xa0\x02\n\"PatchInterconnectAttachmentRequest\x12(\n\x17interconnect_attachment\x18\xf4\x8a\xf7\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x61\n interconnect_attachment_resource\x18\xf9\xa4\xa0\x65 \x01(\x0b\x32/.google.cloud.compute.v1.InterconnectAttachmentB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x99\x02\n\x1dPatchInterconnectGroupRequest\x12#\n\x12interconnect_group\x18\x8e\xb7\xa9\xb9\x01 \x01(\tB\x03\xe0\x41\x02\x12W\n\x1binterconnect_group_resource\x18\x9f\xf3\xe6( \x01(\x0b\x32*.google.cloud.compute.v1.InterconnectGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xd5\x01\n\x18PatchInterconnectRequest\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tB\x03\xe0\x41\x02\x12M\n\x15interconnect_resource\x18\x9f\xa1\xcc\xbd\x01 \x01(\x0b\x32%.google.cloud.compute.v1.InterconnectB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x8b\x02\n\x1dPatchNetworkAttachmentRequest\x12\"\n\x12network_attachment\x18\xd4\x97\x8fk \x01(\tB\x03\xe0\x41\x02\x12W\n\x1bnetwork_attachment_resource\x18\x99\xf0\xcc\x64 \x01(\x0b\x32*.google.cloud.compute.v1.NetworkAttachmentB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x83\x03\n&PatchNetworkEdgeSecurityServiceRequest\x12-\n\x1dnetwork_edge_security_service\x18\xa7\x9f\xefJ \x01(\tB\x03\xe0\x41\x02\x12l\n&network_edge_security_service_resource\x18\xa6\xa3\xdb\xe3\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.NetworkEdgeSecurityServiceB\x03\xe0\x41\x02\x12\x15\n\x05paths\x18\xee\xc1\xe0\x32 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x02\x88\x01\x01\x42\x08\n\x06_pathsB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xe7\x01\n!PatchNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x66irewall_policy_resource\x18\xbc\xb6\x87\xec\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicyB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc0\x01\n\x13PatchNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12\x42\n\x10network_resource\x18\xff\xdd\x9c: \x01(\x0b\x32 .google.cloud.compute.v1.NetworkB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe9\x01\n\x15PatchNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12H\n\x13node_group_resource\x18\xab\xb3\xfa\xf0\x01 \x01(\x0b\x32\".google.cloud.compute.v1.NodeGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xc7\x01\n&PatchOrganizationSecurityPolicyRequest\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12Q\n\x18security_policy_resource\x18\xfc\xaa\x89g \x01(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x84\x02\n\x1bPatchPacketMirroringRequest\x12 \n\x10packet_mirroring\x18\xcc\xb9\xd1\n \x01(\tB\x03\xe0\x41\x02\x12T\n\x19packet_mirroring_resource\x18\xa1\xfc\xa8\xeb\x01 \x01(\x0b\x32(.google.cloud.compute.v1.PacketMirroringB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xaa\x02\n4PatchPacketMirroringRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xe4\x02\n2PatchPerInstanceConfigsInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x9a\x01\n?instance_group_managers_patch_per_instance_configs_req_resource\x18\xff\x9b\x88\xaa\x01 \x01(\x0b\x32H.google.cloud.compute.v1.InstanceGroupManagersPatchPerInstanceConfigsReqB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xef\x02\n8PatchPerInstanceConfigsRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9b\x01\n@region_instance_group_manager_patch_instance_config_req_resource\x18\xca\xcd\xa1^ \x01(\x0b\x32I.google.cloud.compute.v1.RegionInstanceGroupManagerPatchInstanceConfigReqB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x81\x02\n#PatchPublicAdvertisedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12(\n\x18public_advertised_prefix\x18\x9e\xf7\xc9\x30 \x01(\tB\x03\xe0\x41\x02\x12\x62\n!public_advertised_prefix_resource\x18\x8f\xd7\xb2o \x01(\x0b\x32/.google.cloud.compute.v1.PublicAdvertisedPrefixB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9e\x02\n\"PatchPublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12`\n public_delegated_prefix_resource\x18\x85\xf8\xd8\x16 \x01(\x0b\x32..google.cloud.compute.v1.PublicDelegatedPrefixB\x03\xe0\x41\x02\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x83\x02\n\x1cPatchRegionAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tH\x00\x88\x01\x01\x12H\n\x13\x61utoscaler_resource\x18\xf6\xf0\xff\x62 \x01(\x0b\x32#.google.cloud.compute.v1.AutoscalerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_autoscalerB\r\n\x0b_request_id\"\x87\x02\n PatchRegionBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x62\x61\x63kend_service_resource\x18\xa3\x81\xdf\xa5\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.BackendServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa0\x02\n&PatchRegionCompositeHealthCheckRequest\x12\'\n\x16\x63omposite_health_check\x18\x9d\xc0\xd6\xde\x01 \x01(\tB\x03\xe0\x41\x02\x12^\n\x1f\x63omposite_health_check_resource\x18\xf0\xcb\x84? \x01(\x0b\x32-.google.cloud.compute.v1.CompositeHealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xac\x02\n)PatchRegionHealthAggregationPolicyRequest\x12)\n\x19health_aggregation_policy\x18\xf2\xcf\xcbr \x01(\tB\x03\xe0\x41\x02\x12\x65\n\"health_aggregation_policy_resource\x18\xbb\xbb\xfb\x8b\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.HealthAggregationPolicyB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xfa\x01\n\x1dPatchRegionHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12K\n\x15health_check_resource\x18\xa8\xc3\xa4` \x01(\x0b\x32$.google.cloud.compute.v1.HealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x99\x02\n$PatchRegionHealthCheckServiceRequest\x12%\n\x14health_check_service\x18\xdb\x9b\xdd\xc2\x01 \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dhealth_check_service_resource\x18\xf2\x9b\xd0\xe3\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HealthCheckServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xff\x01\n\x1ePatchRegionHealthSourceRequest\x12\x1e\n\rhealth_source\x18\xde\x86\xc5\xb3\x01 \x01(\tB\x03\xe0\x41\x02\x12N\n\x16health_source_resource\x18\xcf\xb7\xca\xaa\x01 \x01(\x0b\x32%.google.cloud.compute.v1.HealthSourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9f\x02\n&PatchRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12^\n\x1finstance_group_manager_resource\x18\x8a\x8a\xbe| \x01(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManagerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x8e\x02\n\'PatchRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x66irewall_policy_resource\x18\xbc\xb6\x87\xec\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicyB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb3\x02\n PatchRegionSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12Q\n\x18security_policy_resource\x18\xfc\xaa\x89g \x01(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicyB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xf3\x01\n\x1bPatchRegionSslPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tB\x03\xe0\x41\x02\x12H\n\x13ssl_policy_resource\x18\xc8\x88\x8a\x83\x01 \x01(\x0b\x32\".google.cloud.compute.v1.SslPolicyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x90\x02\n\"PatchRegionTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x12W\n\x1btarget_https_proxy_resource\x18\x81\xad\xe4\xce\x01 \x01(\x0b\x32).google.cloud.compute.v1.TargetHttpsProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe6\x01\n\x18PatchRegionUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x12\x41\n\x10url_map_resource\x18\xe1\x90\xb7P \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xad\x02\n\x1aPatchResourcePolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fresource_policy\x18\x83\xa5\xf7K \x01(\tB\x03\xe0\x41\x02\x12Q\n\x18resource_policy_resource\x18\xca\x8c\xd1$ \x01(\x0b\x32\'.google.cloud.compute.v1.ResourcePolicyB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xf3\x01\n\x1dPatchRoutePolicyRouterRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12K\n\x15route_policy_resource\x18\x85\xbd\xb5\x37 \x01(\x0b\x32$.google.cloud.compute.v1.RoutePolicyB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xdd\x01\n\x12PatchRouterRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x12@\n\x0frouter_resource\x18\xc4\x80\x82J \x01(\x0b\x32\x1f.google.cloud.compute.v1.RouterB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf1\x01\n\x1ePatchRuleFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\x9b\x02\n%PatchRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xfd\x01\n*PatchRuleOrganizationSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dsecurity_policy_rule_resource\x18\xc3\xba\x82\xc0\x01 \x01(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRuleB\x03\xe0\x41\x02\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xc2\x02\n+PatchRuleRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xef\x02\n$PatchRuleRegionSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dsecurity_policy_rule_resource\x18\xc3\xba\x82\xc0\x01 \x01(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRuleB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x02\x88\x01\x01\x42\x0b\n\t_priorityB\x0e\n\x0c_update_maskB\x10\n\x0e_validate_only\"\xc8\x02\n\x1ePatchRuleSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dsecurity_policy_rule_resource\x18\xc3\xba\x82\xc0\x01 \x01(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRuleB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x02\x88\x01\x01\x42\x0b\n\t_priorityB\x0e\n\x0c_update_maskB\x10\n\x0e_validate_only\"\x8c\x02\n\x1aPatchSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12Q\n\x18security_policy_resource\x18\xfc\xaa\x89g \x01(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicyB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\x8d\x02\n\x1dPatchServiceAttachmentRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12#\n\x12service_attachment\x18\xed\xa9\xd0\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x12X\n\x1bservice_attachment_resource\x18\xa0\xb6\xc4\xe1\x01 \x01(\x0b\x32*.google.cloud.compute.v1.ServiceAttachmentB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf1\x01\n\x1bPatchSnapshotSettingRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12V\n\x1asnapshot_settings_resource\x18\xef\x8d\xc6\xaa\x01 \x01(\x0b\x32).google.cloud.compute.v1.SnapshotSettingsB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xcc\x01\n\x15PatchSslPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tB\x03\xe0\x41\x02\x12H\n\x13ssl_policy_resource\x18\xc8\x88\x8a\x83\x01 \x01(\x0b\x32\".google.cloud.compute.v1.SslPolicyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb0\x02\n\x16PatchSubnetworkRequest\x12&\n\x15\x64rain_timeout_seconds\x18\xda\xda\xc8\xaa\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12H\n\x13subnetwork_resource\x18\xbf\xda\x91\x14 \x01(\x0b\x32#.google.cloud.compute.v1.SubnetworkB\x03\xe0\x41\x02\x42\x18\n\x16_drain_timeout_secondsB\r\n\x0b_request_id\"\xe5\x01\n\x1bPatchTargetGrpcProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_grpc_proxy\x18\xfb\xb4\xb2\x02 \x01(\tB\x03\xe0\x41\x02\x12U\n\x1atarget_grpc_proxy_resource\x18\xd2\xea\xeb\x9c\x01 \x01(\x0b\x32(.google.cloud.compute.v1.TargetGrpcProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe4\x01\n\x1bPatchTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\x12T\n\x1atarget_http_proxy_resource\x18\xa8\xaf\xe3\x0b \x01(\x0b\x32(.google.cloud.compute.v1.TargetHttpProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe9\x01\n\x1cPatchTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x12W\n\x1btarget_https_proxy_resource\x18\x81\xad\xe4\xce\x01 \x01(\x0b\x32).google.cloud.compute.v1.TargetHttpsProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xbf\x01\n\x12PatchUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x12\x41\n\x10url_map_resource\x18\xe1\x90\xb7P \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xcd\x02\n\x15PatchWireGroupRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x02\x88\x01\x01\x12\x1a\n\nwire_group\x18\xc5\xa4\xb7: \x01(\tB\x03\xe0\x41\x02\x12G\n\x13wire_group_resource\x18\xc8\xc1\xeb\x37 \x01(\x0b\x32\".google.cloud.compute.v1.WireGroupB\x03\xe0\x41\x02\x42\r\n\x0b_request_idB\x0e\n\x0c_update_maskB\x10\n\x0e_validate_only\"\xd2\x05\n\x0bPathMatcher\x12h\n$default_custom_error_response_policy\x18\xa9\x8b\xe0& \x01(\x0b\x32\x32.google.cloud.compute.v1.CustomErrorResponsePolicyH\x00\x88\x01\x01\x12O\n\x14\x64\x65\x66\x61ult_route_action\x18\xaa\xb4\xd7\xb4\x01 \x01(\x0b\x32(.google.cloud.compute.v1.HttpRouteActionH\x01\x88\x01\x01\x12 \n\x0f\x64\x65\x66\x61ult_service\x18\xb7\xe5\xc5\xb0\x01 \x01(\tH\x02\x88\x01\x01\x12R\n\x14\x64\x65\x66\x61ult_url_redirect\x18\xea\xab\xb6\xab\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HttpRedirectActionH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12I\n\rheader_action\x18\xa8\xa0\xb8\x9c\x01 \x01(\x0b\x32).google.cloud.compute.v1.HttpHeaderActionH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x38\n\npath_rules\x18\xdd\xc0\xe6\x31 \x03(\x0b\x32!.google.cloud.compute.v1.PathRule\x12?\n\x0broute_rules\x18\x81\x87\xb7\xb3\x01 \x03(\x0b\x32&.google.cloud.compute.v1.HttpRouteRuleB\'\n%_default_custom_error_response_policyB\x17\n\x15_default_route_actionB\x12\n\x10_default_serviceB\x17\n\x15_default_url_redirectB\x0e\n\x0c_descriptionB\x10\n\x0e_header_actionB\x07\n\x05_name\"\xfc\x02\n\x08PathRule\x12`\n\x1c\x63ustom_error_response_policy\x18\xeb\xf8\xda` \x01(\x0b\x32\x32.google.cloud.compute.v1.CustomErrorResponsePolicyH\x00\x88\x01\x01\x12\x10\n\x05paths\x18\xee\xc1\xe0\x32 \x03(\t\x12G\n\x0croute_action\x18\xec\xa9\xb9\xca\x01 \x01(\x0b\x32(.google.cloud.compute.v1.HttpRouteActionH\x01\x88\x01\x01\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x02\x88\x01\x01\x12J\n\x0curl_redirect\x18\xac\xa1\x98\xc1\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HttpRedirectActionH\x03\x88\x01\x01\x42\x1f\n\x1d_custom_error_response_policyB\x0f\n\r_route_actionB\n\n\x08_serviceB\x0f\n\r_url_redirect\"\xf3\x02\n\x11PerInstanceConfig\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12H\n\x0fpreserved_state\x18\xaa\xe2\xa0\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.PreservedStateH\x02\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x03\x88\x01\x01\"\x90\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x41PPLYING\x10\xb4\xcb\xec\xa7\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x10\n\tEFFECTIVE\x10\x87\xf3\xb8t\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x11\n\tUNAPPLIED\x10\xa4\x87\xe1\xe6\x01\x12\x1a\n\x12UNAPPLIED_DELETION\x10\x89\xb4\xda\x95\x01\x42\x0e\n\x0c_fingerprintB\x07\n\x05_nameB\x12\n\x10_preserved_stateB\t\n\x07_status\"\xa8\x01\n!PerformMaintenanceInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xac\x02\n\"PerformMaintenanceNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12~\n0node_groups_perform_maintenance_request_resource\x18\xd6\xb8\xaeX \x01(\x0b\x32<.google.cloud.compute.v1.NodeGroupsPerformMaintenanceRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe9\x02\n)PerformMaintenanceReservationBlockRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11reservation_block\x18\xda\xc4\x89\xfe\x01 \x01(\tB\x03\xe0\x41\x02\x12\x8f\x01\n8reservations_blocks_perform_maintenance_request_resource\x18\x89\xa9\xd4\xe7\x01 \x01(\x0b\x32\x44.google.cloud.compute.v1.ReservationsBlocksPerformMaintenanceRequestB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xb2\x02\n$PerformMaintenanceReservationRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12\x81\x01\n1reservations_perform_maintenance_request_resource\x18\xa0\xf5\x94\x0e \x01(\x0b\x32>.google.cloud.compute.v1.ReservationsPerformMaintenanceRequestB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xde\x01\n,PerformMaintenanceReservationSubBlockRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12%\n\x15reservation_sub_block\x18\x9b\xca\xec\n \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf0\x01\n\x06Policy\x12?\n\raudit_configs\x18\x8d\xba\xb8\x9c\x01 \x03(\x0b\x32$.google.cloud.compute.v1.AuditConfig\x12\x36\n\x08\x62indings\x18\x8e\xc5\xa4\xc0\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Binding\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\tiam_owned\x18\xbb\xb0\xec\xd6\x01 \x01(\x08H\x01\x88\x01\x01\x12\x18\n\x07version\x18\xd8\xb9\xd4\xa7\x01 \x01(\x05H\x02\x88\x01\x01\x42\x07\n\x05_etagB\x0c\n\n_iam_ownedB\n\n\x08_version\"]\n\x13PreconfiguredWafSet\x12\x46\n\x0f\x65xpression_sets\x18\x98\xab\x83\xe2\x01 \x03(\x0b\x32).google.cloud.compute.v1.WafExpressionSet\"\xbe\x05\n\x0ePreservedState\x12\x44\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32\x32.google.cloud.compute.v1.PreservedState.DisksEntry\x12S\n\rexternal_i_ps\x18\x8d\xd3\x80\xfe\x01 \x03(\x0b\x32\x38.google.cloud.compute.v1.PreservedState.ExternalIPsEntry\x12R\n\rinternal_i_ps\x18\xdb\x9b\xef\x66 \x03(\x0b\x32\x38.google.cloud.compute.v1.PreservedState.InternalIPsEntry\x12J\n\x08metadata\x18\xaf\xf6\xb5) \x03(\x0b\x32\x35.google.cloud.compute.v1.PreservedState.MetadataEntry\x1a\x62\n\nDisksEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.google.cloud.compute.v1.PreservedStatePreservedDisk:\x02\x38\x01\x1am\n\x10\x45xternalIPsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12H\n\x05value\x18\x02 \x01(\x0b\x32\x39.google.cloud.compute.v1.PreservedStatePreservedNetworkIp:\x02\x38\x01\x1am\n\x10InternalIPsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12H\n\x05value\x18\x02 \x01(\x0b\x32\x39.google.cloud.compute.v1.PreservedStatePreservedNetworkIp:\x02\x38\x01\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xac\x02\n\x1bPreservedStatePreservedDisk\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x01\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\x02\x88\x01\x01\"\\\n\nAutoDelete\x12\x19\n\x15UNDEFINED_AUTO_DELETE\x10\x00\x12\x0c\n\x05NEVER\x10\xec\xa4\xaf#\x12%\n\x1eON_PERMANENT_INSTANCE_DELETION\x10\xe7\xe0\xd2-\"?\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\x10\n\tREAD_ONLY\x10\xb5\x99\xec+\x12\x11\n\nREAD_WRITE\x10\xd6\x97\xe4RB\x0e\n\x0c_auto_deleteB\x07\n\x05_modeB\t\n\x07_source\"\x9e\x02\n PreservedStatePreservedNetworkIp\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\tH\x00\x88\x01\x01\x12_\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\x0b\x32\x42.google.cloud.compute.v1.PreservedStatePreservedNetworkIpIpAddressH\x01\x88\x01\x01\"\\\n\nAutoDelete\x12\x19\n\x15UNDEFINED_AUTO_DELETE\x10\x00\x12\x0c\n\x05NEVER\x10\xec\xa4\xaf#\x12%\n\x1eON_PERMANENT_INSTANCE_DELETION\x10\xe7\xe0\xd2-B\x0e\n\x0c_auto_deleteB\r\n\x0b_ip_address\"v\n)PreservedStatePreservedNetworkIpIpAddress\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x07literal\x18\xaf\xc1\x80W \x01(\tH\x01\x88\x01\x01\x42\n\n\x08_addressB\n\n\x08_literal\"\xf3\x04\n\x0ePreviewFeature\x12!\n\x11\x61\x63tivation_status\x18\xbb\x8e\xa8\" \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12[\n\x11rollout_operation\x18\xd9\xd0\x8c\xe8\x01 \x01(\x0b\x32\x37.google.cloud.compute.v1.PreviewFeatureRolloutOperationH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12\x45\n\x06status\x18\xf2\x9f\xb7V \x01(\x0b\x32-.google.cloud.compute.v1.PreviewFeatureStatusH\x08\x88\x01\x01\"y\n\x10\x41\x63tivationStatus\x12\x1f\n\x1bUNDEFINED_ACTIVATION_STATUS\x10\x00\x12\"\n\x1c\x41\x43TIVATION_STATE_UNSPECIFIED\x10\xe0\xca&\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x0e\n\x07\x45NABLED\x10\xa1\xae\xecVB\x14\n\x12_activation_statusB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x14\n\x12_rollout_operationB\x0c\n\n_self_linkB\t\n\x07_status\"\xc6\x02\n\x12PreviewFeatureList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.PreviewFeature\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x96\x01\n\x1ePreviewFeatureRolloutOperation\x12\x62\n\rrollout_input\x18\xbc\xe7\xdb~ \x01(\x0b\x32\x43.google.cloud.compute.v1.PreviewFeatureRolloutOperationRolloutInputH\x00\x88\x01\x01\x42\x10\n\x0e_rollout_input\"\xbb\x02\n*PreviewFeatureRolloutOperationRolloutInput\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12(\n\x17predefined_rollout_plan\x18\x90\x9d\xca\xad\x01 \x01(\tH\x01\x88\x01\x01\"\xa7\x01\n\x15PredefinedRolloutPlan\x12%\n!UNDEFINED_PREDEFINED_ROLLOUT_PLAN\x10\x00\x12 \n\x19ROLLOUT_PLAN_FAST_ROLLOUT\x10\xd6\x9d\x82P\x12$\n\x1cROLLOUT_PLAN_TWO_DAY_ROLLOUT\x10\x93\x96\xea\xa6\x01\x12\x1f\n\x18ROLLOUT_PLAN_UNSPECIFIED\x10\xef\xa7\xf4\x44\x42\x07\n\x05_nameB\x1a\n\x18_predefined_rollout_plan\"\xdd\x01\n\x14PreviewFeatureStatus\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x19\n\thelp_link\x18\xb8\xf4\xc3j \x01(\tH\x01\x88\x01\x01\x12[\n\x0erelease_status\x18\xaa\xbe\x9f\xf2\x01 \x01(\x0b\x32:.google.cloud.compute.v1.PreviewFeatureStatusReleaseStatusH\x02\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0c\n\n_help_linkB\x11\n\x0f_release_status\"\xf7\x01\n!PreviewFeatureStatusReleaseStatus\x12\x15\n\x05stage\x18\xfe\x85\xab\x34 \x01(\tH\x00\x88\x01\x01\x12;\n\x0bupdate_date\x18\xe4\x8a\xaa\xee\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.DateH\x01\x88\x01\x01\"d\n\x05Stage\x12\x13\n\x0fUNDEFINED_STAGE\x10\x00\x12\x12\n\nDEPRECATED\x10\xb3\xa3\xf9\xdc\x01\x12\x07\n\x02GA\x10\xda\x11\x12\x0f\n\x07PREVIEW\x10\xa8\xdf\xd1\xbe\x01\x12\x18\n\x11STAGE_UNSPECIFIED\x10\xb6\xd6\xaf\x1e\x42\x08\n\x06_stageB\x0e\n\x0c_update_date\"\xa1\x01\n\x14PreviewRouterRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x12@\n\x0frouter_resource\x18\xc4\x80\x82J \x01(\x0b\x32\x1f.google.cloud.compute.v1.RouterB\x03\xe0\x41\x02\"\xea\n\n\x07Project\x12 \n\x10\x63loud_armor_tier\x18\xac\x9a\x8e\x02 \x01(\tH\x00\x88\x01\x01\x12K\n\x18\x63ommon_instance_metadata\x18\xc5\xfc\xcbX \x01(\x0b\x32!.google.cloud.compute.v1.MetadataH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12%\n\x14\x64\x65\x66\x61ult_network_tier\x18\x91\xc5\xf9\xe0\x01 \x01(\tH\x03\x88\x01\x01\x12(\n\x17\x64\x65\x66\x61ult_service_account\x18\xa5\xf9\xb7\x8e\x01 \x01(\tH\x04\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x05\x88\x01\x01\x12\x1c\n\x10\x65nabled_features\x18\xfb\xc6\xd2\xdf\x01 \x03(\t\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12\x31\n\x06quotas\x18\xfb\xa1\xe2; \x03(\x0b\x32\x1e.google.cloud.compute.v1.Quota\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12T\n\x15usage_export_location\x18\xc2\xb2\xdc\xa5\x01 \x01(\x0b\x32,.google.cloud.compute.v1.UsageExportLocationH\n\x88\x01\x01\x12\x1e\n\x0evm_dns_setting\x18\xb2\xa7\x88\x1c \x01(\tH\x0b\x88\x01\x01\x12\"\n\x12xpn_project_status\x18\xc1\xcd\xf5l \x01(\tH\x0c\x88\x01\x01\"~\n\x0e\x43loudArmorTier\x12\x1e\n\x1aUNDEFINED_CLOUD_ARMOR_TIER\x10\x00\x12\x1b\n\x14\x43\x41_ENTERPRISE_ANNUAL\x10\xdc\xf5\xeeh\x12\x1b\n\x13\x43\x41_ENTERPRISE_PAYGO\x10\xd3\xa5\xa1\xd8\x01\x12\x12\n\x0b\x43\x41_STANDARD\x10\xfe\x82\xa3\x06\"\x9e\x01\n\x12\x44\x65\x66\x61ultNetworkTier\x12\"\n\x1eUNDEFINED_DEFAULT_NETWORK_TIER\x10\x00\x12\x16\n\x0e\x46IXED_STANDARD\x10\xc8\x9e\x85\x94\x01\x12\x0f\n\x07PREMIUM\x10\xb7\xb4\xc1\xbe\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x12)\n!STANDARD_OVERRIDES_FIXED_STANDARD\x10\xc2\x87\x91\xde\x01\"\x92\x01\n\x0cVmDnsSetting\x12\x1c\n\x18UNDEFINED_VM_DNS_SETTING\x10\x00\x12\x16\n\x0eGLOBAL_DEFAULT\x10\x85\xdb\xda\xa4\x01\x12!\n\x1aUNSPECIFIED_VM_DNS_SETTING\x10\x9a\xbb\x82\x11\x12\x15\n\rZONAL_DEFAULT\x10\x86\xfd\xd9\xaf\x01\x12\x12\n\nZONAL_ONLY\x10\xe7\xba\xc3\xf8\x01\"i\n\x10XpnProjectStatus\x12 \n\x1cUNDEFINED_XPN_PROJECT_STATUS\x10\x00\x12\x0b\n\x04HOST\x10\xa8\xdb\x87\x01\x12&\n\x1eUNSPECIFIED_XPN_PROJECT_STATUS\x10\xa9\xfa\xa7\xa2\x01\x42\x13\n\x11_cloud_armor_tierB\x1b\n\x19_common_instance_metadataB\x15\n\x13_creation_timestampB\x17\n\x15_default_network_tierB\x1a\n\x18_default_service_accountB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x0c\n\n_self_linkB\x18\n\x16_usage_export_locationB\x11\n\x0f_vm_dns_settingB\x15\n\x13_xpn_project_status\"z\n!ProjectsDisableXpnResourceRequest\x12\x44\n\x0cxpn_resource\x18\xb7\x93\xcd? \x01(\x0b\x32&.google.cloud.compute.v1.XpnResourceIdH\x00\x88\x01\x01\x42\x0f\n\r_xpn_resource\"y\n ProjectsEnableXpnResourceRequest\x12\x44\n\x0cxpn_resource\x18\xb7\x93\xcd? \x01(\x0b\x32&.google.cloud.compute.v1.XpnResourceIdH\x00\x88\x01\x01\x42\x0f\n\r_xpn_resource\"\xab\x01\n\x17ProjectsGetXpnResources\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x01\x88\x01\x01\x12<\n\tresources\x18\xa5\xfc\xb2N \x03(\x0b\x32&.google.cloud.compute.v1.XpnResourceIdB\x07\n\x05_kindB\x12\n\x10_next_page_token\"L\n\x1bProjectsListXpnHostsRequest\x12\x1c\n\x0corganization\x18\xb3\xda\x93\x32 \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_organization\"\xd9\x01\n ProjectsSetCloudArmorTierRequest\x12 \n\x10\x63loud_armor_tier\x18\xac\x9a\x8e\x02 \x01(\tH\x00\x88\x01\x01\"~\n\x0e\x43loudArmorTier\x12\x1e\n\x1aUNDEFINED_CLOUD_ARMOR_TIER\x10\x00\x12\x1b\n\x14\x43\x41_ENTERPRISE_ANNUAL\x10\xdc\xf5\xeeh\x12\x1b\n\x13\x43\x41_ENTERPRISE_PAYGO\x10\xd3\xa5\xa1\xd8\x01\x12\x12\n\x0b\x43\x41_STANDARD\x10\xfe\x82\xa3\x06\x42\x13\n\x11_cloud_armor_tier\"\xe8\x01\n$ProjectsSetDefaultNetworkTierRequest\x12\x1d\n\x0cnetwork_tier\x18\xd3\xba\xdb\xf6\x01 \x01(\tH\x00\x88\x01\x01\"\x8f\x01\n\x0bNetworkTier\x12\x1a\n\x16UNDEFINED_NETWORK_TIER\x10\x00\x12\x16\n\x0e\x46IXED_STANDARD\x10\xc8\x9e\x85\x94\x01\x12\x0f\n\x07PREMIUM\x10\xb7\xb4\xc1\xbe\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x12)\n!STANDARD_OVERRIDES_FIXED_STANDARD\x10\xc2\x87\x91\xde\x01\x42\x0f\n\r_network_tier\"\xa3\n\n\x16PublicAdvertisedPrefix\x12!\n\x11\x62yoip_api_version\x18\x93\xb3\xc9M \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12#\n\x13\x64ns_verification_ip\x18\xb5\x95\xf6r \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x04\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x05\x88\x01\x01\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x06\x88\x01\x01\x12!\n\x10ipv6_access_type\x18\xdd\xf5\xd1\xf0\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x08\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\t\x88\x01\x01\x12\x1a\n\tpdp_scope\x18\xd1\xca\xfe\xf9\x01 \x01(\tH\n\x88\x01\x01\x12j\n\x18public_delegated_prefixs\x18\x8b\xbe\x85\xcb\x01 \x03(\x0b\x32\x44.google.cloud.compute.v1.PublicAdvertisedPrefixPublicDelegatedPrefix\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0b\x88\x01\x01\x12\x1e\n\rshared_secret\x18\xca\xa7\x8f\xb6\x01 \x01(\tH\x0c\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\r\x88\x01\x01\"D\n\x0f\x42yoipApiVersion\x12\x1f\n\x1bUNDEFINED_BYOIP_API_VERSION\x10\x00\x12\x07\n\x02V1\x10\x9b\x15\x12\x07\n\x02V2\x10\x9c\x15\"S\n\x0eIpv6AccessType\x12\x1e\n\x1aUNDEFINED_IPV6_ACCESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\"a\n\x08PdpScope\x12\x17\n\x13UNDEFINED_PDP_SCOPE\x10\x00\x12\x0e\n\x06GLOBAL\x10\xa3\xef\xef\xeb\x01\x12\x1b\n\x13GLOBAL_AND_REGIONAL\x10\xc3\xb5\xd4\x97\x01\x12\x0f\n\x08REGIONAL\x10\x9f\xec\x80,\"\xa9\x02\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x1c\n\x15\x41NNOUNCED_TO_INTERNET\x10\xc1\xfe\xe8T\x12\x0f\n\x07INITIAL\x10\xa4\xc6\xb3\xf7\x01\x12%\n\x1dPREFIX_CONFIGURATION_COMPLETE\x10\xcf\x95\xa7\xe5\x01\x12(\n PREFIX_CONFIGURATION_IN_PROGRESS\x10\xb1\xf5\xc0\xb4\x01\x12\"\n\x1aPREFIX_REMOVAL_IN_PROGRESS\x10\xe7\xf5\xcc\x87\x01\x12\x16\n\x0ePTR_CONFIGURED\x10\xcf\xb0\xed\xf4\x01\x12\x18\n\x11READY_TO_ANNOUNCE\x10\xf1\xb1\xe9\x1e\x12!\n\x19REVERSE_DNS_LOOKUP_FAILED\x10\xaf\xbb\x83\x8d\x01\x12\x10\n\tVALIDATED\x10\xee\xb3\xc8\x1f\x42\x14\n\x12_byoip_api_versionB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x16\n\x14_dns_verification_ipB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x10\n\x0e_ip_cidr_rangeB\x13\n\x11_ipv6_access_typeB\x07\n\x05_kindB\x07\n\x05_nameB\x0c\n\n_pdp_scopeB\x0c\n\n_self_linkB\x10\n\x0e_shared_secretB\t\n\x07_status\"\xbd\x02\n\x1aPublicAdvertisedPrefixList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x41\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32/.google.cloud.compute.v1.PublicAdvertisedPrefix\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xde\x01\n+PublicAdvertisedPrefixPublicDelegatedPrefix\x12\x18\n\x08ip_range\x18\xa5\xe0\x97\x45 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tH\x02\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x03\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x04\x88\x01\x01\x42\x0b\n\t_ip_rangeB\x07\n\x05_nameB\n\n\x08_projectB\t\n\x07_regionB\t\n\x07_status\"\xbf\x0b\n\x15PublicDelegatedPrefix\x12)\n\x19\x61llocatable_prefix_length\x18\xb6\xb6\xa9\x12 \x01(\x05H\x00\x88\x01\x01\x12!\n\x11\x62yoip_api_version\x18\x93\xb3\xc9M \x01(\tH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12/\n\x1f\x65nable_enhanced_ipv4_allocation\x18\xed\xb7\x83\x1a \x01(\x08H\x04\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x05\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x07\x88\x01\x01\x12!\n\x10ipv6_access_type\x18\xdd\xf5\xd1\xf0\x01 \x01(\tH\x08\x88\x01\x01\x12\"\n\x11is_live_migration\x18\xf0\x9f\x87\xf4\x01 \x01(\x08H\t\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\n\x88\x01\x01\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x0b\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0c\x88\x01\x01\x12\x1d\n\rparent_prefix\x18\xc7\xe7\xa1\x07 \x01(\tH\r\x88\x01\x01\x12o\n\x1cpublic_delegated_sub_prefixs\x18\x8c\xfe\x8bZ \x03(\x0b\x32\x46.google.cloud.compute.v1.PublicDelegatedPrefixPublicDelegatedSubPrefix\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0e\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0f\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x10\x88\x01\x01\"D\n\x0f\x42yoipApiVersion\x12\x1f\n\x1bUNDEFINED_BYOIP_API_VERSION\x10\x00\x12\x07\n\x02V1\x10\x9b\x15\x12\x07\n\x02V2\x10\x9c\x15\"S\n\x0eIpv6AccessType\x12\x1e\n\x1aUNDEFINED_IPV6_ACCESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\"\xb1\x01\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\x11\n\nDELEGATION\x10\xa8\xb2\xfa}\x12.\n&EXTERNAL_IPV6_FORWARDING_RULE_CREATION\x10\xc4\xe1\x8d\xbe\x01\x12(\n!EXTERNAL_IPV6_SUBNETWORK_CREATION\x10\xcc\x9f\x97\x1d\x12(\n!INTERNAL_IPV6_SUBNETWORK_CREATION\x10\x9a\x82\x89I\"\xbe\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x11\n\tANNOUNCED\x10\xfb\x91\x8c\xae\x01\x12\x1b\n\x13\x41NNOUNCED_TO_GOOGLE\x10\xb9\xb4\xf3\xd8\x01\x12\x1c\n\x15\x41NNOUNCED_TO_INTERNET\x10\xc1\xfe\xe8T\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x14\n\x0cINITIALIZING\x10\xcd\xd8\x98\x92\x01\x12\x18\n\x11READY_TO_ANNOUNCE\x10\xf1\xb1\xe9\x1e\x42\x1c\n\x1a_allocatable_prefix_lengthB\x14\n\x12_byoip_api_versionB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\"\n _enable_enhanced_ipv4_allocationB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x10\n\x0e_ip_cidr_rangeB\x13\n\x11_ipv6_access_typeB\x14\n\x12_is_live_migrationB\x07\n\x05_kindB\x07\n\x05_modeB\x07\n\x05_nameB\x10\n\x0e_parent_prefixB\t\n\x07_regionB\x0c\n\n_self_linkB\t\n\x07_status\"\xe1\x03\n#PublicDelegatedPrefixAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12Y\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32G.google.cloud.compute.v1.PublicDelegatedPrefixAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1ah\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12I\n\x05value\x18\x02 \x01(\x0b\x32:.google.cloud.compute.v1.PublicDelegatedPrefixesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbb\x02\n\x19PublicDelegatedPrefixList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12@\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32..google.cloud.compute.v1.PublicDelegatedPrefix\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x99\x07\n-PublicDelegatedPrefixPublicDelegatedSubPrefix\x12)\n\x19\x61llocatable_prefix_length\x18\xb6\xb6\xa9\x12 \x01(\x05H\x00\x88\x01\x01\x12\"\n\x11\x64\x65legatee_project\x18\xda\x8a\xe9\xc5\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12/\n\x1f\x65nable_enhanced_ipv4_allocation\x18\xed\xb7\x83\x1a \x01(\x08H\x03\x88\x01\x01\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x04\x88\x01\x01\x12!\n\x10ipv6_access_type\x18\xdd\xf5\xd1\xf0\x01 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\nis_address\x18\xdf\x8b\x92\xa8\x01 \x01(\x08H\x06\x88\x01\x01\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\t\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\n\x88\x01\x01\"S\n\x0eIpv6AccessType\x12\x1e\n\x1aUNDEFINED_IPV6_ACCESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\"\xb1\x01\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\x11\n\nDELEGATION\x10\xa8\xb2\xfa}\x12.\n&EXTERNAL_IPV6_FORWARDING_RULE_CREATION\x10\xc4\xe1\x8d\xbe\x01\x12(\n!EXTERNAL_IPV6_SUBNETWORK_CREATION\x10\xcc\x9f\x97\x1d\x12(\n!INTERNAL_IPV6_SUBNETWORK_CREATION\x10\x9a\x82\x89I\"@\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08INACTIVE\x10\xeb\x98\xf9\x80\x01\x42\x1c\n\x1a_allocatable_prefix_lengthB\x14\n\x12_delegatee_projectB\x0e\n\x0c_descriptionB\"\n _enable_enhanced_ipv4_allocationB\x10\n\x0e_ip_cidr_rangeB\x13\n\x11_ipv6_access_typeB\r\n\x0b_is_addressB\x07\n\x05_modeB\x07\n\x05_nameB\t\n\x07_regionB\t\n\x07_status\"\xc1\x01\n!PublicDelegatedPrefixesScopedList\x12U\n\x19public_delegated_prefixes\x18\x96\x82\xaa\x96\x01 \x03(\x0b\x32..google.cloud.compute.v1.PublicDelegatedPrefix\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xe6(\n\x05Quota\x12\x15\n\x05limit\x18\xbb\x97\x8d\x31 \x01(\x01H\x00\x88\x01\x01\x12\x17\n\x06metric\x18\xb0\xeb\x97\xfe\x01 \x01(\tH\x01\x88\x01\x01\x12\x15\n\x05owner\x18\xb3\xe5\xcf\x32 \x01(\tH\x02\x88\x01\x01\x12\x15\n\x05usage\x18\xa1\xfb\x99\x35 \x01(\x01H\x03\x88\x01\x01\"\xd5\'\n\x06Metric\x12\x14\n\x10UNDEFINED_METRIC\x10\x00\x12\x0e\n\x07\x41\x32_CPUS\x10\xb9\xfe\x86I\x12\x16\n\x0f\x41\x46\x46INITY_GROUPS\x10\xcb\xa9\xd2\x33\x12\x13\n\x0b\x41UTOSCALERS\x10\xdc\xe0\xda\xe0\x01\x12\x16\n\x0f\x42\x41\x43KEND_BUCKETS\x10\xde\x89\xd0\x41\x12\x18\n\x10\x42\x41\x43KEND_SERVICES\x10\xc9\xc3\xc8\x80\x01\x12\x10\n\x08\x43\x32\x44_CPUS\x10\xf5\xff\xa8\xf2\x01\x12\x0f\n\x07\x43\x32_CPUS\x10\xbb\xeb\xb8\x97\x01\x12\x0f\n\x07\x43\x33_CPUS\x10\xda\x9c\x8c\xa5\x01\x12\x13\n\x0b\x43OMMITMENTS\x10\xde\xd7\xc0\xd9\x01\x12\x18\n\x11\x43OMMITTED_A2_CPUS\x10\xd6\xa2\xa5\x1c\x12\x1a\n\x12\x43OMMITTED_C2D_CPUS\x10\xf8\xe2\xd3\x86\x01\x12\x18\n\x11\x43OMMITTED_C2_CPUS\x10\xd8\x8f\xd7j\x12\x18\n\x11\x43OMMITTED_C3_CPUS\x10\xf7\xc0\xaax\x12\x16\n\x0e\x43OMMITTED_CPUS\x10\xce\xad\xb6\x8b\x01\x12\x19\n\x11\x43OMMITTED_E2_CPUS\x10\xda\xfc\x88\xb9\x01\x12\x1a\n\x12\x43OMMITTED_LICENSES\x10\xd5\xcb\xc2\xaa\x01\x12$\n\x1c\x43OMMITTED_LOCAL_SSD_TOTAL_GB\x10\x88\xec\x86\x93\x01\x12\x17\n\x11\x43OMMITTED_M3_CPUS\x10\x81\xe2#\x12\'\n\x1f\x43OMMITTED_MEMORY_OPTIMIZED_CPUS\x10\xde\xdc\x99\xe9\x01\x12\x19\n\x12\x43OMMITTED_N2A_CPUS\x10\xb0\xaa\x8d\x13\x12\x19\n\x12\x43OMMITTED_N2D_CPUS\x10\x8d\xbe\x87<\x12\x19\n\x11\x43OMMITTED_N2_CPUS\x10\xa3\xa7\xe9\x99\x01\x12\'\n\x1f\x43OMMITTED_NVIDIA_A100_80GB_GPUS\x10\xa5\x9f\xb4\xdd\x01\x12\"\n\x1a\x43OMMITTED_NVIDIA_A100_GPUS\x10\x95\xfd\x98\xb3\x01\x12!\n\x1a\x43OMMITTED_NVIDIA_H100_GPUS\x10\x9c\x8f\x95\"\x12 \n\x19\x43OMMITTED_NVIDIA_K80_GPUS\x10\xa4\xb6\xeb\x01\x12\x1f\n\x18\x43OMMITTED_NVIDIA_L4_GPUS\x10\xfd\xd3\x91\t\x12!\n\x1a\x43OMMITTED_NVIDIA_P100_GPUS\x10\xa4\xff\xa2\x33\x12 \n\x18\x43OMMITTED_NVIDIA_P4_GPUS\x10\x81\xae\xf5\xa5\x01\x12\x1f\n\x18\x43OMMITTED_NVIDIA_T4_GPUS\x10\x85\x88\xd9\x42\x12 \n\x1a\x43OMMITTED_NVIDIA_V100_GPUS\x10\xaa\xb3\r\x12\x1a\n\x12\x43OMMITTED_T2A_CPUS\x10\xea\xc4\xa9\x8d\x01\x12\x1a\n\x12\x43OMMITTED_T2D_CPUS\x10\xc7\xd8\xa3\xb6\x01\x12\x18\n\x11\x43OMMITTED_Z3_CPUS\x10\xce\xe6\xe7}\x12\n\n\x04\x43PUS\x10\xcb\xd7~\x12\x18\n\x10\x43PUS_ALL_REGIONS\x10\xad\x91\xc6\xe0\x01\x12\x16\n\x0e\x44ISKS_TOTAL_GB\x10\x9f\x97\xc9\xa8\x01\x12\x0f\n\x07\x45\x32_CPUS\x10\xbd\xd8\xea\xe5\x01\x12(\n!EXTERNAL_MANAGED_FORWARDING_RULES\x10\xc9\xbf\xf3G\x12,\n$EXTERNAL_NETWORK_LB_FORWARDING_RULES\x10\x99\xad\xbd\xb2\x01\x12)\n\"EXTERNAL_PROTOCOL_FORWARDING_RULES\x10\xe8\xb8\xa2\x1e\x12\x1d\n\x15\x45XTERNAL_VPN_GATEWAYS\x10\xae\xbb\xf5\x81\x01\x12\x11\n\tFIREWALLS\x10\xd3\xe6\xc8\xb2\x01\x12\x18\n\x10\x46ORWARDING_RULES\x10\x95\x82\xa8\xce\x01\x12/\n(GLOBAL_EXTERNAL_MANAGED_BACKEND_SERVICES\x10\xe1\xad\xbcN\x12\x30\n(GLOBAL_EXTERNAL_MANAGED_FORWARDING_RULES\x10\xad\xec\x9b\x9c\x01\x12\x31\n)GLOBAL_EXTERNAL_PROXY_LB_BACKEND_SERVICES\x10\xa9\xd9\xed\xbe\x01\x12 \n\x19GLOBAL_INTERNAL_ADDRESSES\x10\x9c\xc5\xb0\x14\x12/\n(GLOBAL_INTERNAL_MANAGED_BACKEND_SERVICES\x10\xaf\x90\xaez\x12\x39\n1GLOBAL_INTERNAL_TRAFFIC_DIRECTOR_BACKEND_SERVICES\x10\xd4\xde\xa1\x9a\x01\x12\x17\n\x10GPUS_ALL_REGIONS\x10\xa9\x80\xe4\x12\x12\x14\n\x0cHDB_TOTAL_GB\x10\xaf\xc2\xa1\x98\x01\x12\x16\n\x0eHDB_TOTAL_IOPS\x10\xfd\xe9\xd7\x93\x01\x12\x1b\n\x14HDB_TOTAL_THROUGHPUT\x10\xfe\xcc\x80\n\x12\x15\n\rHEALTH_CHECKS\x10\xae\xaf\xfc\x89\x01\x12\r\n\x06IMAGES\x10\xf8\xec\xb5\x07\x12\x10\n\tINSTANCES\x10\xde\x9c\xd0>\x12\x17\n\x0fINSTANCE_GROUPS\x10\xbe\xc9\xdb\xa9\x01\x12\x1e\n\x17INSTANCE_GROUP_MANAGERS\x10\xb0\xa2\xc5\x30\x12\x19\n\x12INSTANCE_TEMPLATES\x10\xef\xb7\xedk\x12\x15\n\rINTERCONNECTS\x10\x85\x8b\xfe\xc5\x01\x12*\n#INTERCONNECT_ATTACHMENTS_PER_REGION\x10\xd6\xd6\xa3L\x12+\n#INTERCONNECT_ATTACHMENTS_TOTAL_MBPS\x10\xf3\xba\xd9\xca\x01\x12\x1f\n\x17INTERCONNECT_TOTAL_GBPS\x10\xaa\xf1\x87\x88\x01\x12\x19\n\x12INTERNAL_ADDRESSES\x10\x80\xe9\xae^\x12\x31\n*INTERNAL_TRAFFIC_DIRECTOR_FORWARDING_RULES\x10\x84\xe9\x85\x7f\x12\x19\n\x12IN_PLACE_SNAPSHOTS\x10\x9d\x9d\x96H\x12\x18\n\x10IN_USE_ADDRESSES\x10\x90\xe2\xdf\xbf\x01\x12\x1e\n\x17IN_USE_BACKUP_SCHEDULES\x10\x91\x92\xd1\x0f\x12!\n\x19IN_USE_SNAPSHOT_SCHEDULES\x10\x93\xcc\xac\xdc\x01\x12\x1a\n\x12LOCAL_SSD_TOTAL_GB\x10\xc5\x98\xe3\x9d\x01\x12\x0e\n\x07M1_CPUS\x10\xa6\xdb\xde\x11\x12\x0e\n\x07M2_CPUS\x10\xc5\x8c\xb2\x1f\x12\x0e\n\x07M3_CPUS\x10\xe4\xbd\x85-\x12\x16\n\x0eMACHINE_IMAGES\x10\x90\xf3\x91\xd5\x01\x12\x0f\n\x08N2A_CPUS\x10\xad\xc7\xe2~\x12\x10\n\x08N2D_CPUS\x10\x8a\xdb\xdc\xa7\x01\x12\x0f\n\x07N2_CPUS\x10\x86\x83\xcb\xc6\x01\x12\x10\n\x08NETWORKS\x10\x85\xb8\xbf\xe7\x01\x12\x1a\n\x13NETWORK_ATTACHMENTS\x10\xdf\xfd\x87G\x12\x1e\n\x17NETWORK_ENDPOINT_GROUPS\x10\x8d\xb7\xda\x30\x12 \n\x19NETWORK_FIREWALL_POLICIES\x10\xbe\xdb\x9b\x30\x12*\n#NET_LB_SECURITY_POLICIES_PER_REGION\x10\xad\xfd\xa4K\x12/\n\'NET_LB_SECURITY_POLICY_RULES_PER_REGION\x10\xb3\x88\xe6\xa9\x01\x12\x39\n1NET_LB_SECURITY_POLICY_RULE_ATTRIBUTES_PER_REGION\x10\xf0\xe8\xb4\x94\x01\x12\x12\n\x0bNODE_GROUPS\x10\xb1\xfd\xde\x0b\x12\x16\n\x0eNODE_TEMPLATES\x10\x9c\xb2\xb9\xe2\x01\x12\x1d\n\x15NVIDIA_A100_80GB_GPUS\x10\xc8\xe8\xc7\x88\x01\x12\x18\n\x10NVIDIA_A100_GPUS\x10\x92\x80\xdf\xf0\x01\x12\x16\n\x0fNVIDIA_K80_GPUS\x10\x87\xec\x92N\x12\x16\n\x0eNVIDIA_L4_GPUS\x10\xba\xcd\xc8\xea\x01\x12\x17\n\x10NVIDIA_P100_GPUS\x10\xa1\x82\xe9p\x12\x1b\n\x14NVIDIA_P100_VWS_GPUS\x10\x8e\xdd\x83\x66\x12\x16\n\x0eNVIDIA_P4_GPUS\x10\xbe\xa7\xac\x87\x01\x12\x1a\n\x12NVIDIA_P4_VWS_GPUS\x10\xab\xd5\xf4\xfb\x01\x12\x15\n\x0eNVIDIA_T4_GPUS\x10\xc2\x81\x90$\x12\x1a\n\x12NVIDIA_T4_VWS_GPUS\x10\xaf\xeb\xbf\x98\x01\x12\x17\n\x10NVIDIA_V100_GPUS\x10\xa7\xb6\xd3=\x12\x18\n\x11PACKET_MIRRORINGS\x10\xa7\xea\xb6\x07\x12(\n!PD_EXTREME_TOTAL_PROVISIONED_IOPS\x10\xed\xd6\x97!\x12\x17\n\x10PREEMPTIBLE_CPUS\x10\xc9\x8d\xe3w\x12\x1f\n\x18PREEMPTIBLE_LOCAL_SSD_GB\x10\x88\x93\xaf|\x12(\n!PREEMPTIBLE_NVIDIA_A100_80GB_GPUS\x10\x8a\xea\xb9H\x12#\n\x1cPREEMPTIBLE_NVIDIA_A100_GPUS\x10\x90\x9c\xe9 \x12$\n\x1cPREEMPTIBLE_NVIDIA_H100_GPUS\x10\x97\xae\xe5\x8f\x01\x12#\n\x1bPREEMPTIBLE_NVIDIA_K80_GPUS\x10\xc9\xe0\xe5\xb2\x01\x12!\n\x1aPREEMPTIBLE_NVIDIA_L4_GPUS\x10\xb8\xb8\xf0/\x12$\n\x1cPREEMPTIBLE_NVIDIA_P100_GPUS\x10\x9f\x9e\xf3\xa0\x01\x12(\n PREEMPTIBLE_NVIDIA_P100_VWS_GPUS\x10\x8c\x9b\xc1\x95\x01\x12\"\n\x1aPREEMPTIBLE_NVIDIA_P4_GPUS\x10\xbc\x92\xd4\xcc\x01\x12%\n\x1ePREEMPTIBLE_NVIDIA_P4_VWS_GPUS\x10\xa9\xe2\xd0x\x12!\n\x1aPREEMPTIBLE_NVIDIA_T4_GPUS\x10\xc0\xec\xb7i\x12%\n\x1ePREEMPTIBLE_NVIDIA_T4_VWS_GPUS\x10\xad\xf8\x9b\x15\x12#\n\x1cPREEMPTIBLE_NVIDIA_V100_GPUS\x10\xa5\xd2\xddm\x12%\n\x1ePREEMPTIBLE_TPU_LITE_DEVICE_V5\x10\xfb\x91\x8cS\x12\'\n PREEMPTIBLE_TPU_LITE_PODSLICE_V5\x10\xc4\x91\xc5\x35\x12#\n\x1bPREEMPTIBLE_TPU_PODSLICE_V4\x10\x8c\xfc\xf4\xca\x01\x12=\n6PSC_ILB_CONSUMER_FORWARDING_RULES_PER_PRODUCER_NETWORK\x10\x83\x93\x9dn\x12\'\n PSC_INTERNAL_LB_FORWARDING_RULES\x10\xfb\xa2\xcbP\x12\"\n\x1aPUBLIC_ADVERTISED_PREFIXES\x10\xcc\xa1\xe2\xe0\x01\x12!\n\x19PUBLIC_DELEGATED_PREFIXES\x10\xb6\x92\xf3\xfd\x01\x12\x1b\n\x14REGIONAL_AUTOSCALERS\x10\xbc\x9c\x80\x0e\x12\x31\n*REGIONAL_EXTERNAL_MANAGED_BACKEND_SERVICES\x10\xdd\xec\x82\x02\x12\x35\n-REGIONAL_EXTERNAL_NETWORK_LB_BACKEND_SERVICES\x10\xed\xea\xa5\xc3\x01\x12\'\n REGIONAL_INSTANCE_GROUP_MANAGERS\x10\x90\xbe\xf3\x11\x12,\n%REGIONAL_INTERNAL_LB_BACKEND_SERVICES\x10\x90\xee\xe5\x41\x12\x31\n*REGIONAL_INTERNAL_MANAGED_BACKEND_SERVICES\x10\xab\xcf\xf4-\x12;\n3REGIONAL_INTERNAL_TRAFFIC_DIRECTOR_BACKEND_SERVICES\x10\xd8\xf6\xb1\xe6\x01\x12\x13\n\x0cRESERVATIONS\x10\xa7\xbc\xc8\x0f\x12\x18\n\x11RESOURCE_POLICIES\x10\xe1\x9c\x84(\x12\x0f\n\x07ROUTERS\x10\xaa\xbc\x8b\xeb\x01\x12\x0e\n\x06ROUTES\x10\xca\x96\xba\x83\x01\x12\x18\n\x11SECURITY_POLICIES\x10\xef\xa6\xafZ\x12#\n\x1cSECURITY_POLICIES_PER_REGION\x10\xc6\xa6\xe0v\x12\x31\n)SECURITY_POLICY_ADVANCED_RULES_PER_REGION\x10\xad\xe7\xa5\xb1\x01\x12#\n\x1bSECURITY_POLICY_CEVAL_RULES\x10\xc9\xa7\xc0\xe0\x01\x12\x1c\n\x15SECURITY_POLICY_RULES\x10\xa9\xd4\x87\x61\x12\'\n SECURITY_POLICY_RULES_PER_REGION\x10\xcc\xc8\xa9<\x12\x1b\n\x13SERVICE_ATTACHMENTS\x10\xe6\xb1\xeb\xe0\x01\x12\x11\n\tSNAPSHOTS\x10\x8f\xe6\xdf\xa3\x01\x12\x13\n\x0cSSD_TOTAL_GB\x10\xd1\xaf\x8fM\x12\x18\n\x10SSL_CERTIFICATES\x10\xaf\x82\xb6\xb4\x01\x12\x14\n\x0cSSL_POLICIES\x10\xc3\xf4\xc0\xf9\x01\x12\x17\n\x10STATIC_ADDRESSES\x10\xf1\xad\xd2,\x12\x1e\n\x16STATIC_BYOIP_ADDRESSES\x10\xf1\x8a\xc2\x83\x01\x12+\n#STATIC_EXTERNAL_IPV6_ADDRESS_RANGES\x10\x96\xe1\x9d\xe1\x01\x12\x13\n\x0bSUBNETWORKS\x10\xa5\xfc\xf3\xc8\x01\x12\x10\n\x08T2A_CPUS\x10\xe7\xe1\xfe\xf8\x01\x12\x0f\n\x08T2D_CPUS\x10\xc4\xf5\xf8!\x12\x1b\n\x14TARGET_HTTPS_PROXIES\x10\xca\xcb\xd6h\x12\x1a\n\x13TARGET_HTTP_PROXIES\x10\xa3\xf5\xa0N\x12\x18\n\x10TARGET_INSTANCES\x10\xb0\xda\xd5\x87\x01\x12\x14\n\x0cTARGET_POOLS\x10\x89\x97\x88\xa6\x01\x12\x19\n\x12TARGET_SSL_PROXIES\x10\xeb\xe4\xf5K\x12\x19\n\x12TARGET_TCP_PROXIES\x10\xc0\x9e\xf3V\x12\x1a\n\x13TARGET_VPN_GATEWAYS\x10\xa8\xbb\xe3#\x12\x1a\n\x12TPU_LITE_DEVICE_V5\x10\xfd\x84\xb0\xd6\x01\x12\x1b\n\x14TPU_LITE_PODSLICE_V5\x10\xc6\xd3\x87\x06\x12\x16\n\x0fTPU_PODSLICE_V4\x10\xca\x87\xa2\x66\x12\x10\n\x08URL_MAPS\x10\x87\xcf\xc7\xb4\x01\x12.\n\'VARIABLE_IPV6_PUBLIC_DELEGATED_PREFIXES\x10\xa1\xf6\x9c=\x12\x13\n\x0cVPN_GATEWAYS\x10\xba\x8b\xfe\x10\x12\x12\n\x0bVPN_TUNNELS\x10\x80\xd1\xdf\x31\x12\x1b\n\x14XPN_SERVICE_PROJECTS\x10\xad\x87\xb2-B\x08\n\x06_limitB\t\n\x07_metricB\x08\n\x06_ownerB\x08\n\x06_usage\"\xe0\x03\n\x11QuotaExceededInfo\x12R\n\ndimensions\x18\xcd\xff\xc8\xc5\x01 \x03(\x0b\x32:.google.cloud.compute.v1.QuotaExceededInfo.DimensionsEntry\x12\x1d\n\x0c\x66uture_limit\x18\xbf\xbc\xda\xd9\x01 \x01(\x01H\x00\x88\x01\x01\x12\x15\n\x05limit\x18\xbb\x97\x8d\x31 \x01(\x01H\x01\x88\x01\x01\x12\x1b\n\nlimit_name\x18\x8f\x89\xf0\xbd\x01 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0bmetric_name\x18\xba\x97\xb9\xc3\x01 \x01(\tH\x03\x88\x01\x01\x12\x1f\n\x0erollout_status\x18\xc0\xe4\x96\xe3\x01 \x01(\tH\x04\x88\x01\x01\x1a\x31\n\x0f\x44imensionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"e\n\rRolloutStatus\x12\x1c\n\x18UNDEFINED_ROLLOUT_STATUS\x10\x00\x12\x13\n\x0bIN_PROGRESS\x10\x87\xa8\xdd\xdf\x01\x12!\n\x1aROLLOUT_STATUS_UNSPECIFIED\x10\xb8\xd7\xe7\x0c\x42\x0f\n\r_future_limitB\x08\n\x06_limitB\r\n\x0b_limit_nameB\x0e\n\x0c_metric_nameB\x11\n\x0f_rollout_status\"\x88\t\n\x12QuotaStatusWarning\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\tH\x00\x88\x01\x01\x12.\n\x04\x64\x61ta\x18\xaa\xdf\xbb\x01 \x03(\x0b\x32\x1d.google.cloud.compute.v1.Data\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x01\x88\x01\x01\"\xfc\x07\n\x04\x43ode\x12\x12\n\x0eUNDEFINED_CODE\x10\x00\x12\x15\n\x0e\x43LEANUP_FAILED\x10\xd8\x8c\xd6G\x12 \n\x18\x44\x45PRECATED_RESOURCE_USED\x10\xc2\xdf\xeb\xba\x01\x12\x1c\n\x14\x44\x45PRECATED_TYPE_USED\x10\x96\xa4\x9e\xa5\x01\x12(\n DISK_SIZE_LARGER_THAN_IMAGE_SIZE\x10\x97\x81\x95\xb0\x01\x12\x1e\n\x16\x45XPERIMENTAL_TYPE_USED\x10\x8b\x8e\xc1\xd7\x01\x12\x1b\n\x14\x45XTERNAL_API_WARNING\x10\xc3\xbf\xdaS\x12\x1d\n\x15\x46IELD_VALUE_OVERRIDEN\x10\xaf\xb6\x99\x9d\x01\x12#\n\x1bINJECTED_KERNELS_DEPRECATED\x10\x8b\xd9\x82\xc7\x01\x12\x34\n,INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB\x10\xce\x9b\xbc\xbf\x01\x12 \n\x18LARGE_DEPLOYMENT_WARNING\x10\xa6\xe7\xc8\xe5\x01\x12!\n\x1aLIST_OVERHEAD_QUOTA_EXCEED\x10\xc5\xb0\xda\x16\x12\x1f\n\x17MISSING_TYPE_DEPENDENCY\x10\xf7\xf8\xa2\xa4\x01\x12%\n\x1dNEXT_HOP_ADDRESS_NOT_ASSIGNED\x10\x87\xa5\xfa\x9a\x01\x12\"\n\x1aNEXT_HOP_CANNOT_IP_FORWARD\x10\xe7\xea\xe7\xb6\x01\x12.\n\'NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE\x10\x92\xe8\xfc\x45\x12#\n\x1bNEXT_HOP_INSTANCE_NOT_FOUND\x10\xce\xcc\xaf\xdd\x01\x12\'\n NEXT_HOP_INSTANCE_NOT_ON_NETWORK\x10\xc2\xe8\x9dt\x12\x1c\n\x14NEXT_HOP_NOT_RUNNING\x10\xb1\xcf\xf0\xc6\x01\x12\x19\n\x12NOT_CRITICAL_ERROR\x10\xd4\xa8\xb7\x32\x12\x19\n\x12NO_RESULTS_ON_PAGE\x10\x88\xa6\xa9\x0e\x12\x16\n\x0fPARTIAL_SUCCESS\x10\x85\xae\x87\x13\x12\x1e\n\x16QUOTA_INFO_UNAVAILABLE\x10\xa6\xd2\x8c\x91\x01\x12\x1d\n\x16REQUIRED_TOS_AGREEMENT\x10\x83\xce\xe4\x01\x12\x31\n)RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING\x10\xc1\xf4\xed\xec\x01\x12\x1b\n\x14RESOURCE_NOT_DELETED\x10\xbc\xb7\xb2P\x12!\n\x19SCHEMA_VALIDATION_IGNORED\x10\xca\xd4\x9f\x83\x01\x12(\n!SINGLE_INSTANCE_PROPERTY_TEMPLATE\x10\xd1\x89\xf8\x7f\x12\x1d\n\x15UNDECLARED_PROPERTIES\x10\x9f\x86\x9b\xba\x01\x12\x12\n\x0bUNREACHABLE\x10\xb4\xbd\xad\x06\x42\x07\n\x05_codeB\n\n\x08_message\"\xcc\x01\n\x07RawDisk\x12\x1f\n\x0e\x63ontainer_type\x18\xb8\xc8\x82\x98\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\rsha1_checksum\x18\xbd\x94\xf8\x95\x01 \x01(\tH\x01\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\x02\x88\x01\x01\"8\n\rContainerType\x12\x1c\n\x18UNDEFINED_CONTAINER_TYPE\x10\x00\x12\t\n\x03TAR\x10\x85\x87\x05\x42\x11\n\x0f_container_typeB\x10\n\x0e_sha1_checksumB\t\n\x07_source\"\xd7\x02\n,RecreateInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x93\x01\n;instance_group_managers_recreate_instances_request_resource\x18\x80\xc2\x9a\n \x01(\x0b\x32\x46.google.cloud.compute.v1.InstanceGroupManagersRecreateInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xdb\x02\n2RecreateInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x8d\x01\n8region_instance_group_managers_recreate_request_resource\x18\x94\xfc\xc4Q \x01(\x0b\x32\x43.google.cloud.compute.v1.RegionInstanceGroupManagersRecreateRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa8\x01\n\tReference\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0ereference_type\x18\xae\xbf\x83v \x01(\tH\x01\x88\x01\x01\x12\x19\n\x08referrer\x18\x9f\xf8\xb9\xa7\x01 \x01(\tH\x02\x88\x01\x01\x12\x16\n\x06target\x18\x91\xe3\xf9[ \x01(\tH\x03\x88\x01\x01\x42\x07\n\x05_kindB\x11\n\x0f_reference_typeB\x0b\n\t_referrerB\t\n\x07_target\"\x84\x05\n\x06Region\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12R\n\x14quota_status_warning\x18\xf6\x89\xba\x90\x01 \x01(\x0b\x32+.google.cloud.compute.v1.QuotaStatusWarningH\x06\x88\x01\x01\x12\x31\n\x06quotas\x18\xfb\xa1\xe2; \x03(\x0b\x32\x1e.google.cloud.compute.v1.Quota\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x08\x88\x01\x01\x12\x1c\n\x0csupports_pzs\x18\xee\xf6\x85( \x01(\x08H\t\x88\x01\x01\x12\x10\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\t\"4\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0b\n\x04\x44OWN\x10\xa2\xb9\x80\x01\x12\x07\n\x02UP\x10\x9b\x15\x42\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x17\n\x15_quota_status_warningB\x0c\n\n_self_linkB\t\n\x07_statusB\x0f\n\r_supports_pzs\"\x88\x01\n\x1aRegionAddressesMoveRequest\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12$\n\x13\x64\x65stination_address\x18\xc3\xb1\x9e\xb1\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x16\n\x14_destination_address\"\xab\x02\n\x14RegionAutoscalerList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x35\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32#.google.cloud.compute.v1.Autoscaler\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa7\x02\n\x12RegionDiskTypeList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x33\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32!.google.cloud.compute.v1.DiskType\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"E\n%RegionDisksAddResourcePoliciesRequest\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\"H\n(RegionDisksRemoveResourcePoliciesRequest\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\"@\n\x18RegionDisksResizeRequest\x12\x18\n\x07size_gb\x18\xd9\x8b\x80\xec\x01 \x01(\x03H\x00\x88\x01\x01\x42\n\n\x08_size_gb\"h\n\'RegionDisksStartAsyncReplicationRequest\x12$\n\x14\x61sync_secondary_disk\x18\xab\x83\xe3> \x01(\tH\x00\x88\x01\x01\x42\x17\n\x15_async_secondary_disk\"\xb1\x02\n\x17RegionInstanceGroupList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x38\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32&.google.cloud.compute.v1.InstanceGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"E\n1RegionInstanceGroupManagerDeleteInstanceConfigReq\x12\x10\n\x05names\x18\xc8\xae\xef\x31 \x03(\t\"\xbf\x02\n\x1eRegionInstanceGroupManagerList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManager\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x80\x01\n0RegionInstanceGroupManagerPatchInstanceConfigReq\x12L\n\x14per_instance_configs\x18\xa9\xd5\xf8\xfa\x01 \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\"\x81\x01\n1RegionInstanceGroupManagerUpdateInstanceConfigReq\x12L\n\x14per_instance_configs\x18\xa9\xd5\xf8\xfa\x01 \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\"J\n2RegionInstanceGroupManagersAbandonInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"\xfb\x02\n.RegionInstanceGroupManagersApplyUpdatesRequest\x12\x1e\n\rall_instances\x18\xe0\xba\xbe\xc0\x01 \x01(\x08H\x00\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\x12\x1f\n\x0eminimal_action\x18\x94\x8d\x82\x81\x01 \x01(\tH\x01\x88\x01\x01\x12.\n\x1emost_disruptive_allowed_action\x18\x8d\xce\xc2\x1f \x01(\tH\x02\x88\x01\x01\"-\n\rMinimalAction\x12\x1c\n\x18UNDEFINED_MINIMAL_ACTION\x10\x00\"K\n\x1bMostDisruptiveAllowedAction\x12,\n(UNDEFINED_MOST_DISRUPTIVE_ALLOWED_ACTION\x10\x00\x42\x10\n\x0e_all_instancesB\x11\n\x0f_minimal_actionB!\n\x1f_most_disruptive_allowed_action\"u\n1RegionInstanceGroupManagersCreateInstancesRequest\x12@\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\"\xa4\x01\n1RegionInstanceGroupManagersDeleteInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\x12\x32\n\"skip_instances_on_validation_error\x18\xa1\xf6\xaf\x13 \x01(\x08H\x00\x88\x01\x01\x42%\n#_skip_instances_on_validation_error\"\xaa\x01\n-RegionInstanceGroupManagersListErrorsResponse\x12\x44\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x32.google.cloud.compute.v1.InstanceManagedByIgmError\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_next_page_token\"\xee\x01\n2RegionInstanceGroupManagersListInstanceConfigsResp\x12<\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x00\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x01\x88\x01\x01\x42\x12\n\x10_next_page_tokenB\n\n\x08_warning\"\xb0\x01\n0RegionInstanceGroupManagersListInstancesResponse\x12G\n\x11managed_instances\x18\xde\x9b\xa9\xa0\x01 \x03(\x0b\x32(.google.cloud.compute.v1.ManagedInstance\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_next_page_token\"B\n*RegionInstanceGroupManagersRecreateRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"I\n1RegionInstanceGroupManagersResumeInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"y\n0RegionInstanceGroupManagersSetTargetPoolsRequest\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0ctarget_pools\x18\xa9\x9f\xa0\xa0\x01 \x03(\tB\x0e\n\x0c_fingerprint\"i\n-RegionInstanceGroupManagersSetTemplateRequest\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tH\x00\x88\x01\x01\x42\x14\n\x12_instance_template\"H\n0RegionInstanceGroupManagersStartInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"r\n/RegionInstanceGroupManagersStopInstancesRequest\x12\x1a\n\nforce_stop\x18\xd6\xa1\xa1@ \x01(\x08H\x00\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\tB\r\n\x0b_force_stop\"{\n2RegionInstanceGroupManagersSuspendInstancesRequest\x12\x1d\n\rforce_suspend\x18\xe8\xed\x96\r \x01(\x08H\x00\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\tB\x10\n\x0e_force_suspend\"\xc4\x02\n!RegionInstanceGroupsListInstances\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x41\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32/.google.cloud.compute.v1.InstanceWithNamedPorts\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xd0\x01\n(RegionInstanceGroupsListInstancesRequest\x12\x1e\n\x0einstance_state\x18\xe7\xf0\xfc+ \x01(\tH\x00\x88\x01\x01\x12\x19\n\tport_name\x18\x89\x87\xe7\x13 \x01(\tH\x01\x88\x01\x01\"H\n\rInstanceState\x12\x1c\n\x18UNDEFINED_INSTANCE_STATE\x10\x00\x12\t\n\x03\x41LL\x10\x81\xfb\x03\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x42\x11\n\x0f_instance_stateB\x0c\n\n_port_name\"\x94\x01\n(RegionInstanceGroupsSetNamedPortsRequest\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12;\n\x0bnamed_ports\x18\x8c\xc7\xf2\xcb\x01 \x03(\x0b\x32\".google.cloud.compute.v1.NamedPortB\x0e\n\x0c_fingerprint\"\x9d\x02\n\nRegionList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x31\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1f.google.cloud.compute.v1.Region\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"{\n1RegionNetworkEndpointGroupsAttachEndpointsRequest\x12\x46\n\x11network_endpoints\x18\xad\x91\xbaG \x03(\x0b\x32(.google.cloud.compute.v1.NetworkEndpoint\"{\n1RegionNetworkEndpointGroupsDetachEndpointsRequest\x12\x46\n\x11network_endpoints\x18\xad\x91\xbaG \x03(\x0b\x32(.google.cloud.compute.v1.NetworkEndpoint\"\x81\x02\n:RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse\x12\x88\x01\n\x10\x66irewall_policys\x18\xc2\xca\xfc\xc3\x01 \x03(\x0b\x32j.google.cloud.compute.v1.RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy\x12\x38\n\tfirewalls\x18\xf3\xc6\xe8\x81\x01 \x03(\x0b\x32!.google.cloud.compute.v1.Firewall\"\x94\x04\nQRegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy\x12\x1c\n\x0c\x64isplay_name\x18\xe8\x87\x91\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12O\n\x16packet_mirroring_rules\x18\xc4\xff\xc0\xfd\x01 \x03(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRule\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x02\x88\x01\x01\x12=\n\x05rules\x18\xf7\x91\xf5\x33 \x03(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRule\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x03\x88\x01\x01\"\x99\x01\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x10\n\tHIERARCHY\x10\x95\xc4\xaa!\x12\x0f\n\x07NETWORK\x10\x8e\xcc\xb3\xc5\x01\x12\x17\n\x10NETWORK_REGIONAL\x10\xb0\xe2\xfdZ\x12\x14\n\rSYSTEM_GLOBAL\x10\xb3\x97\xd4\x1c\x12\x16\n\x0fSYSTEM_REGIONAL\x10\xaf\x8c\x92M\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x0f\n\r_display_nameB\x07\n\x05_nameB\x0b\n\t_priorityB\x07\n\x05_type\"\xd1\x01\n\x16RegionSetLabelsRequest\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x00\x88\x01\x01\x12O\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32;.google.cloud.compute.v1.RegionSetLabelsRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x14\n\x12_label_fingerprint\"\xb3\x01\n\x16RegionSetPolicyRequest\x12\x36\n\x08\x62indings\x18\x8e\xc5\xa4\xc0\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Binding\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x06policy\x18\xb2\xca\xb6+ \x01(\x0b\x32\x1f.google.cloud.compute.v1.PolicyH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_policy\"Q\n1RegionTargetHttpsProxiesSetSslCertificatesRequest\x12\x1c\n\x10ssl_certificates\x18\x8f\xa2\xc3\xae\x01 \x03(\t\"f\n\x1cRegionUrlMapsValidateRequest\x12\x39\n\x08resource\x18\x8e\x88\xaf] \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapH\x00\x88\x01\x01\x42\x0b\n\t_resource\"\x94\x01\n&RemoveAssociationFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\r\n\x0b_request_id\"\xbe\x01\n-RemoveAssociationNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\r\n\x0b_request_id\"\x9f\x01\n2RemoveAssociationOrganizationSecurityPolicyRequest\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x07\n\x05_nameB\r\n\x0b_request_id\"\xe5\x01\n3RemoveAssociationRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\r\n\x0b_request_id\"\xb3\x02\n\"RemoveHealthCheckTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x12\x80\x01\n1target_pools_remove_health_check_request_resource\x18\xb3\xe7\xb6\x91\x01 \x01(\x0b\x32<.google.cloud.compute.v1.TargetPoolsRemoveHealthCheckRequestB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa7\x02\n\x1fRemoveInstanceTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x12x\n-target_pools_remove_instance_request_resource\x18\x83\xc0\x8b\x0e \x01(\x0b\x32\x39.google.cloud.compute.v1.TargetPoolsRemoveInstanceRequestB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb4\x02\n#RemoveInstancesInstanceGroupRequest\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12\x81\x01\n1instance_groups_remove_instances_request_resource\x18\xb9\xd1\xb7\xba\x01 \x01(\x0b\x32=.google.cloud.compute.v1.InstanceGroupsRemoveInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xcf\x01\n5RemovePacketMirroringRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xf6\x01\n\x1bRemovePeeringNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12p\n(networks_remove_peering_request_resource\x18\xfe\xdb\xe9\xc8\x01 \x01(\x0b\x32\x35.google.cloud.compute.v1.NetworksRemovePeeringRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa3\x02\n!RemoveResourcePoliciesDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12}\n/disks_remove_resource_policies_request_resource\x18\xee\xc1\xa1\xd0\x01 \x01(\x0b\x32;.google.cloud.compute.v1.DisksRemoveResourcePoliciesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xb3\x02\n%RemoveResourcePoliciesInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x84\x01\n3instances_remove_resource_policies_request_resource\x18\xf6\xdd\xbc\x17 \x01(\x0b\x32?.google.cloud.compute.v1.InstancesRemoveResourcePoliciesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xba\x02\n\'RemoveResourcePoliciesRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x89\x01\n6region_disks_remove_resource_policies_request_resource\x18\xa3\xc3\x95\x04 \x01(\x0b\x32\x41.google.cloud.compute.v1.RegionDisksRemoveResourcePoliciesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x96\x01\n\x1fRemoveRuleFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xc0\x01\n&RemoveRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xa1\x01\n+RemoveRuleOrganizationSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xe7\x01\n,RemoveRuleRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xb4\x01\n%RemoveRuleRegionSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"\x8d\x01\n\x1fRemoveRuleSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"\xe3\x02\n&ReportFaultyReservationSubBlockRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12%\n\x15reservation_sub_block\x18\x9b\xca\xec\n \x01(\tB\x03\xe0\x41\x02\x12\x88\x01\n5reservation_sub_blocks_report_faulty_request_resource\x18\xc2\xc9\xfd\xd6\x01 \x01(\x0b\x32@.google.cloud.compute.v1.ReservationSubBlocksReportFaultyRequestB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa8\x02\n!ReportHostAsFaultyInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12~\n0instances_report_host_as_faulty_request_resource\x18\xa6\x94\xcd\xeb\x01 \x01(\x0b\x32;.google.cloud.compute.v1.InstancesReportHostAsFaultyRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x7f\n\x13RequestMirrorPolicy\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0emirror_percent\x18\xc5\x8f\xa5\x84\x01 \x01(\x01H\x01\x88\x01\x01\x42\x12\n\x10_backend_serviceB\x11\n\x0f_mirror_percent\"\x8b\x02\n\"RequestRemovePeeringNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12~\n0networks_request_remove_peering_request_resource\x18\xce\xe4\xf7G \x01(\x0b\x32<.google.cloud.compute.v1.NetworksRequestRemovePeeringRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xdb\x13\n\x0bReservation\x12k\n\x1b\x61\x64vanced_deployment_control\x18\xa0\x92\xe6\xc3\x01 \x01(\x0b\x32=.google.cloud.compute.v1.ReservationAdvancedDeploymentControlH\x00\x88\x01\x01\x12_\n\x15\x61ggregate_reservation\x18\xcc\xf2\x83\x8b\x01 \x01(\x0b\x32\x37.google.cloud.compute.v1.AllocationAggregateReservationH\x01\x88\x01\x01\x12\x1b\n\ncommitment\x18\x95\x96\xf3\xe5\x01 \x01(\tH\x02\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x03\x88\x01\x01\x12I\n\x15\x64\x65lete_after_duration\x18\xab\x9b\xbf\x9a\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x04\x88\x01\x01\x12\x1e\n\x0e\x64\x65lete_at_time\x18\xc5\xf1\xdb\' \x01(\tH\x05\x88\x01\x01\x12 \n\x0f\x64\x65ployment_type\x18\xf4\x80\x96\xbd\x01 \x01(\tH\x06\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x07\x88\x01\x01\x12)\n\x18\x65\x61rly_access_maintenance\x18\x94\x8e\xff\xa3\x01 \x01(\tH\x08\x88\x01\x01\x12,\n\x1b\x65nable_emergent_maintenance\x18\x89\xe2\xd7\xa8\x01 \x01(\x08H\t\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\n\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x0b\x88\x01\x01\x12\x1e\n\x12linked_commitments\x18\xd8\xfd\xc8\xe0\x01 \x03(\t\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0c\x88\x01\x01\x12\x42\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32*.google.cloud.compute.v1.ReservationParamsH\r\x88\x01\x01\x12 \n\x0fprotection_tier\x18\x88\x9f\xa7\xf0\x01 \x01(\tH\x0e\x88\x01\x01\x12g\n\x1areservation_sharing_policy\x18\xc8\xb5\x9b\x62 \x01(\x0b\x32;.google.cloud.compute.v1.AllocationReservationSharingPolicyH\x0f\x88\x01\x01\x12X\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\x0b\x32:.google.cloud.compute.v1.Reservation.ResourcePoliciesEntry\x12R\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32\x31.google.cloud.compute.v1.AllocationResourceStatusH\x10\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x11\x88\x01\x01\x12\x1f\n\x0fscheduling_type\x18\x85\xfe\xa4_ \x01(\tH\x12\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x13\x88\x01\x01\x12\x46\n\x0eshare_settings\x18\x83\x91\x94\x7f \x01(\x0b\x32&.google.cloud.compute.v1.ShareSettingsH\x14\x88\x01\x01\x12`\n\x14specific_reservation\x18\xbf\xa0\x89\xc1\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.AllocationSpecificSKUReservationH\x15\x88\x01\x01\x12-\n\x1dspecific_reservation_required\x18\x9f\xc7\x83l \x01(\x08H\x16\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x17\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x18\x88\x01\x01\x1a\x37\n\x15ResourcePoliciesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"a\n\x0e\x44\x65ploymentType\x12\x1d\n\x19UNDEFINED_DEPLOYMENT_TYPE\x10\x00\x12\x0c\n\x05\x44\x45NSE\x10\xff\x95\xfb\x1e\x12\"\n\x1b\x44\x45PLOYMENT_TYPE_UNSPECIFIED\x10\xcc\xf7\xfdo\"t\n\x16\x45\x61rlyAccessMaintenance\x12&\n\"UNDEFINED_EARLY_ACCESS_MAINTENANCE\x10\x00\x12\x16\n\x0fNO_EARLY_ACCESS\x10\x9e\xcf\xa1i\x12\x0c\n\x05WAVE1\x10\xd8\xa8\xa3\'\x12\x0c\n\x05WAVE2\x10\xd9\xa8\xa3\'\"\x80\x01\n\x0eProtectionTier\x12\x1d\n\x19UNDEFINED_PROTECTION_TIER\x10\x00\x12\x19\n\x12\x43\x41PACITY_OPTIMIZED\x10\xc2\xef\xa7\x08\x12\"\n\x1bPROTECTION_TIER_UNSPECIFIED\x10\xe0\x99\x87}\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\"\x80\x01\n\x0eSchedulingType\x12\x1d\n\x19UNDEFINED_SCHEDULING_TYPE\x10\x00\x12\x0f\n\x07GROUPED\x10\xbe\xd6\xa3\xe2\x01\x12*\n\"GROUP_MAINTENANCE_TYPE_UNSPECIFIED\x10\xbe\xf6\x9d\xd5\x01\x12\x12\n\x0bINDEPENDENT\x10\xda\x96\xc8<\"s\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x10\n\x08UPDATING\x10\xc6\xee\xec\xeb\x01\x42\x1e\n\x1c_advanced_deployment_controlB\x18\n\x16_aggregate_reservationB\r\n\x0b_commitmentB\x15\n\x13_creation_timestampB\x18\n\x16_delete_after_durationB\x11\n\x0f_delete_at_timeB\x12\n\x10_deployment_typeB\x0e\n\x0c_descriptionB\x1b\n\x19_early_access_maintenanceB\x1e\n\x1c_enable_emergent_maintenanceB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_paramsB\x12\n\x10_protection_tierB\x1d\n\x1b_reservation_sharing_policyB\x12\n\x10_resource_statusB\x10\n\x0e_satisfies_pzsB\x12\n\x10_scheduling_typeB\x0c\n\n_self_linkB\x11\n\x0f_share_settingsB\x17\n\x15_specific_reservationB \n\x1e_specific_reservation_requiredB\t\n\x07_statusB\x07\n\x05_zone\"\xaa\x02\n$ReservationAdvancedDeploymentControl\x12-\n\x1creservation_operational_mode\x18\x83\xa4\xb4\xee\x01 \x01(\tH\x00\x88\x01\x01\"\xb1\x01\n\x1aReservationOperationalMode\x12*\n&UNDEFINED_RESERVATION_OPERATIONAL_MODE\x10\x00\x12\x14\n\x0c\x41LL_CAPACITY\x10\xb8\xb3\xb7\xee\x01\x12 \n\x19HIGHLY_AVAILABLE_CAPACITY\x10\xa0\xba\xee\x34\x12/\n(RESERVATION_OPERATIONAL_MODE_UNSPECIFIED\x10\x9b\xf6\xd2\\B\x1f\n\x1d_reservation_operational_mode\"\xb0\x02\n\x13ReservationAffinity\x12)\n\x18\x63onsume_reservation_type\x18\xb0\xc3\xb3\x8f\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03key\x18\xdf\xbc\x06 \x01(\tH\x01\x88\x01\x01\x12\x11\n\x06values\x18\xa2\xba\x96w \x03(\t\"\xa1\x01\n\x16\x43onsumeReservationType\x12&\n\"UNDEFINED_CONSUME_RESERVATION_TYPE\x10\x00\x12\x16\n\x0f\x41NY_RESERVATION\x10\xb9\xc3\xaf_\x12\x15\n\x0eNO_RESERVATION\x10\xae\xcc\xdeP\x12\x1b\n\x14SPECIFIC_RESERVATION\x10\x9f\xa8\xcfm\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x1b\n\x19_consume_reservation_typeB\x06\n\x04_key\"\xc2\x03\n\x19ReservationAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12O\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32=.google.cloud.compute.v1.ReservationAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a]\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12>\n\x05value\x18\x02 \x01(\x0b\x32/.google.cloud.compute.v1.ReservationsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xac\x08\n\x10ReservationBlock\x12\x15\n\x05\x63ount\x18\x8f\xa2\x9d- \x01(\x05H\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12P\n\x0bhealth_info\x18\xb1\xe9\x98p \x01(\x0b\x32\x33.google.cloud.compute.v1.ReservationBlockHealthInfoH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x1d\n\x0cin_use_count\x18\xbd\xab\xa6\xeb\x01 \x01(\x05H\x04\x88\x01\x01\x12\"\n\x11in_use_host_count\x18\xca\x87\xcd\xad\x01 \x01(\x05H\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12]\n\x11physical_topology\x18\xd7\xa9\xb4\x85\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.ReservationBlockPhysicalTopologyH\x08\x88\x01\x01\x12W\n\x17reservation_maintenance\x18\xa0\x86\xb5\xa2\x01 \x01(\x0b\x32-.google.cloud.compute.v1.GroupMaintenanceInfoH\t\x88\x01\x01\x12,\n\x1breservation_sub_block_count\x18\xeb\xb1\xdd\x9d\x01 \x01(\x05H\n\x88\x01\x01\x12\x32\n\"reservation_sub_block_in_use_count\x18\xe1\xfc\xd8X \x01(\x05H\x0b\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\r\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x0e\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0f\x88\x01\x01\"a\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B\x08\n\x06_countB\x15\n\x13_creation_timestampB\x0e\n\x0c_health_infoB\x05\n\x03_idB\x0f\n\r_in_use_countB\x14\n\x12_in_use_host_countB\x07\n\x05_kindB\x07\n\x05_nameB\x14\n\x12_physical_topologyB\x1a\n\x18_reservation_maintenanceB\x1e\n\x1c_reservation_sub_block_countB%\n#_reservation_sub_block_in_use_countB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\t\n\x07_statusB\x07\n\x05_zone\"\xce\x02\n\x1aReservationBlockHealthInfo\x12)\n\x18\x64\x65graded_sub_block_count\x18\xcd\xe8\xb4\xda\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1e\n\rhealth_status\x18\xb5\xd6\xba\xb5\x01 \x01(\tH\x01\x88\x01\x01\x12\'\n\x17healthy_sub_block_count\x18\xbc\xb9\xc6\x02 \x01(\x05H\x02\x88\x01\x01\"q\n\x0cHealthStatus\x12\x1b\n\x17UNDEFINED_HEALTH_STATUS\x10\x00\x12\x10\n\x08\x44\x45GRADED\x10\xae\xa6\xa0\xbd\x01\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12!\n\x19HEALTH_STATUS_UNSPECIFIED\x10\x8d\x82\xfa\xe5\x01\x42\x1b\n\x19_degraded_sub_block_countB\x10\n\x0e_health_statusB\x1a\n\x18_healthy_sub_block_count\"\xc2\x01\n ReservationBlockPhysicalTopology\x12\x15\n\x05\x62lock\x18\x8d\x89\xdf, \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07\x63luster\x18\xfa\xa3\xec\x9f\x01 \x01(\tH\x01\x88\x01\x01\x12W\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32\x41.google.cloud.compute.v1.ReservationBlockPhysicalTopologyInstanceB\x08\n\x06_blockB\n\n\x08_cluster\"\x9d\x02\n(ReservationBlockPhysicalTopologyInstance\x12\x1b\n\x0binstance_id\x18\x85\xb2\xd8\x15 \x01(\x04H\x00\x88\x01\x01\x12~\n\x16physical_host_topology\x18\xbe\x93\xaf\xba\x01 \x01(\x0b\x32U.google.cloud.compute.v1.ReservationBlockPhysicalTopologyInstancePhysicalHostTopologyH\x01\x88\x01\x01\x12\x1a\n\nproject_id\x18\x81\xc8\xd2T \x01(\x04H\x02\x88\x01\x01\x42\x0e\n\x0c_instance_idB\x19\n\x17_physical_host_topologyB\r\n\x0b_project_id\"\x87\x01\n\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32,.google.cloud.compute.v1.ReservationSubBlock\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x8c\x04\n\'ReservationSubBlocksReportFaultyRequest\x12#\n\x13\x64isruption_schedule\x18\x83\xc5\xdb- \x01(\tH\x00\x88\x01\x01\x12!\n\x11\x66\x61ilure_component\x18\x88\xc9\xad\x0c \x01(\tH\x01\x88\x01\x01\x12\x65\n\rfault_reasons\x18\x92\xab\x91P \x03(\x0b\x32K.google.cloud.compute.v1.ReservationSubBlocksReportFaultyRequestFaultReason\"r\n\x12\x44isruptionSchedule\x12!\n\x1dUNDEFINED_DISRUPTION_SCHEDULE\x10\x00\x12\'\n\x1f\x44ISRUPTION_SCHEDULE_UNSPECIFIED\x10\xdb\xee\xc8\x9e\x01\x12\x10\n\tIMMEDIATE\x10\x91\x8f\xf3H\"\x8f\x01\n\x10\x46\x61ilureComponent\x12\x1f\n\x1bUNDEFINED_FAILURE_COMPONENT\x10\x00\x12%\n\x1d\x46\x41ILURE_COMPONENT_UNSPECIFIED\x10\xa0\xf3\xa7\x9e\x01\x12\x1d\n\x15MULTIPLE_FAULTY_HOSTS\x10\xd2\x93\xfb\xc9\x01\x12\x14\n\rNVLINK_SWITCH\x10\xd1\xf8\x81rB\x16\n\x14_disruption_scheduleB\x14\n\x12_failure_component\"\xaf\x02\n2ReservationSubBlocksReportFaultyRequestFaultReason\x12\x19\n\x08\x62\x65havior\x18\xd2\xe4\xba\xd0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\"\xa2\x01\n\x08\x42\x65havior\x12\x16\n\x12UNDEFINED_BEHAVIOR\x10\x00\x12\"\n\x1a\x46\x41ULT_BEHAVIOR_UNSPECIFIED\x10\xc7\x85\xbb\xd5\x01\x12\x10\n\tGPU_ERROR\x10\xf5\xf0\xe6^\x12\x12\n\x0bPERFORMANCE\x10\x90\xc8\xda@\x12\x1d\n\x16SILENT_DATA_CORRUPTION\x10\xa6\xf5\x8c\x35\x12\x15\n\x0eSWITCH_FAILURE\x10\xdf\xb6\xc6yB\x0b\n\t_behaviorB\x0e\n\x0c_description\"\xfa\x01\n+ReservationsBlocksPerformMaintenanceRequest\x12!\n\x11maintenance_scope\x18\xa8\xf4\x8a\x43 \x01(\tH\x00\x88\x01\x01\"\x91\x01\n\x10MaintenanceScope\x12\x1f\n\x1bUNDEFINED_MAINTENANCE_SCOPE\x10\x00\x12\t\n\x03\x41LL\x10\x81\xfb\x03\x12$\n\x1dMAINTENANCE_SCOPE_UNSPECIFIED\x10\xc0\x9e\xcb%\x12\x13\n\x0bRUNNING_VMS\x10\xdc\xeb\xbc\xff\x01\x12\x16\n\x0fUNUSED_CAPACITY\x10\x83\xda\xb7\x65\x42\x14\n\x12_maintenance_scope\"\xf4\x01\n%ReservationsPerformMaintenanceRequest\x12!\n\x11maintenance_scope\x18\xa8\xf4\x8a\x43 \x01(\tH\x00\x88\x01\x01\"\x91\x01\n\x10MaintenanceScope\x12\x1f\n\x1bUNDEFINED_MAINTENANCE_SCOPE\x10\x00\x12\t\n\x03\x41LL\x10\x81\xfb\x03\x12$\n\x1dMAINTENANCE_SCOPE_UNSPECIFIED\x10\xc0\x9e\xcb%\x12\x13\n\x0bRUNNING_VMS\x10\xdc\xeb\xbc\xff\x01\x12\x16\n\x0fUNUSED_CAPACITY\x10\x83\xda\xb7\x65\x42\x14\n\x12_maintenance_scope\"V\n\x19ReservationsResizeRequest\x12\"\n\x12specific_sku_count\x18\xa0\xe9\xcf\x06 \x01(\x03H\x00\x88\x01\x01\x42\x15\n\x13_specific_sku_count\"\x9f\x01\n\x16ReservationsScopedList\x12>\n\x0creservations\x18\xa7\xec\xcc\xbe\x01 \x03(\x0b\x32$.google.cloud.compute.v1.Reservation\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x9b\x01\n\x14ResetInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf0\x01\n\x11ResizeDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x64isks_resize_request_resource\x18\xa0\xc2\xab% \x01(\x0b\x32+.google.cloud.compute.v1.DisksResizeRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xcc\x01\n!ResizeInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04size\x18\x81\xc0\xd7\x01 \x01(\x05\x42\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x88\x02\n\x17ResizeRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12h\n$region_disks_resize_request_resource\x18\x95\xaa\xfc\xd4\x01 \x01(\x0b\x32\x31.google.cloud.compute.v1.RegionDisksResizeRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd6\x01\n\'ResizeRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04size\x18\x81\xc0\xd7\x01 \x01(\x05\x42\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8d\x02\n\x18ResizeReservationRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12i\n$reservations_resize_request_resource\x18\xd1\xdb\xce\xb9\x01 \x01(\x0b\x32\x32.google.cloud.compute.v1.ReservationsResizeRequestB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x82\x02\n\x12ResourceCommitment\x12 \n\x10\x61\x63\x63\x65lerator_type\x18\x8e\xe1\xe8\x41 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06\x61mount\x18\xd8\xa0\xe9] \x01(\x03H\x01\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x02\x88\x01\x01\"s\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x13\n\x0b\x41\x43\x43\x45LERATOR\x10\xcb\xec\xf9\xcc\x01\x12\x11\n\tLOCAL_SSD\x10\xf0\xf5\xd6\xf2\x01\x12\r\n\x06MEMORY\x10\x81\xe2\xd6:\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x12\x0b\n\x04VCPU\x10\xf2\xba\xa0\x01\x42\x13\n\x11_accelerator_typeB\t\n\x07_amountB\x07\n\x05_type\"9\n\x16ResourceGroupReference\x12\x15\n\x05group\x18\xff\xec\x83/ \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_group\"\xaa\x01\n\x1aResourcePoliciesScopedList\x12\x45\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\x0b\x32\'.google.cloud.compute.v1.ResourcePolicy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xae\t\n\x0eResourcePolicy\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12q\n\x1d\x64isk_consistency_group_policy\x18\x9b\x84\xf2\xe1\x01 \x01(\x0b\x32\x41.google.cloud.compute.v1.ResourcePolicyDiskConsistencyGroupPolicyH\x02\x88\x01\x01\x12\x63\n\x16group_placement_policy\x18\x8c\x9b\x9b\x05 \x01(\x0b\x32;.google.cloud.compute.v1.ResourcePolicyGroupPlacementPolicyH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12h\n\x18instance_schedule_policy\x18\xb0\xd0\xb9\xa4\x01 \x01(\x0b\x32=.google.cloud.compute.v1.ResourcePolicyInstanceSchedulePolicyH\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x08\x88\x01\x01\x12V\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32\x35.google.cloud.compute.v1.ResourcePolicyResourceStatusH\t\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\n\x88\x01\x01\x12g\n\x18snapshot_schedule_policy\x18\xdf\xd6\x81h \x01(\x0b\x32=.google.cloud.compute.v1.ResourcePolicySnapshotSchedulePolicyH\x0b\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x0c\x88\x01\x01\x12V\n\x0fworkload_policy\x18\xfa\x85\xda\x36 \x01(\x0b\x32\x35.google.cloud.compute.v1.ResourcePolicyWorkloadPolicyH\r\x88\x01\x01\"r\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0f\n\x07\x45XPIRED\x10\x85\xe6\x88\xe6\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB \n\x1e_disk_consistency_group_policyB\x19\n\x17_group_placement_policyB\x05\n\x03_idB\x1b\n\x19_instance_schedule_policyB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x12\n\x10_resource_statusB\x0c\n\n_self_linkB\x1b\n\x19_snapshot_schedule_policyB\t\n\x07_statusB\x12\n\x10_workload_policy\"\xeb\x03\n\x1cResourcePolicyAggregatedList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12R\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32@.google.cloud.compute.v1.ResourcePolicyAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.ResourcePoliciesScopedList:\x02\x38\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x9e\x01\n\x18ResourcePolicyDailyCycle\x12\x1e\n\rdays_in_cycle\x18\xb4\x98\xaa\xb0\x01 \x01(\x05H\x00\x88\x01\x01\x12\x18\n\x08\x64uration\x18\x94\x9b\x91J \x01(\tH\x01\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x02\x88\x01\x01\x42\x10\n\x0e_days_in_cycleB\x0b\n\t_durationB\r\n\x0b_start_time\"*\n(ResourcePolicyDiskConsistencyGroupPolicy\"\x8b\x04\n\"ResourcePolicyGroupPlacementPolicy\x12*\n\x19\x61\x63\x63\x65lerator_topology_mode\x18\x9f\xf5\xc7\x87\x01 \x01(\tH\x00\x88\x01\x01\x12)\n\x19\x61vailability_domain_count\x18\xb8\x8c\xf8\x05 \x01(\x05H\x01\x88\x01\x01\x12\x1c\n\x0b\x63ollocation\x18\xb5\xc2\xde\xf3\x01 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0cgpu_topology\x18\xa2\xc9\x9dv \x01(\tH\x03\x88\x01\x01\x12\x18\n\x08vm_count\x18\x87\xbb\xd6| \x01(\x05H\x04\x88\x01\x01\"p\n\x17\x41\x63\x63\x65leratorTopologyMode\x12\'\n#UNDEFINED_ACCELERATOR_TOPOLOGY_MODE\x10\x00\x12\x14\n\x0c\x41UTO_CONNECT\x10\xba\xc4\xc5\xea\x01\x12\x16\n\x0ePROVISION_ONLY\x10\xf6\xa1\xa9\xbe\x01\"\\\n\x0b\x43ollocation\x12\x19\n\x15UNDEFINED_COLLOCATION\x10\x00\x12\x11\n\nCOLLOCATED\x10\xd2\xab\x9e\x31\x12\x1f\n\x17UNSPECIFIED_COLLOCATION\x10\xed\x8f\xb3\xdd\x01\x42\x1c\n\x1a_accelerator_topology_modeB\x1c\n\x1a_availability_domain_countB\x0e\n\x0c_collocationB\x0f\n\r_gpu_topologyB\x0b\n\t_vm_count\"\xa1\x01\n\x19ResourcePolicyHourlyCycle\x12\x18\n\x08\x64uration\x18\x94\x9b\x91J \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0ehours_in_cycle\x18\xfc\x88\x97\xfb\x01 \x01(\x05H\x01\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x02\x88\x01\x01\x42\x0b\n\t_durationB\x11\n\x0f_hours_in_cycleB\r\n\x0b_start_time\"\xae\x03\n$ResourcePolicyInstanceSchedulePolicy\x12\x1f\n\x0f\x65xpiration_time\x18\xdd\xac\xe8m \x01(\tH\x00\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x01\x88\x01\x01\x12\x19\n\ttime_zone\x18\xde\x83\xc9\x11 \x01(\tH\x02\x88\x01\x01\x12h\n\x11vm_start_schedule\x18\xdc\x90\xbc\x08 \x01(\x0b\x32\x45.google.cloud.compute.v1.ResourcePolicyInstanceSchedulePolicyScheduleH\x03\x88\x01\x01\x12h\n\x10vm_stop_schedule\x18\xac\xe5\x9f\xcb\x01 \x01(\x0b\x32\x45.google.cloud.compute.v1.ResourcePolicyInstanceSchedulePolicyScheduleH\x04\x88\x01\x01\x42\x12\n\x10_expiration_timeB\r\n\x0b_start_timeB\x0c\n\n_time_zoneB\x14\n\x12_vm_start_scheduleB\x13\n\x11_vm_stop_schedule\"V\n,ResourcePolicyInstanceSchedulePolicySchedule\x12\x19\n\x08schedule\x18\x97\xa5\x9a\xb3\x01 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_schedule\"\xcc\x02\n\x12ResourcePolicyList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.ResourcePolicy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb9\x01\n\x1cResourcePolicyResourceStatus\x12|\n\x18instance_schedule_policy\x18\xb0\xd0\xb9\xa4\x01 \x01(\x0b\x32Q.google.cloud.compute.v1.ResourcePolicyResourceStatusInstanceSchedulePolicyStatusH\x00\x88\x01\x01\x42\x1b\n\x19_instance_schedule_policy\"\xb6\x01\n8ResourcePolicyResourceStatusInstanceSchedulePolicyStatus\x12$\n\x13last_run_start_time\x18\x87\xef\xc1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12$\n\x13next_run_start_time\x18\x8a\xb3\xf8\x97\x01 \x01(\tH\x01\x88\x01\x01\x42\x16\n\x14_last_run_start_timeB\x16\n\x14_next_run_start_time\"\xa8\x03\n$ResourcePolicySnapshotSchedulePolicy\x12n\n\x10retention_policy\x18\xf3\xca\xdc \x01(\x0b\x32L.google.cloud.compute.v1.ResourcePolicySnapshotSchedulePolicyRetentionPolicyH\x00\x88\x01\x01\x12`\n\x08schedule\x18\x97\xa5\x9a\xb3\x01 \x01(\x0b\x32\x45.google.cloud.compute.v1.ResourcePolicySnapshotSchedulePolicyScheduleH\x01\x88\x01\x01\x12t\n\x13snapshot_properties\x18\x8e\x95\xb2X \x01(\x0b\x32O.google.cloud.compute.v1.ResourcePolicySnapshotSchedulePolicySnapshotPropertiesH\x02\x88\x01\x01\x42\x13\n\x11_retention_policyB\x0b\n\t_scheduleB\x16\n\x14_snapshot_properties\"\xd5\x02\n3ResourcePolicySnapshotSchedulePolicyRetentionPolicy\x12#\n\x12max_retention_days\x18\x93\xc2\xd1\x9a\x01 \x01(\x05H\x00\x88\x01\x01\x12&\n\x15on_source_disk_delete\x18\xc9\xcd\xc2\x99\x01 \x01(\tH\x01\x88\x01\x01\"\x9f\x01\n\x12OnSourceDiskDelete\x12#\n\x1fUNDEFINED_ON_SOURCE_DISK_DELETE\x10\x00\x12\x1e\n\x16\x41PPLY_RETENTION_POLICY\x10\xe4\x94\x92\xff\x01\x12\x1a\n\x13KEEP_AUTO_SNAPSHOTS\x10\xf9\xc8\xbb{\x12(\n!UNSPECIFIED_ON_SOURCE_DISK_DELETE\x10\xa1\xff\x83rB\x15\n\x13_max_retention_daysB\x18\n\x16_on_source_disk_delete\"\xe7\x02\n,ResourcePolicySnapshotSchedulePolicySchedule\x12Q\n\x0e\x64\x61ily_schedule\x18\xfd\xe3\x8a) \x01(\x0b\x32\x31.google.cloud.compute.v1.ResourcePolicyDailyCycleH\x00\x88\x01\x01\x12S\n\x0fhourly_schedule\x18\xa5\xb1\xa3\x12 \x01(\x0b\x32\x32.google.cloud.compute.v1.ResourcePolicyHourlyCycleH\x01\x88\x01\x01\x12T\n\x0fweekly_schedule\x18\x95\x89\xb9\xab\x01 \x01(\x0b\x32\x32.google.cloud.compute.v1.ResourcePolicyWeeklyCycleH\x02\x88\x01\x01\x42\x11\n\x0f_daily_scheduleB\x12\n\x10_hourly_scheduleB\x12\n\x10_weekly_schedule\"\xd0\x02\n6ResourcePolicySnapshotSchedulePolicySnapshotProperties\x12\x1a\n\nchain_name\x18\xc9\xda\xdd \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bguest_flush\x18\xdd\x93\xec\xb7\x01 \x01(\x08H\x01\x88\x01\x01\x12o\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32[.google.cloud.compute.v1.ResourcePolicySnapshotSchedulePolicySnapshotProperties.LabelsEntry\x12\x1d\n\x11storage_locations\x18\x9a\xed\xb3\x9c\x01 \x03(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\r\n\x0b_chain_nameB\x0e\n\x0c_guest_flush\"q\n\x19ResourcePolicyWeeklyCycle\x12T\n\x0c\x64\x61y_of_weeks\x18\xda\x9f\xfbz \x03(\x0b\x32;.google.cloud.compute.v1.ResourcePolicyWeeklyCycleDayOfWeek\"\xb4\x02\n\"ResourcePolicyWeeklyCycleDayOfWeek\x12\x12\n\x03\x64\x61y\x18\x9c\x87\x06 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08\x64uration\x18\x94\x9b\x91J \x01(\tH\x01\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x02\x88\x01\x01\"\x9f\x01\n\x03\x44\x61y\x12\x11\n\rUNDEFINED_DAY\x10\x00\x12\x0e\n\x06\x46RIDAY\x10\xdf\xf2\xe3\xe0\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\r\n\x06MONDAY\x10\x90\xca\x8b?\x12\x10\n\x08SATURDAY\x10\xb9\x8f\x87\x85\x01\x12\x0e\n\x06SUNDAY\x10\xd0\x8b\xd2\x93\x01\x12\x0f\n\x08THURSDAY\x10\xda\xb3\xe6\x62\x12\x0f\n\x07TUESDAY\x10\xad\xec\xa9\x84\x01\x12\x11\n\tWEDNESDAY\x10\xb6\xce\x9e\xc9\x01\x42\x06\n\x04_dayB\x0b\n\t_durationB\r\n\x0b_start_time\"\xb6\x04\n\x1cResourcePolicyWorkloadPolicy\x12%\n\x14\x61\x63\x63\x65lerator_topology\x18\xc3\xb3\xd2\xb9\x01 \x01(\tH\x00\x88\x01\x01\x12*\n\x19\x61\x63\x63\x65lerator_topology_mode\x18\x9f\xf5\xc7\x87\x01 \x01(\tH\x01\x88\x01\x01\x12%\n\x15max_topology_distance\x18\xaa\x8b\xcb\x03 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x03\x88\x01\x01\"p\n\x17\x41\x63\x63\x65leratorTopologyMode\x12\'\n#UNDEFINED_ACCELERATOR_TOPOLOGY_MODE\x10\x00\x12\x14\n\x0c\x41UTO_CONNECT\x10\xba\xc4\xc5\xea\x01\x12\x16\n\x0ePROVISION_ONLY\x10\xf6\xa1\xa9\xbe\x01\"k\n\x13MaxTopologyDistance\x12#\n\x1fUNDEFINED_MAX_TOPOLOGY_DISTANCE\x10\x00\x12\x0c\n\x05\x42LOCK\x10\xed\x98\x97\x1e\x12\x0f\n\x07\x43LUSTER\x10\xda\xbb\x9a\xf6\x01\x12\x10\n\x08SUBBLOCK\x10\xcd\xbc\xe3\x96\x01\"M\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x19\n\x11HIGH_AVAILABILITY\x10\xd8\x91\xa1\xc3\x01\x12\x16\n\x0fHIGH_THROUGHPUT\x10\xe7\xd1\xed\x45\x42\x17\n\x15_accelerator_topologyB\x1c\n\x1a_accelerator_topology_modeB\x18\n\x16_max_topology_distanceB\x07\n\x05_type\"\xb0\x05\n\x0eResourceStatus\x12m\n\x1b\x65\x66\x66\x65\x63tive_instance_metadata\x18\x81\x8e\xa0\x1a \x01(\x0b\x32@.google.cloud.compute.v1.ResourceStatusEffectiveInstanceMetadataH\x00\x88\x01\x01\x12\x1e\n\rphysical_host\x18\x90\xf8\xb6\xdd\x01 \x01(\tH\x01\x88\x01\x01\x12\x64\n\x16physical_host_topology\x18\xbe\x93\xaf\xba\x01 \x01(\x0b\x32;.google.cloud.compute.v1.ResourceStatusPhysicalHostTopologyH\x02\x88\x01\x01\x12o\n\x1creservation_consumption_info\x18\xe5\xc5\xef_ \x01(\x0b\x32\x41.google.cloud.compute.v1.ResourceStatusReservationConsumptionInfoH\x03\x88\x01\x01\x12N\n\nscheduling\x18\x94\xcb\xb1\xb8\x01 \x01(\x0b\x32\x31.google.cloud.compute.v1.ResourceStatusSchedulingH\x04\x88\x01\x01\x12R\n\x14upcoming_maintenance\x18\xf0\xa0\xb4l \x01(\x0b\x32,.google.cloud.compute.v1.UpcomingMaintenanceH\x05\x88\x01\x01\x42\x1e\n\x1c_effective_instance_metadataB\x10\n\x0e_physical_hostB\x19\n\x17_physical_host_topologyB\x1f\n\x1d_reservation_consumption_infoB\r\n\x0b_schedulingB\x17\n\x15_upcoming_maintenance\"\xed\x06\n\'ResourceStatusEffectiveInstanceMetadata\x12\x36\n%block_project_ssh_keys_metadata_value\x18\xfd\xf4\xbb\xa1\x01 \x01(\x08H\x00\x88\x01\x01\x12\x37\n&enable_guest_attributes_metadata_value\x18\xe6\xa3\xac\xc8\x01 \x01(\x08H\x01\x88\x01\x01\x12\x33\n\"enable_os_inventory_metadata_value\x18\xe3\xfd\xa1\xb1\x01 \x01(\x08H\x02\x88\x01\x01\x12/\n\x1e\x65nable_osconfig_metadata_value\x18\xde\xd1\xea\xef\x01 \x01(\x08H\x03\x88\x01\x01\x12-\n\x1d\x65nable_oslogin_metadata_value\x18\x97\xb4\xa4g \x01(\x08H\x04\x88\x01\x01\x12\x38\n(gce_container_declaration_metadata_value\x18\xba\xaf\xdch \x01(\x08H\x05\x88\x01\x01\x12\x32\n!serial_port_enable_metadata_value\x18\x8a\xed\xa5\xcd\x01 \x01(\x08H\x06\x88\x01\x01\x12:\n)serial_port_logging_enable_metadata_value\x18\xaa\xc9\xd7\x94\x01 \x01(\x08H\x07\x88\x01\x01\x12.\n\x1dvm_dns_setting_metadata_value\x18\x8e\xa1\x85\xc4\x01 \x01(\tH\x08\x88\x01\x01\x42(\n&_block_project_ssh_keys_metadata_valueB)\n\'_enable_guest_attributes_metadata_valueB%\n#_enable_os_inventory_metadata_valueB!\n\x1f_enable_osconfig_metadata_valueB \n\x1e_enable_oslogin_metadata_valueB+\n)_gce_container_declaration_metadata_valueB$\n\"_serial_port_enable_metadata_valueB,\n*_serial_port_logging_enable_metadata_valueB \n\x1e_vm_dns_setting_metadata_value\"\xb1\x01\n\"ResourceStatusPhysicalHostTopology\x12\x15\n\x05\x62lock\x18\x8d\x89\xdf, \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07\x63luster\x18\xfa\xa3\xec\x9f\x01 \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04host\x18\xa8\xeb\xc3\x01 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x08subblock\x18\xcd\xdc\xcb! \x01(\tH\x03\x88\x01\x01\x42\x08\n\x06_blockB\n\n\x08_clusterB\x07\n\x05_hostB\x0b\n\t_subblock\"j\n(ResourceStatusReservationConsumptionInfo\x12%\n\x14\x63onsumed_reservation\x18\xf5\x93\xee\x97\x01 \x01(\tH\x00\x88\x01\x01\x42\x17\n\x15_consumed_reservation\"W\n\x18ResourceStatusScheduling\x12#\n\x13\x61vailability_domain\x18\xa8\xa0\xb4x \x01(\x05H\x00\x88\x01\x01\x42\x16\n\x14_availability_domain\"\x9c\x01\n\x15ResumeInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xd1\x02\n*ResumeInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x8f\x01\n9instance_group_managers_resume_instances_request_resource\x18\xc2\xbe\xc2= \x01(\x0b\x32\x44.google.cloud.compute.v1.InstanceGroupManagersResumeInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe9\x02\n0ResumeInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9d\x01\n@region_instance_group_managers_resume_instances_request_resource\x18\xb7\x83\x80\xdd\x01 \x01(\x0b\x32J.google.cloud.compute.v1.RegionInstanceGroupManagersResumeInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xed\x0c\n\x05Route\x12\x39\n\x08\x61s_paths\x18\xa1\xc5\xcc\x41 \x03(\x0b\x32$.google.cloud.compute.v1.RouteAsPath\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\ndest_range\x18\xe0\xb2\xea\xb5\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x06\x88\x01\x01\x12!\n\x10next_hop_gateway\x18\x82\xfa\xec\xb3\x01 \x01(\tH\x07\x88\x01\x01\x12\x1c\n\x0cnext_hop_hub\x18\xb3\xb5\xde^ \x01(\tH\x08\x88\x01\x01\x12\x1c\n\x0cnext_hop_ilb\x18\xdd\xba\xde^ \x01(\tH\t\x88\x01\x01\x12\"\n\x11next_hop_instance\x18\x97\xeb\xd1\xbb\x01 \x01(\tH\n\x88\x01\x01\x12*\n\x1anext_hop_inter_region_cost\x18\x93\xe9\xd3\x0b \x01(\rH\x0b\x88\x01\x01\x12\x30\n next_hop_interconnect_attachment\x18\xb2\x80\x96l \x01(\tH\x0c\x88\x01\x01\x12\x1b\n\x0bnext_hop_ip\x18\xa9\xaf\xcd\x34 \x01(\tH\r\x88\x01\x01\x12\x1c\n\x0cnext_hop_med\x18\x8a\xd7\xde^ \x01(\rH\x0e\x88\x01\x01\x12 \n\x10next_hop_network\x18\xec\xa1\x89} \x01(\tH\x0f\x88\x01\x01\x12\x1f\n\x0fnext_hop_origin\x18\xa8\xd1\x9f\x17 \x01(\tH\x10\x88\x01\x01\x12!\n\x10next_hop_peering\x18\xfe\x93\xe4\xc4\x01 \x01(\tH\x11\x88\x01\x01\x12$\n\x13next_hop_vpn_tunnel\x18\x95\xe5\xf0\xf7\x01 \x01(\tH\x12\x88\x01\x01\x12<\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32$.google.cloud.compute.v1.RouteParamsH\x13\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\rH\x14\x88\x01\x01\x12\x1d\n\x0croute_status\x18\xa8\xcd\xb2\xc7\x01 \x01(\tH\x15\x88\x01\x01\x12\x1b\n\nroute_type\x18\xf0\xb6\x9e\xb3\x01 \x01(\tH\x16\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x17\x88\x01\x01\x12\x0f\n\x04tags\x18\x99\xe8\xd8\x01 \x03(\t\x12\x37\n\x08warnings\x18\xd7\x88\xc1\xed\x01 \x03(\x0b\x32!.google.cloud.compute.v1.Warnings\"W\n\rNextHopOrigin\x12\x1d\n\x19UNDEFINED_NEXT_HOP_ORIGIN\x10\x00\x12\t\n\x03\x45GP\x10\xee\x97\x04\x12\t\n\x03IGP\x10\xf2\xb5\x04\x12\x11\n\nINCOMPLETE\x10\xde\xea\xd8\x05\"l\n\x0bRouteStatus\x12\x1a\n\x16UNDEFINED_ROUTE_STATUS\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0f\n\x07\x44ROPPED\x10\xa0\xe7\xcf\xec\x01\x12\x10\n\x08INACTIVE\x10\xeb\x98\xf9\x80\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\"`\n\tRouteType\x12\x18\n\x14UNDEFINED_ROUTE_TYPE\x10\x00\x12\t\n\x03\x42GP\x10\xab\x81\x04\x12\x0e\n\x06STATIC\x10\xee\x84\x83\x93\x01\x12\x0e\n\x06SUBNET\x10\xdd\xee\xbc\x93\x01\x12\x0e\n\x07TRANSIT\x10\xb3\x83\xc6YB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\r\n\x0b_dest_rangeB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_networkB\x13\n\x11_next_hop_gatewayB\x0f\n\r_next_hop_hubB\x0f\n\r_next_hop_ilbB\x14\n\x12_next_hop_instanceB\x1d\n\x1b_next_hop_inter_region_costB#\n!_next_hop_interconnect_attachmentB\x0e\n\x0c_next_hop_ipB\x0f\n\r_next_hop_medB\x13\n\x11_next_hop_networkB\x12\n\x10_next_hop_originB\x13\n\x11_next_hop_peeringB\x16\n\x14_next_hop_vpn_tunnelB\t\n\x07_paramsB\x0b\n\t_priorityB\x0f\n\r_route_statusB\r\n\x0b_route_typeB\x0c\n\n_self_link\"\xe7\x01\n\x0bRouteAsPath\x12\x13\n\x08\x61s_lists\x18\xc8\xca\xf9? \x03(\r\x12\"\n\x11path_segment_type\x18\xa0\xb5\xeb\xf4\x01 \x01(\tH\x00\x88\x01\x01\"\x88\x01\n\x0fPathSegmentType\x12\x1f\n\x1bUNDEFINED_PATH_SEGMENT_TYPE\x10\x00\x12\x19\n\x12\x41S_CONFED_SEQUENCE\x10\xb0\x8f\xf7i\x12\x15\n\rAS_CONFED_SET\x10\xf3\xcd\xad\xb2\x01\x12\x12\n\x0b\x41S_SEQUENCE\x10\xae\xd2\xf2\x32\x12\x0e\n\x06\x41S_SET\x10\xb5\x9d\xa4\x9d\x01\x42\x14\n\x12_path_segment_type\"\x9b\x02\n\tRouteList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x30\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1e.google.cloud.compute.v1.Route\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xab\x01\n\x0bRouteParams\x12`\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32=.google.cloud.compute.v1.RouteParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xc8\x02\n\x0bRoutePolicy\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x02\x88\x01\x01\x12@\n\x05terms\x18\x87\x93\xc9\x34 \x03(\x0b\x32..google.cloud.compute.v1.RoutePolicyPolicyTerm\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x03\x88\x01\x01\"^\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12 \n\x18ROUTE_POLICY_TYPE_EXPORT\x10\xa2\xcd\xe0\x8b\x01\x12 \n\x18ROUTE_POLICY_TYPE_IMPORT\x10\x93\x8d\xc2\xbd\x01\x42\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x07\n\x05_nameB\x07\n\x05_type\"\xb3\x01\n\x15RoutePolicyPolicyTerm\x12\x32\n\x07\x61\x63tions\x18\xfd\x91\x81\xd6\x01 \x03(\x0b\x32\x1d.google.cloud.compute.v1.Expr\x12\x34\n\x05match\x18\xc5\xb3\xb7\x31 \x01(\x0b\x32\x1d.google.cloud.compute.v1.ExprH\x00\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x01\x88\x01\x01\x42\x08\n\x06_matchB\x0b\n\t_priority\"\xa4\x06\n\x06Router\x12\x36\n\x03\x62gp\x18\xcb\xf9\x05 \x01(\x0b\x32\".google.cloud.compute.v1.RouterBgpH\x00\x88\x01\x01\x12=\n\tbgp_peers\x18\xdd\xad\xee\xd7\x01 \x03(\x0b\x32&.google.cloud.compute.v1.RouterBgpPeer\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12.\n\x1d\x65ncrypted_interconnect_router\x18\x9f\xa2\x8c\x8e\x01 \x01(\x08H\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12?\n\ninterfaces\x18\xda\xf4\xe0\x05 \x03(\x0b\x32(.google.cloud.compute.v1.RouterInterface\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12W\n\x17md5_authentication_keys\x18\x9a\xae\xf1! \x03(\x0b\x32\x33.google.cloud.compute.v1.RouterMd5AuthenticationKey\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x33\n\x04nats\x18\xf2\xf6\xcd\x01 \x03(\x0b\x32\".google.cloud.compute.v1.RouterNat\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x07\x88\x01\x01\x12=\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32%.google.cloud.compute.v1.RouterParamsH\x08\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\t\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\n\x88\x01\x01\x42\x06\n\x04_bgpB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB \n\x1e_encrypted_interconnect_routerB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_paramsB\t\n\x07_regionB\x0c\n\n_self_link\"h\n\x17RouterAdvertisedIpRange\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05range\x18\xbd\xf2\xd0\x33 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_range\"\xb3\x03\n\x14RouterAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12J\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x38.google.cloud.compute.v1.RouterAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aX\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x39\n\x05value\x18\x02 \x01(\x0b\x32*.google.cloud.compute.v1.RoutersScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xd8\x03\n\tRouterBgp\x12\x1f\n\x0e\x61\x64vertise_mode\x18\xbb\x95\xeb\x94\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x11\x61\x64vertised_groups\x18\xb6\xde\x85\n \x03(\t\x12Q\n\x14\x61\x64vertised_ip_ranges\x18\xcc\xd8\xf3\x10 \x03(\x0b\x32\x30.google.cloud.compute.v1.RouterAdvertisedIpRange\x12\x12\n\x03\x61sn\x18\xfc\xf4\x05 \x01(\rH\x01\x88\x01\x01\x12!\n\x10identifier_range\x18\xa7\xcc\x95\xef\x01 \x01(\tH\x02\x88\x01\x01\x12#\n\x12keepalive_interval\x18\xbc\xe5\xfc\x83\x01 \x01(\rH\x03\x88\x01\x01\"M\n\rAdvertiseMode\x12\x1c\n\x18UNDEFINED_ADVERTISE_MODE\x10\x00\x12\x0e\n\x06\x43USTOM\x10\xf1\xfe\xa5\xb9\x01\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\"G\n\x10\x41\x64vertisedGroups\x12\x1f\n\x1bUNDEFINED_ADVERTISED_GROUPS\x10\x00\x12\x12\n\x0b\x41LL_SUBNETS\x10\xd8\x8f\xdd\x01\x42\x11\n\x0f_advertise_modeB\x06\n\x04_asnB\x13\n\x11_identifier_rangeB\x15\n\x13_keepalive_interval\"\xa5\r\n\rRouterBgpPeer\x12\x1f\n\x0e\x61\x64vertise_mode\x18\xbb\x95\xeb\x94\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x11\x61\x64vertised_groups\x18\xb6\xde\x85\n \x03(\t\x12Q\n\x14\x61\x64vertised_ip_ranges\x18\xcc\xd8\xf3\x10 \x03(\x0b\x32\x30.google.cloud.compute.v1.RouterAdvertisedIpRange\x12)\n\x19\x61\x64vertised_route_priority\x18\xbc\x9c\xf6X \x01(\rH\x01\x88\x01\x01\x12=\n\x03\x62\x66\x64\x18\xa0\xf9\x05 \x01(\x0b\x32).google.cloud.compute.v1.RouterBgpPeerBfdH\x02\x88\x01\x01\x12`\n\x18\x63ustom_learned_ip_ranges\x18\xc4\x88\xc4\xe5\x01 \x03(\x0b\x32:.google.cloud.compute.v1.RouterBgpPeerCustomLearnedIpRange\x12.\n\x1d\x63ustom_learned_route_priority\x18\xc4\xe2\xc6\x9d\x01 \x01(\x05H\x03\x88\x01\x01\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\tH\x04\x88\x01\x01\x12\x1b\n\x0b\x65nable_ipv4\x18\xa1\xf6\xc3V \x01(\x08H\x05\x88\x01\x01\x12\x1b\n\x0b\x65nable_ipv6\x18\xa3\xf6\xc3V \x01(\x08H\x06\x88\x01\x01\x12\x1a\n\x0f\x65xport_policies\x18\xfb\xf2\xf7? \x03(\t\x12\x1b\n\x0fimport_policies\x18\xaa\xf1\x8f\xd7\x01 \x03(\t\x12\x1f\n\x0einterface_name\x18\xd1\xc3\xe4\xd0\x01 \x01(\tH\x07\x88\x01\x01\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x08\x88\x01\x01\x12$\n\x14ipv4_nexthop_address\x18\xd1\x8d\xdc\x02 \x01(\tH\t\x88\x01\x01\x12$\n\x14ipv6_nexthop_address\x18\xd3\x85\xab\r \x01(\tH\n\x88\x01\x01\x12\x1f\n\x0fmanagement_type\x18\xb6\x83\xeaR \x01(\tH\x0b\x88\x01\x01\x12,\n\x1bmd5_authentication_key_name\x18\x91\xbd\x83\x86\x01 \x01(\tH\x0c\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\r\x88\x01\x01\x12\x18\n\x08peer_asn\x18\x9f\xb4\x96! \x01(\rH\x0e\x88\x01\x01\x12\x1f\n\x0fpeer_ip_address\x18\xd9\x97\x87\x63 \x01(\tH\x0f\x88\x01\x01\x12*\n\x19peer_ipv4_nexthop_address\x18\x8e\x83\xdf\xdf\x01 \x01(\tH\x10\x88\x01\x01\x12*\n\x19peer_ipv6_nexthop_address\x18\x90\xfb\xad\xea\x01 \x01(\tH\x11\x88\x01\x01\x12*\n\x19router_appliance_instance\x18\x9d\xc7\xa7\xdf\x01 \x01(\tH\x12\x88\x01\x01\"M\n\rAdvertiseMode\x12\x1c\n\x18UNDEFINED_ADVERTISE_MODE\x10\x00\x12\x0e\n\x06\x43USTOM\x10\xf1\xfe\xa5\xb9\x01\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\"G\n\x10\x41\x64vertisedGroups\x12\x1f\n\x1bUNDEFINED_ADVERTISED_GROUPS\x10\x00\x12\x12\n\x0b\x41LL_SUBNETS\x10\xd8\x8f\xdd\x01\"9\n\x06\x45nable\x12\x14\n\x10UNDEFINED_ENABLE\x10\x00\x12\x0c\n\x05\x46\x41LSE\x10\x83\xc2\xe4\x1f\x12\x0b\n\x04TRUE\x10\x8e\xdb\x9d\x01\"g\n\x0eManagementType\x12\x1d\n\x19UNDEFINED_MANAGEMENT_TYPE\x10\x00\x12\x1d\n\x15MANAGED_BY_ATTACHMENT\x10\xcb\xd2\xea\xda\x01\x12\x17\n\x0fMANAGED_BY_USER\x10\xf3\x8b\xa6\x97\x01\x42\x11\n\x0f_advertise_modeB\x1c\n\x1a_advertised_route_priorityB\x06\n\x04_bfdB \n\x1e_custom_learned_route_priorityB\t\n\x07_enableB\x0e\n\x0c_enable_ipv4B\x0e\n\x0c_enable_ipv6B\x11\n\x0f_interface_nameB\r\n\x0b_ip_addressB\x17\n\x15_ipv4_nexthop_addressB\x17\n\x15_ipv6_nexthop_addressB\x12\n\x10_management_typeB\x1e\n\x1c_md5_authentication_key_nameB\x07\n\x05_nameB\x0b\n\t_peer_asnB\x12\n\x10_peer_ip_addressB\x1c\n\x1a_peer_ipv4_nexthop_addressB\x1c\n\x1a_peer_ipv6_nexthop_addressB\x1c\n\x1a_router_appliance_instance\"\x86\x03\n\x10RouterBgpPeerBfd\x12$\n\x14min_receive_interval\x18\xee\xb9\x94Y \x01(\rH\x00\x88\x01\x01\x12&\n\x15min_transmit_interval\x18\xc7\xd1\xc2\xf9\x01 \x01(\rH\x01\x88\x01\x01\x12\x1a\n\nmultiplier\x18\xc1\xfb\x9d[ \x01(\rH\x02\x88\x01\x01\x12+\n\x1bsession_initialization_mode\x18\xb9\x8d\xc3\x32 \x01(\tH\x03\x88\x01\x01\"y\n\x19SessionInitializationMode\x12)\n%UNDEFINED_SESSION_INITIALIZATION_MODE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x0f\n\x07PASSIVE\x10\x87\xf6\xd7\xdc\x01\x42\x17\n\x15_min_receive_intervalB\x18\n\x16_min_transmit_intervalB\r\n\x0b_multiplierB\x1e\n\x1c_session_initialization_mode\"D\n!RouterBgpPeerCustomLearnedIpRange\x12\x15\n\x05range\x18\xbd\xf2\xd0\x33 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_range\"\x95\x05\n\x0fRouterInterface\x12\x18\n\x08ip_range\x18\xa5\xe0\x97\x45 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nip_version\x18\xc0\xf3\xd2\x8c\x01 \x01(\tH\x01\x88\x01\x01\x12/\n\x1elinked_interconnect_attachment\x18\xce\xea\xf7\xee\x01 \x01(\tH\x02\x88\x01\x01\x12\"\n\x11linked_vpn_tunnel\x18\xf9\xbf\xfe\xa7\x01 \x01(\tH\x03\x88\x01\x01\x12\x1f\n\x0fmanagement_type\x18\xb6\x83\xeaR \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\"\n\x12private_ip_address\x18\x98\xd2\x8b\x30 \x01(\tH\x06\x88\x01\x01\x12$\n\x13redundant_interface\x18\xe7\xe8\xbc\xf9\x01 \x01(\tH\x07\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\x08\x88\x01\x01\"?\n\tIpVersion\x12\x18\n\x14UNDEFINED_IP_VERSION\x10\x00\x12\x0b\n\x04IPV4\x10\x85\xcc\x89\x01\x12\x0b\n\x04IPV6\x10\x87\xcc\x89\x01\"g\n\x0eManagementType\x12\x1d\n\x19UNDEFINED_MANAGEMENT_TYPE\x10\x00\x12\x1d\n\x15MANAGED_BY_ATTACHMENT\x10\xcb\xd2\xea\xda\x01\x12\x17\n\x0fMANAGED_BY_USER\x10\xf3\x8b\xa6\x97\x01\x42\x0b\n\t_ip_rangeB\r\n\x0b_ip_versionB!\n\x1f_linked_interconnect_attachmentB\x14\n\x12_linked_vpn_tunnelB\x12\n\x10_management_typeB\x07\n\x05_nameB\x15\n\x13_private_ip_addressB\x16\n\x14_redundant_interfaceB\r\n\x0b_subnetwork\"\x9d\x02\n\nRouterList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x31\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1f.google.cloud.compute.v1.Router\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"W\n\x1aRouterMd5AuthenticationKey\x12\x12\n\x03key\x18\xdf\xbc\x06 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\x06\n\x04_keyB\x07\n\x05_name\"\xb5\x11\n\tRouterNat\x12\"\n\x11\x61uto_network_tier\x18\xe3\xbb\xd1\x80\x01 \x01(\tH\x00\x88\x01\x01\x12\x19\n\rdrain_nat_ips\x18\xc7\xc1\xae\xf0\x01 \x03(\t\x12/\n\x1e\x65nable_dynamic_port_allocation\x18\xa2\x99\xdd\xfd\x01 \x01(\x08H\x01\x88\x01\x01\x12\x33\n#enable_endpoint_independent_mapping\x18\x9b\x89\xdb{ \x01(\x08H\x02\x88\x01\x01\x12\x1a\n\x0e\x65ndpoint_types\x18\xcf\xaa\xd6\xef\x01 \x03(\t\x12%\n\x15icmp_idle_timeout_sec\x18\xca\xd0\xde\x01 \x01(\x05H\x03\x88\x01\x01\x12H\n\nlog_config\x18\x9d\xd1\xc1\xa7\x01 \x01(\x0b\x32+.google.cloud.compute.v1.RouterNatLogConfigH\x04\x88\x01\x01\x12 \n\x10max_ports_per_vm\x18\xe1\xc9\x9ew \x01(\x05H\x05\x88\x01\x01\x12 \n\x10min_ports_per_vm\x18\xb3\xad\xe4X \x01(\x05H\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12Q\n\x11nat64_subnetworks\x18\xa5\xfb\xa8\x1e \x03(\x0b\x32\x33.google.cloud.compute.v1.RouterNatSubnetworkToNat64\x12\'\n\x16nat_ip_allocate_option\x18\xfd\xb8\xf4\xcc\x01 \x01(\tH\x08\x88\x01\x01\x12\x12\n\x07nat_ips\x18\x8e\xf0\x8b\x38 \x03(\t\x12\x38\n\x05rules\x18\xf7\x91\xf5\x33 \x03(\x0b\x32&.google.cloud.compute.v1.RouterNatRule\x12\x32\n\"source_subnetwork_ip_ranges_to_nat\x18\xdb\xef\xa1x \x01(\tH\t\x88\x01\x01\x12\x34\n$source_subnetwork_ip_ranges_to_nat64\x18\xd9\xe7\xa7v \x01(\tH\n\x88\x01\x01\x12J\n\x0bsubnetworks\x18\xc5\xd4\xa5\xc6\x01 \x03(\x0b\x32\x31.google.cloud.compute.v1.RouterNatSubnetworkToNat\x12\x30\n tcp_established_idle_timeout_sec\x18\xed\xeb\xb0j \x01(\x05H\x0b\x88\x01\x01\x12*\n\x19tcp_time_wait_timeout_sec\x18\xfd\xbb\xf3\xf4\x01 \x01(\x05H\x0c\x88\x01\x01\x12/\n\x1ftcp_transitory_idle_timeout_sec\x18\xa6\xfb\xe1\x61 \x01(\x05H\r\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x0e\x88\x01\x01\x12$\n\x14udp_idle_timeout_sec\x18\xc6\xb2\xfa\x1e \x01(\x05H\x0f\x88\x01\x01\"\x98\x01\n\x0f\x41utoNetworkTier\x12\x1f\n\x1bUNDEFINED_AUTO_NETWORK_TIER\x10\x00\x12\x16\n\x0e\x46IXED_STANDARD\x10\xc8\x9e\x85\x94\x01\x12\x0f\n\x07PREMIUM\x10\xb7\xb4\xc1\xbe\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x12)\n!STANDARD_OVERRIDES_FIXED_STANDARD\x10\xc2\x87\x91\xde\x01\"\x88\x01\n\rEndpointTypes\x12\x1c\n\x18UNDEFINED_ENDPOINT_TYPES\x10\x00\x12&\n\x1e\x45NDPOINT_TYPE_MANAGED_PROXY_LB\x10\x82\xba\xb6\xd1\x01\x12\x18\n\x11\x45NDPOINT_TYPE_SWG\x10\xc8\xce\xfdK\x12\x17\n\x10\x45NDPOINT_TYPE_VM\x10\xb2\xea\x9c\x1b\"a\n\x13NatIpAllocateOption\x12$\n UNDEFINED_NAT_IP_ALLOCATE_OPTION\x10\x00\x12\x10\n\tAUTO_ONLY\x10\xbc\xe0\xf8V\x12\x12\n\x0bMANUAL_ONLY\x10\x85\xc1\xc9|\"\xc2\x01\n\x1dSourceSubnetworkIpRangesToNat\x12\x30\n,UNDEFINED_SOURCE_SUBNETWORK_IP_RANGES_TO_NAT\x10\x00\x12$\n\x1d\x41LL_SUBNETWORKS_ALL_IP_RANGES\x10\xd8\x93\xe8U\x12,\n%ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES\x10\xbb\xc3\xbeX\x12\x1b\n\x13LIST_OF_SUBNETWORKS\x10\xfe\xa2\xe4\xf6\x01\"\x95\x01\n\x1fSourceSubnetworkIpRangesToNat64\x12\x32\n.UNDEFINED_SOURCE_SUBNETWORK_IP_RANGES_TO_NAT64\x10\x00\x12\x1c\n\x14\x41LL_IPV6_SUBNETWORKS\x10\xeb\xcd\xf3\xa2\x01\x12 \n\x18LIST_OF_IPV6_SUBNETWORKS\x10\xb4\x98\xbc\xf8\x01\":\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x0f\n\x07PRIVATE\x10\xe3\xe2\xb2\xc0\x01\x12\r\n\x06PUBLIC\x10\xe9\xcc\xc2jB\x14\n\x12_auto_network_tierB!\n\x1f_enable_dynamic_port_allocationB&\n$_enable_endpoint_independent_mappingB\x18\n\x16_icmp_idle_timeout_secB\r\n\x0b_log_configB\x13\n\x11_max_ports_per_vmB\x13\n\x11_min_ports_per_vmB\x07\n\x05_nameB\x19\n\x17_nat_ip_allocate_optionB%\n#_source_subnetwork_ip_ranges_to_natB\'\n%_source_subnetwork_ip_ranges_to_nat64B#\n!_tcp_established_idle_timeout_secB\x1c\n\x1a_tcp_time_wait_timeout_secB\"\n _tcp_transitory_idle_timeout_secB\x07\n\x05_typeB\x17\n\x15_udp_idle_timeout_sec\"\xb7\x01\n\x12RouterNatLogConfig\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\x08H\x00\x88\x01\x01\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x01\x88\x01\x01\"Y\n\x06\x46ilter\x12\x14\n\x10UNDEFINED_FILTER\x10\x00\x12\t\n\x03\x41LL\x10\x81\xfb\x03\x12\x13\n\x0b\x45RRORS_ONLY\x10\x80\xb0\xcf\x92\x01\x12\x19\n\x11TRANSLATIONS_ONLY\x10\xe9\xc3\xaa\xaa\x01\x42\t\n\x07_enableB\t\n\x07_filter\"\xdd\x01\n\rRouterNatRule\x12\x44\n\x06\x61\x63tion\x18\xb6\xfc\xbdY \x01(\x0b\x32,.google.cloud.compute.v1.RouterNatRuleActionH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x15\n\x05match\x18\xc5\xb3\xb7\x31 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0brule_number\x18\xec\xdb\x9a\xff\x01 \x01(\rH\x03\x88\x01\x01\x42\t\n\x07_actionB\x0e\n\x0c_descriptionB\x08\n\x06_matchB\x0e\n\x0c_rule_number\"\xa2\x01\n\x13RouterNatRuleAction\x12 \n\x15source_nat_active_ips\x18\xf5\xbb\xa8\x64 \x03(\t\x12#\n\x18source_nat_active_ranges\x18\xed\xd0\xeeZ \x03(\t\x12 \n\x14source_nat_drain_ips\x18\xa3\xc5\xc1\xa2\x01 \x03(\t\x12\"\n\x17source_nat_drain_ranges\x18\xff\xf9\xb7( \x03(\t\"\x96\x02\n\x18RouterNatSubnetworkToNat\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x18secondary_ip_range_names\x18\xd9\xc1\x84~ \x03(\t\x12#\n\x17source_ip_ranges_to_nat\x18\xf2\xca\x94\xb9\x01 \x03(\t\"\x90\x01\n\x13SourceIpRangesToNat\x12%\n!UNDEFINED_SOURCE_IP_RANGES_TO_NAT\x10\x00\x12\x14\n\rALL_IP_RANGES\x10\xb0\xaf\xfd\x10\x12\"\n\x1bLIST_OF_SECONDARY_IP_RANGES\x10\x9c\xb4\xd8[\x12\x18\n\x10PRIMARY_IP_RANGE\x10\xc2\x93\xd6\x8d\x01\x42\x07\n\x05_name\";\n\x1aRouterNatSubnetworkToNat64\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_name\"\xad\x01\n\x0cRouterParams\x12\x61\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32>.google.cloud.compute.v1.RouterParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xc6\x02\n\x0cRouterStatus\x12\x37\n\x0b\x62\x65st_routes\x18\x85\xac\xdf\xbc\x01 \x03(\x0b\x32\x1e.google.cloud.compute.v1.Route\x12\x41\n\x16\x62\x65st_routes_for_router\x18\xf9\xfb\xf6\x38 \x03(\x0b\x32\x1e.google.cloud.compute.v1.Route\x12N\n\x0f\x62gp_peer_status\x18\xfb\xd7\x95h \x03(\x0b\x32\x32.google.cloud.compute.v1.RouterStatusBgpPeerStatus\x12\x45\n\nnat_status\x18\xd0\x99\x8b\x1e \x03(\x0b\x32..google.cloud.compute.v1.RouterStatusNatStatus\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_network\"\xe9\n\n\x19RouterStatusBgpPeerStatus\x12=\n\x11\x61\x64vertised_routes\x18\xac\xd9\xfc\x9e\x01 \x03(\x0b\x32\x1e.google.cloud.compute.v1.Route\x12?\n\nbfd_status\x18\xf1\xb8\xd3\xbc\x01 \x01(\x0b\x32\".google.cloud.compute.v1.BfdStatusH\x00\x88\x01\x01\x12\x1b\n\x0b\x65nable_ipv4\x18\xa1\xf6\xc3V \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0b\x65nable_ipv6\x18\xa3\xf6\xc3V \x01(\x08H\x02\x88\x01\x01\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x03\x88\x01\x01\x12$\n\x14ipv4_nexthop_address\x18\xd1\x8d\xdc\x02 \x01(\tH\x04\x88\x01\x01\x12$\n\x14ipv6_nexthop_address\x18\xd3\x85\xab\r \x01(\tH\x05\x88\x01\x01\x12\"\n\x11linked_vpn_tunnel\x18\xf9\xbf\xfe\xa7\x01 \x01(\tH\x06\x88\x01\x01\x12!\n\x10md5_auth_enabled\x18\xcb\x91\x90\xd7\x01 \x01(\x08H\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12\"\n\x12num_learned_routes\x18\xff\xd5\xcb@ \x01(\rH\t\x88\x01\x01\x12\x1f\n\x0fpeer_ip_address\x18\xd9\x97\x87\x63 \x01(\tH\n\x88\x01\x01\x12*\n\x19peer_ipv4_nexthop_address\x18\x8e\x83\xdf\xdf\x01 \x01(\tH\x0b\x88\x01\x01\x12*\n\x19peer_ipv6_nexthop_address\x18\x90\xfb\xad\xea\x01 \x01(\tH\x0c\x88\x01\x01\x12*\n\x19router_appliance_instance\x18\x9d\xc7\xa7\xdf\x01 \x01(\tH\r\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x0e\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x0f\x88\x01\x01\x12\x1e\n\rstatus_reason\x18\xb1\x96\xb5\xa3\x01 \x01(\tH\x10\x88\x01\x01\x12\x16\n\x06uptime\x18\xe8\xb7\x9ep \x01(\tH\x11\x88\x01\x01\x12\x1e\n\x0euptime_seconds\x18\xa8\xca\xf8\x31 \x01(\tH\x12\x88\x01\x01\"E\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0b\n\x04\x44OWN\x10\xa2\xb9\x80\x01\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\x12\x07\n\x02UP\x10\x9b\x15\"\xc6\x01\n\x0cStatusReason\x12\x1b\n\x17UNDEFINED_STATUS_REASON\x10\x00\x12)\n!IPV4_PEER_ON_IPV6_ONLY_CONNECTION\x10\x96\xbb\xef\xcf\x01\x12)\n!IPV6_PEER_ON_IPV4_ONLY_CONNECTION\x10\xd2\xf1\x85\xd0\x01\x12 \n\x19MD5_AUTH_INTERNAL_PROBLEM\x10\xb3\x91\xfd\x42\x12!\n\x19STATUS_REASON_UNSPECIFIED\x10\x89\x8e\x84\xbc\x01\x42\r\n\x0b_bfd_statusB\x0e\n\x0c_enable_ipv4B\x0e\n\x0c_enable_ipv6B\r\n\x0b_ip_addressB\x17\n\x15_ipv4_nexthop_addressB\x17\n\x15_ipv6_nexthop_addressB\x14\n\x12_linked_vpn_tunnelB\x13\n\x11_md5_auth_enabledB\x07\n\x05_nameB\x15\n\x13_num_learned_routesB\x12\n\x10_peer_ip_addressB\x1c\n\x1a_peer_ipv4_nexthop_addressB\x1c\n\x1a_peer_ipv6_nexthop_addressB\x1c\n\x1a_router_appliance_instanceB\x08\n\x06_stateB\t\n\x07_statusB\x10\n\x0e_status_reasonB\t\n\x07_uptimeB\x11\n\x0f_uptime_seconds\"\xf7\x03\n\x15RouterStatusNatStatus\x12\"\n\x16\x61uto_allocated_nat_ips\x18\x86\xb4\xc8\xf3\x01 \x03(\t\x12(\n\x1c\x64rain_auto_allocated_nat_ips\x18\xad\x90\xb7\x93\x01 \x03(\t\x12(\n\x1c\x64rain_user_allocated_nat_ips\x18\xc9\x8e\xc8\x91\x01 \x03(\t\x12)\n\x18min_extra_nat_ips_needed\x18\xe2\xe9\xb5\xae\x01 \x01(\x05H\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12\x33\n\"num_vm_endpoints_with_nat_mappings\x18\xec\xb6\xa8\xf4\x01 \x01(\x05H\x02\x88\x01\x01\x12S\n\x0brule_status\x18\x95\xc5\xee\x42 \x03(\x0b\x32;.google.cloud.compute.v1.RouterStatusNatStatusNatRuleStatus\x12*\n\x1fuser_allocated_nat_ip_resources\x18\xd7\xe9\xba\x65 \x03(\t\x12\"\n\x16user_allocated_nat_ips\x18\xa2\xb2\xd9\xf1\x01 \x03(\tB\x1b\n\x19_min_extra_nat_ips_neededB\x07\n\x05_nameB%\n#_num_vm_endpoints_with_nat_mappings\"\xa4\x02\n\"RouterStatusNatStatusNatRuleStatus\x12\x19\n\x0e\x61\x63tive_nat_ips\x18\xd5\xef\xb6\x63 \x03(\t\x12\x19\n\rdrain_nat_ips\x18\xc7\xc1\xae\xf0\x01 \x03(\t\x12%\n\x14min_extra_ips_needed\x18\x84\xca\xa9\xa8\x01 \x01(\x05H\x00\x88\x01\x01\x12\x33\n\"num_vm_endpoints_with_nat_mappings\x18\xec\xb6\xa8\xf4\x01 \x01(\x05H\x01\x88\x01\x01\x12\x1c\n\x0brule_number\x18\xec\xdb\x9a\xff\x01 \x01(\x05H\x02\x88\x01\x01\x42\x17\n\x15_min_extra_ips_neededB%\n#_num_vm_endpoints_with_nat_mappingsB\x0e\n\x0c_rule_number\"\x7f\n\x14RouterStatusResponse\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x12=\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32%.google.cloud.compute.v1.RouterStatusH\x01\x88\x01\x01\x42\x07\n\x05_kindB\t\n\x07_result\"l\n\x1dRoutersGetRoutePolicyResponse\x12>\n\x08resource\x18\x8e\x88\xaf] \x01(\x0b\x32$.google.cloud.compute.v1.RoutePolicyH\x00\x88\x01\x01\x42\x0b\n\t_resource\"\xe2\x02\n\x14RoutersListBgpRoutes\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x34\n\x06result\x18\x9d\x90\xb7\x42 \x03(\x0b\x32!.google.cloud.compute.v1.BgpRoute\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xe9\x02\n\x18RoutersListRoutePolicies\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x37\n\x06result\x18\x9d\x90\xb7\x42 \x03(\x0b\x32$.google.cloud.compute.v1.RoutePolicy\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"`\n\x16RoutersPreviewResponse\x12\x39\n\x08resource\x18\x8e\x88\xaf] \x01(\x0b\x32\x1f.google.cloud.compute.v1.RouterH\x00\x88\x01\x01\x42\x0b\n\t_resource\"\x90\x01\n\x11RoutersScopedList\x12\x34\n\x07routers\x18\xca\xa4\xdd\x94\x01 \x03(\x0b\x32\x1f.google.cloud.compute.v1.Router\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xd8\x03\n\x0eSSLHealthCheck\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x00\x88\x01\x01\x12\x19\n\tport_name\x18\x89\x87\xe7\x13 \x01(\tH\x01\x88\x01\x01\x12\"\n\x12port_specification\x18\xc5\xeb\xcc\x18 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0cproxy_header\x18\xfe\xba\xbcL \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07request\x18\x8f\xe5\xbb\n \x01(\tH\x04\x88\x01\x01\x12\x18\n\x08response\x18\xc1\xa8\xdc] \x01(\tH\x05\x88\x01\x01\"~\n\x11PortSpecification\x12 \n\x1cUNDEFINED_PORT_SPECIFICATION\x10\x00\x12\x15\n\x0eUSE_FIXED_PORT\x10\xe4\x88\xdbZ\x12\x16\n\x0eUSE_NAMED_PORT\x10\xbf\xcf\xc7\xa6\x01\x12\x18\n\x10USE_SERVING_PORT\x10\xcc\xd1\xf5\xac\x01\"H\n\x0bProxyHeader\x12\x1a\n\x16UNDEFINED_PROXY_HEADER\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x10\n\x08PROXY_V1\x10\xac\xa4\xb7\x9f\x01\x42\x07\n\x05_portB\x0c\n\n_port_nameB\x15\n\x13_port_specificationB\x0f\n\r_proxy_headerB\n\n\x08_requestB\x0b\n\t_response\"\x8f\x08\n\x11SavedAttachedDisk\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\x08H\x00\x88\x01\x01\x12\x14\n\x04\x62oot\x18\xf2\xf5\xb8\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0b\x64\x65vice_name\x18\xd4\xb5\x9a \x01(\tH\x02\x88\x01\x01\x12T\n\x13\x64isk_encryption_key\x18\x85\xed\xc4\x81\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x03\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x04\x88\x01\x01\x12\x19\n\tdisk_type\x18\x9c\xe9\xac, \x01(\tH\x05\x88\x01\x01\x12\x45\n\x11guest_os_features\x18\xd1\xe0\xe7% \x03(\x0b\x32\'.google.cloud.compute.v1.GuestOsFeature\x12\x15\n\x05index\x18\xd2\xd1\xec/ \x01(\x05H\x06\x88\x01\x01\x12\x1a\n\tinterface\x18\xb9\xda\xd5\xef\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x08\x88\x01\x01\x12\x14\n\x08licenses\x18\xd2\x88\x80\xa1\x01 \x03(\t\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\t\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\n\x88\x01\x01\x12\x1e\n\rstorage_bytes\x18\xa7\xbb\xbd\xca\x01 \x01(\x03H\x0b\x88\x01\x01\x12%\n\x14storage_bytes_status\x18\x8a\xab\x80\xea\x01 \x01(\tH\x0c\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\r\x88\x01\x01\">\n\tInterface\x12\x17\n\x13UNDEFINED_INTERFACE\x10\x00\x12\x0b\n\x04NVME\x10\xe0\x82\x93\x01\x12\x0b\n\x04SCSI\x10\xa6\x81\x9b\x01\"?\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\x10\n\tREAD_ONLY\x10\xb5\x99\xec+\x12\x11\n\nREAD_WRITE\x10\xd6\x97\xe4R\"]\n\x12StorageBytesStatus\x12\"\n\x1eUNDEFINED_STORAGE_BYTES_STATUS\x10\x00\x12\x10\n\x08UPDATING\x10\xc6\xee\xec\xeb\x01\x12\x11\n\nUP_TO_DATE\x10\xce\xa2\xa7\x30\"?\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x12\n\nPERSISTENT\x10\x97\xf5\xd5\xdb\x01\x12\x0f\n\x07SCRATCH\x10\xda\xfd\xf0\xec\x01\x42\x0e\n\x0c_auto_deleteB\x07\n\x05_bootB\x0e\n\x0c_device_nameB\x16\n\x14_disk_encryption_keyB\x0f\n\r_disk_size_gbB\x0c\n\n_disk_typeB\x08\n\x06_indexB\x0c\n\n_interfaceB\x07\n\x05_kindB\x07\n\x05_modeB\t\n\x07_sourceB\x10\n\x0e_storage_bytesB\x17\n\x15_storage_bytes_statusB\x07\n\x05_type\"\xc5\x03\n\tSavedDisk\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0bsource_disk\x18\xc1\xee\xb4\xd7\x01 \x01(\tH\x02\x88\x01\x01\x12\x1e\n\rstorage_bytes\x18\xa7\xbb\xbd\xca\x01 \x01(\x03H\x03\x88\x01\x01\x12%\n\x14storage_bytes_status\x18\x8a\xab\x80\xea\x01 \x01(\tH\x04\x88\x01\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\"]\n\x12StorageBytesStatus\x12\"\n\x1eUNDEFINED_STORAGE_BYTES_STATUS\x10\x00\x12\x10\n\x08UPDATING\x10\xc6\xee\xec\xeb\x01\x12\x11\n\nUP_TO_DATE\x10\xce\xa2\xa7\x30\x42\x0f\n\r_architectureB\x07\n\x05_kindB\x0e\n\x0c_source_diskB\x10\n\x0e_storage_bytesB\x17\n\x15_storage_bytes_status\"\x81\x02\n\x15ScalingScheduleStatus\x12\x1f\n\x0flast_start_time\x18\xd3\xbb\xbc\x10 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fnext_start_time\x18\xd6\xf2\xb0. \x01(\tH\x01\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x02\x88\x01\x01\"]\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x0f\n\x08OBSOLETE\x10\x99\xeb\xdc\x1f\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B\x12\n\x10_last_start_timeB\x12\n\x10_next_start_timeB\x08\n\x06_state\"\xac\x0b\n\nScheduling\x12\"\n\x11\x61utomatic_restart\x18\xfb\xb7\xa4\xa7\x01 \x01(\x08H\x00\x88\x01\x01\x12#\n\x13\x61vailability_domain\x18\xa8\xa0\xb4x \x01(\x05H\x01\x88\x01\x01\x12+\n\x1ahost_error_timeout_seconds\x18\x93\xdc\xd9\xc2\x01 \x01(\x05H\x02\x88\x01\x01\x12+\n\x1binstance_termination_action\x18\xbb\xff\x99\x33 \x01(\tH\x03\x88\x01\x01\x12M\n\x1alocal_ssd_recovery_timeout\x18\xe6\xaf\xe6\x7f \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x04\x88\x01\x01\x12\x1e\n\rlocation_hint\x18\xd1\x81\x92\xa7\x01 \x01(\tH\x05\x88\x01\x01\x12\x44\n\x10max_run_duration\x18\xc3\xaf\xb8\xcd\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x06\x88\x01\x01\x12\x1e\n\rmin_node_cpus\x18\xbb\xa4\xa2\x97\x01 \x01(\x05H\x07\x88\x01\x01\x12L\n\x0fnode_affinities\x18\xa3\x84\x9a\xdc\x01 \x03(\x0b\x32/.google.cloud.compute.v1.SchedulingNodeAffinity\x12#\n\x13on_host_maintenance\x18\xdc\xf2\xe7\x1e \x01(\tH\x08\x88\x01\x01\x12\x61\n\x17on_instance_stop_action\x18\xc9\x8d\xd5\xfc\x01 \x01(\x0b\x32\x37.google.cloud.compute.v1.SchedulingOnInstanceStopActionH\t\x88\x01\x01\x12\x1c\n\x0bpreemptible\x18\xa1\xe5\xcb\x9a\x01 \x01(\x08H\n\x88\x01\x01\x12!\n\x12provisioning_model\x18\xd7\x96\x1e \x01(\tH\x0b\x88\x01\x01\x12&\n\x16skip_guest_os_shutdown\x18\xaa\xbf\x94` \x01(\x08H\x0c\x88\x01\x01\x12!\n\x10termination_time\x18\xa8\x8e\x90\xcc\x01 \x01(\tH\r\x88\x01\x01\"\x93\x01\n\x19InstanceTerminationAction\x12)\n%UNDEFINED_INSTANCE_TERMINATION_ACTION\x10\x00\x12\x0e\n\x06\x44\x45LETE\x10\xab\xf3\xe5\xbf\x01\x12.\n\'INSTANCE_TERMINATION_ACTION_UNSPECIFIED\x10\xb3\xc1\xa9,\x12\x0b\n\x04STOP\x10\x82\x80\x9c\x01\"Y\n\x11OnHostMaintenance\x12!\n\x1dUNDEFINED_ON_HOST_MAINTENANCE\x10\x00\x12\x0e\n\x07MIGRATE\x10\x8b\xc3\x81O\x12\x11\n\tTERMINATE\x10\xc1\x9c\xcb\xfb\x01\"\x82\x01\n\x11ProvisioningModel\x12 \n\x1cUNDEFINED_PROVISIONING_MODEL\x10\x00\x12\x11\n\nFLEX_START\x10\xfc\x90\xc2\x30\x12\x19\n\x11RESERVATION_BOUND\x10\x8b\x96\xfc\x8b\x01\x12\x0b\n\x04SPOT\x10\x82\xe2\x9b\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x42\x14\n\x12_automatic_restartB\x16\n\x14_availability_domainB\x1d\n\x1b_host_error_timeout_secondsB\x1e\n\x1c_instance_termination_actionB\x1d\n\x1b_local_ssd_recovery_timeoutB\x10\n\x0e_location_hintB\x13\n\x11_max_run_durationB\x10\n\x0e_min_node_cpusB\x16\n\x14_on_host_maintenanceB\x1a\n\x18_on_instance_stop_actionB\x0e\n\x0c_preemptibleB\x15\n\x13_provisioning_modelB\x19\n\x17_skip_guest_os_shutdownB\x13\n\x11_termination_time\"\xc7\x01\n\x16SchedulingNodeAffinity\x12\x12\n\x03key\x18\xdf\xbc\x06 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08operator\x18\xa4\xd1\xa8\x11 \x01(\tH\x01\x88\x01\x01\x12\x11\n\x06values\x18\xa2\xba\x96w \x03(\t\"W\n\x08Operator\x12\x16\n\x12UNDEFINED_OPERATOR\x10\x00\x12\x07\n\x02IN\x10\xa5\x12\x12\r\n\x06NOT_IN\x10\xb1\xbc\xebL\x12\x1b\n\x14OPERATOR_UNSPECIFIED\x10\xfc\xff\xba=B\x06\n\x04_keyB\x0b\n\t_operator\"Z\n\x1eSchedulingOnInstanceStopAction\x12\"\n\x11\x64iscard_local_ssd\x18\xcf\xe9\xad\x98\x01 \x01(\x08H\x00\x88\x01\x01\x42\x14\n\x12_discard_local_ssd\"S\n\nScreenshot\x12\x19\n\x08\x63ontents\x18\x9a\xb6\xbd\xf1\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_contentsB\x07\n\x05_kind\"\xef\x03\n\x1eSecurityPoliciesAggregatedList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12T\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x42.google.cloud.compute.v1.SecurityPoliciesAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.SecurityPoliciesScopedList:\x02\x38\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbf\x01\n7SecurityPoliciesListPreconfiguredExpressionSetsResponse\x12\x62\n\x1dpreconfigured_expression_sets\x18\xfa\x8c\xd7\xff\x01 \x01(\x0b\x32\x32.google.cloud.compute.v1.SecurityPoliciesWafConfigH\x00\x88\x01\x01\x42 \n\x1e_preconfigured_expression_sets\"\xaa\x01\n\x1aSecurityPoliciesScopedList\x12\x45\n\x11security_policies\x18\xef\xa6\xf7< \x03(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"r\n\x19SecurityPoliciesWafConfig\x12G\n\twaf_rules\x18\xd4\xc3\xdb# \x01(\x0b\x32,.google.cloud.compute.v1.PreconfiguredWafSetH\x00\x88\x01\x01\x42\x0c\n\n_waf_rules\"\xcc\x0b\n\x0eSecurityPolicy\x12k\n\x1a\x61\x64\x61ptive_protection_config\x18\xdf\xfb\xd1G \x01(\x0b\x32?.google.cloud.compute.v1.SecurityPolicyAdaptiveProtectionConfigH\x00\x88\x01\x01\x12\x66\n\x17\x61\x64vanced_options_config\x18\xc0\xd3\x9d\xd6\x01 \x01(\x0b\x32<.google.cloud.compute.v1.SecurityPolicyAdvancedOptionsConfigH\x01\x88\x01\x01\x12L\n\x0c\x61ssociations\x18\x92\xe8\xca\xf2\x01 \x03(\x0b\x32\x32.google.cloud.compute.v1.SecurityPolicyAssociation\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\x63\n\x16\x64\x64os_protection_config\x18\xcd\x84\xff\x17 \x01(\x0b\x32;.google.cloud.compute.v1.SecurityPolicyDdosProtectionConfigH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x05\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x07\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x08\x88\x01\x01\x12G\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x33.google.cloud.compute.v1.SecurityPolicy.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\t\x88\x01\x01\x12\x16\n\x06parent\x18\xaa\x91\xac% \x01(\tH\n\x88\x01\x01\x12h\n\x18recaptcha_options_config\x18\xdb\xd4\xbd\xf7\x01 \x01(\x0b\x32=.google.cloud.compute.v1.SecurityPolicyRecaptchaOptionsConfigH\x0b\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0c\x88\x01\x01\x12=\n\x05rules\x18\xf7\x91\xf5\x33 \x03(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRule\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\r\x88\x01\x01\x12\x1b\n\nshort_name\x18\xee\xb8\xd0\xea\x01 \x01(\tH\x0e\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x0f\x88\x01\x01\x12W\n\x13user_defined_fields\x18\xa3\x89\xc0\r \x03(\x0b\x32\x37.google.cloud.compute.v1.SecurityPolicyUserDefinedField\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"d\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x12\n\x0b\x43LOUD_ARMOR\x10\xf5\x9c\xa4|\x12\x17\n\x10\x43LOUD_ARMOR_EDGE\x10\xc7\xa2\xc7w\x12\x1b\n\x13\x43LOUD_ARMOR_NETWORK\x10\xc4\xac\xf9\xe8\x01\x42\x1d\n\x1b_adaptive_protection_configB\x1a\n\x18_advanced_options_configB\x15\n\x13_creation_timestampB\x19\n\x17_ddos_protection_configB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\t\n\x07_parentB\x1b\n\x19_recaptcha_options_configB\t\n\x07_regionB\x0c\n\n_self_linkB\r\n\x0b_short_nameB\x07\n\x05_type\"\xcd\x01\n&SecurityPolicyAdaptiveProtectionConfig\x12\x83\x01\n\x1alayer7_ddos_defense_config\x18\xa3\xd9\xc3\xd0\x01 \x01(\x0b\x32V.google.cloud.compute.v1.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigH\x00\x88\x01\x01\x42\x1d\n\x1b_layer7_ddos_defense_config\"\xf3\x02\n=SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\x08H\x00\x88\x01\x01\x12 \n\x0frule_visibility\x18\xb5\xd8\x90\xd8\x01 \x01(\tH\x01\x88\x01\x01\x12\x83\x01\n\x11threshold_configs\x18\x9d\xab\xe3\x1c \x03(\x0b\x32\x65.google.cloud.compute.v1.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfig\"R\n\x0eRuleVisibility\x12\x1d\n\x19UNDEFINED_RULE_VISIBILITY\x10\x00\x12\x0f\n\x07PREMIUM\x10\xb7\xb4\xc1\xbe\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x42\t\n\x07_enableB\x12\n\x10_rule_visibility\"\xd1\x06\nLSecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfig\x12\x30\n auto_deploy_confidence_threshold\x18\xbe\xed\x99( \x01(\x02H\x00\x88\x01\x01\x12*\n\x1a\x61uto_deploy_expiration_sec\x18\x89\xb5\x9a! \x01(\x05H\x01\x88\x01\x01\x12\x38\n\'auto_deploy_impacted_baseline_threshold\x18\xc3\x9c\xb9\x8b\x01 \x01(\x02H\x02\x88\x01\x01\x12+\n\x1a\x61uto_deploy_load_threshold\x18\x9a\xa0\x82\xf9\x01 \x01(\x02H\x03\x88\x01\x01\x12\'\n\x16\x64\x65tection_absolute_qps\x18\xe6\xfd\xd7\xb6\x01 \x01(\x02H\x04\x88\x01\x01\x12)\n\x18\x64\x65tection_load_threshold\x18\xcc\xca\xa3\xcd\x01 \x01(\x02H\x05\x88\x01\x01\x12\x33\n\"detection_relative_to_baseline_qps\x18\x85\x9b\xf6\x8a\x01 \x01(\x02H\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\xa5\x01\n\x1btraffic_granularity_configs\x18\xbe\xb4\xda( \x03(\x0b\x32}.google.cloud.compute.v1.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigTrafficGranularityConfigB#\n!_auto_deploy_confidence_thresholdB\x1d\n\x1b_auto_deploy_expiration_secB*\n(_auto_deploy_impacted_baseline_thresholdB\x1d\n\x1b_auto_deploy_load_thresholdB\x19\n\x17_detection_absolute_qpsB\x1b\n\x19_detection_load_thresholdB%\n#_detection_relative_to_baseline_qpsB\x07\n\x05_name\"\xd0\x02\ndSecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigTrafficGranularityConfig\x12)\n\x18\x65nable_each_unique_value\x18\xc5\x8a\xde\xdf\x01 \x01(\x08H\x00\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x01\x88\x01\x01\x12\x15\n\x05value\x18\xf1\xa2\xb2\x35 \x01(\tH\x02\x88\x01\x01\"`\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x18\n\x10HTTP_HEADER_HOST\x10\xe3\xe5\xbe\xb2\x01\x12\x11\n\tHTTP_PATH\x10\xfc\xd2\xc4\x94\x01\x12\x17\n\x10UNSPECIFIED_TYPE\x10\xe2\xee\xdb\x19\x42\x1b\n\x19_enable_each_unique_valueB\x07\n\x05_typeB\x08\n\x06_value\"\xad\x04\n#SecurityPolicyAdvancedOptionsConfig\x12p\n\x12json_custom_config\x18\xb9\xd9\x99\x35 \x01(\x0b\x32L.google.cloud.compute.v1.SecurityPolicyAdvancedOptionsConfigJsonCustomConfigH\x00\x88\x01\x01\x12\x1d\n\x0cjson_parsing\x18\xd9\x84\xda\x86\x01 \x01(\tH\x01\x88\x01\x01\x12\x19\n\tlog_level\x18\xc9\xbd\x84\x43 \x01(\tH\x02\x88\x01\x01\x12,\n\x1crequest_body_inspection_size\x18\xff\x8d\x9a[ \x01(\tH\x03\x88\x01\x01\x12#\n\x17user_ip_request_headers\x18\xb2\xef\xe2\xc8\x01 \x03(\t\"k\n\x0bJsonParsing\x12\x1a\n\x16UNDEFINED_JSON_PARSING\x10\x00\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x12\x1c\n\x15STANDARD_WITH_GRAPHQL\x10\x92\xbf\x81\x33\"C\n\x08LogLevel\x12\x17\n\x13UNDEFINED_LOG_LEVEL\x10\x00\x12\r\n\x06NORMAL\x10\xe7\xe1\xe6L\x12\x0f\n\x07VERBOSE\x10\xe2\x8a\xe4\xfd\x01\x42\x15\n\x13_json_custom_configB\x0f\n\r_json_parsingB\x0c\n\n_log_levelB\x1f\n\x1d_request_body_inspection_size\"O\n3SecurityPolicyAdvancedOptionsConfigJsonCustomConfig\x12\x18\n\rcontent_types\x18\xb3\xe2\xa7\x08 \x03(\t\"\xbe\x02\n\x19SecurityPolicyAssociation\x12\x1d\n\rattachment_id\x18\xb7\xc3\xbd\x31 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0c\x64isplay_name\x18\xe8\x87\x91\x02 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x10\x65xcluded_folders\x18\xd0\x98\x8e\x94\x01 \x03(\t\x12\x1d\n\x11\x65xcluded_projects\x18\xcf\x9e\xfd\x86\x01 \x03(\t\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x02\x88\x01\x01\x12\"\n\x12security_policy_id\x18\x89\x92\x8f\x61 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\nshort_name\x18\xee\xb8\xd0\xea\x01 \x01(\tH\x04\x88\x01\x01\x42\x10\n\x0e_attachment_idB\x0f\n\r_display_nameB\x07\n\x05_nameB\x15\n\x13_security_policy_idB\r\n\x0b_short_name\"\xc7\x01\n\"SecurityPolicyDdosProtectionConfig\x12 \n\x0f\x64\x64os_protection\x18\x94\x9f\x9b\x83\x01 \x01(\tH\x00\x88\x01\x01\"k\n\x0e\x44\x64osProtection\x12\x1d\n\x19UNDEFINED_DDOS_PROTECTION\x10\x00\x12\x0f\n\x08\x41\x44VANCED\x10\xa2\xb0\xb5\x1e\x12\x17\n\x10\x41\x44VANCED_PREVIEW\x10\x8b\xd9\xc0\x13\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x42\x12\n\x10_ddos_protection\"\x83\x02\n\x12SecurityPolicyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x03\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\n\n\x08_warning\"`\n$SecurityPolicyRecaptchaOptionsConfig\x12\"\n\x11redirect_site_key\x18\xea\x84\xbc\xd5\x01 \x01(\tH\x00\x88\x01\x01\x42\x14\n\x12_redirect_site_key\"N\n\x17SecurityPolicyReference\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_security_policy\"\xf7\x06\n\x12SecurityPolicyRule\x12\x16\n\x06\x61\x63tion\x18\xb6\xfc\xbdY \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12[\n\rheader_action\x18\xa8\xa0\xb8\x9c\x01 \x01(\x0b\x32;.google.cloud.compute.v1.SecurityPolicyRuleHttpHeaderActionH\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12I\n\x05match\x18\xc5\xb3\xb7\x31 \x01(\x0b\x32\x32.google.cloud.compute.v1.SecurityPolicyRuleMatcherH\x04\x88\x01\x01\x12Y\n\rnetwork_match\x18\xf4\xf8\xfa\xdc\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.SecurityPolicyRuleNetworkMatcherH\x05\x88\x01\x01\x12k\n\x18preconfigured_waf_config\x18\xe3\x9f\x96\x38 \x01(\x0b\x32\x41.google.cloud.compute.v1.SecurityPolicyRulePreconfiguredWafConfigH\x06\x88\x01\x01\x12\x17\n\x07preview\x18\xc8\xc7\xa3h \x01(\x08H\x07\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x08\x88\x01\x01\x12_\n\x12rate_limit_options\x18\xfb\xc9\x9a \x01(\x0b\x32;.google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsH\t\x88\x01\x01\x12\\\n\x10redirect_options\x18\xbb\x92\xeeM \x01(\x0b\x32:.google.cloud.compute.v1.SecurityPolicyRuleRedirectOptionsH\n\x88\x01\x01\x42\t\n\x07_actionB\x0e\n\x0c_descriptionB\x10\n\x0e_header_actionB\x07\n\x05_kindB\x08\n\x06_matchB\x10\n\x0e_network_matchB\x1b\n\x19_preconfigured_waf_configB\n\n\x08_previewB\x0b\n\t_priorityB\x15\n\x13_rate_limit_optionsB\x13\n\x11_redirect_options\"\x95\x01\n\"SecurityPolicyRuleHttpHeaderAction\x12o\n\x17request_headers_to_adds\x18\xcd\xab\xfa) \x03(\x0b\x32K.google.cloud.compute.v1.SecurityPolicyRuleHttpHeaderActionHttpHeaderOption\"\x90\x01\n2SecurityPolicyRuleHttpHeaderActionHttpHeaderOption\x12\x1b\n\x0bheader_name\x18\xfd\xc1\xc7\x34 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0cheader_value\x18\xbf\xf2\xeb` \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_header_nameB\x0f\n\r_header_value\"\x9b\x03\n\x19SecurityPolicyRuleMatcher\x12P\n\x06\x63onfig\x18\xc2\x86\xfey \x01(\x0b\x32\x38.google.cloud.compute.v1.SecurityPolicyRuleMatcherConfigH\x00\x88\x01\x01\x12\x33\n\x04\x65xpr\x18\xf5\xf3\xbe\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.ExprH\x01\x88\x01\x01\x12\\\n\x0c\x65xpr_options\x18\xd4\xc4\xec\xe7\x01 \x01(\x0b\x32=.google.cloud.compute.v1.SecurityPolicyRuleMatcherExprOptionsH\x02\x88\x01\x01\x12\x1f\n\x0eversioned_expr\x18\xbd\xe3\xd6\x99\x01 \x01(\tH\x03\x88\x01\x01\"@\n\rVersionedExpr\x12\x1c\n\x18UNDEFINED_VERSIONED_EXPR\x10\x00\x12\x11\n\nSRC_IPS_V1\x10\x89\xfd\xe8!B\t\n\x07_configB\x07\n\x05_exprB\x0f\n\r_expr_optionsB\x11\n\x0f_versioned_expr\"<\n\x1fSecurityPolicyRuleMatcherConfig\x12\x19\n\rsrc_ip_ranges\x18\xd3\x80\x87\xce\x01 \x03(\t\"\xaf\x01\n$SecurityPolicyRuleMatcherExprOptions\x12q\n\x11recaptcha_options\x18\xc6\xf6\xc7\xb9\x01 \x01(\x0b\x32M.google.cloud.compute.v1.SecurityPolicyRuleMatcherExprOptionsRecaptchaOptionsH\x00\x88\x01\x01\x42\x14\n\x12_recaptcha_options\"~\n4SecurityPolicyRuleMatcherExprOptionsRecaptchaOptions\x12!\n\x16\x61\x63tion_token_site_keys\x18\x9d\xea\xc9\x1c \x03(\t\x12#\n\x17session_token_site_keys\x18\xfd\xf2\xfa\x9e\x01 \x03(\t\"\xc3\x02\n SecurityPolicyRuleNetworkMatcher\x12\x1a\n\x0e\x64\x65st_ip_ranges\x18\x91\xd7\xee\xa0\x01 \x03(\t\x12\x16\n\ndest_ports\x18\xb5\xb0\x93\xb5\x01 \x03(\t\x12\x17\n\x0cip_protocols\x18\xc3\x8f\xcd{ \x03(\t\x12\x13\n\x08src_asns\x18\xf2\xbd\x97\x38 \x03(\r\x12\x19\n\rsrc_ip_ranges\x18\xd3\x80\x87\xce\x01 \x03(\t\x12\x15\n\tsrc_ports\x18\xf7\xbb\x9e\xd4\x01 \x03(\t\x12\x1b\n\x10src_region_codes\x18\x96\xe3\x9f/ \x03(\t\x12n\n\x13user_defined_fields\x18\xa3\x89\xc0\r \x03(\x0b\x32N.google.cloud.compute.v1.SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch\"i\n5SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x06values\x18\xa2\xba\x96w \x03(\tB\x07\n\x05_name\"\x8d\x01\n(SecurityPolicyRulePreconfiguredWafConfig\x12\x61\n\nexclusions\x18\xe5\xf8\xbf\x63 \x03(\x0b\x32J.google.cloud.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusion\"\x82\x05\n1SecurityPolicyRulePreconfiguredWafConfigExclusion\x12|\n\x1arequest_cookies_to_exclude\x18\xf6\xde\xdfJ \x03(\x0b\x32U.google.cloud.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParams\x12|\n\x1arequest_headers_to_exclude\x18\x9f\xa4\x93\x1e \x03(\x0b\x32U.google.cloud.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParams\x12\x82\x01\n\x1frequest_query_params_to_exclude\x18\x88\x9e\xba\xa2\x01 \x03(\x0b\x32U.google.cloud.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParams\x12y\n\x17request_uris_to_exclude\x18\x9e\xaa\x9f+ \x03(\x0b\x32U.google.cloud.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParams\x12\x1b\n\x0ftarget_rule_ids\x18\xe3\xe3\xd5\xed\x01 \x03(\t\x12 \n\x0ftarget_rule_set\x18\x8d\xaf\xd6\xed\x01 \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_target_rule_set\"\xe7\x01\n.google.cloud.compute.v1.ServiceAttachmentConsumerProjectLimit\x12 \n\x15\x63onsumer_reject_lists\x18\x9e\x99\xa5\x61 \x03(\t\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x17\n\x0c\x64omain_names\x18\x8d\xd8\x89\x03 \x03(\t\x12&\n\x15\x65nable_proxy_protocol\x18\x85\x87\xbc\xad\x01 \x01(\x08H\x03\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x04\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12M\n\x08metadata\x18\xaf\xf6\xb5) \x03(\x0b\x32\x38.google.cloud.compute.v1.ServiceAttachment.MetadataEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x17\n\x0bnat_subnets\x18\x98\x8f\xdb\xb2\x01 \x03(\t\x12(\n\x18producer_forwarding_rule\x18\xd1\xa8\x9cv \x01(\tH\x08\x88\x01\x01\x12,\n\x1bpropagated_connection_limit\x18\xfe\xc8\xd3\x9e\x01 \x01(\rH\t\x88\x01\x01\x12L\n\x19psc_service_attachment_id\x18\xee\xfa\xcf\xfb\x01 \x01(\x0b\x32 .google.cloud.compute.v1.Uint128H\n\x88\x01\x01\x12%\n\x15reconcile_connections\x18\xe4\xc3\xeb; \x01(\x08H\x0b\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0c\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\r\x88\x01\x01\x12\x1d\n\x0etarget_service\x18\x87\xfcN \x01(\tH\x0e\x88\x01\x01\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x95\x01\n\x14\x43onnectionPreference\x12#\n\x1fUNDEFINED_CONNECTION_PREFERENCE\x10\x00\x12\x17\n\x10\x41\x43\x43\x45PT_AUTOMATIC\x10\x94\xf7\xf0#\x12\x15\n\rACCEPT_MANUAL\x10\xdd\xed\xf1\xb1\x01\x12(\n!CONNECTION_PREFERENCE_UNSPECIFIED\x10\xb4\xa0\xbf\x10\x42\x18\n\x16_connection_preferenceB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x18\n\x16_enable_proxy_protocolB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x1b\n\x19_producer_forwarding_ruleB\x1e\n\x1c_propagated_connection_limitB\x1c\n\x1a_psc_service_attachment_idB\x18\n\x16_reconcile_connectionsB\t\n\x07_regionB\x0c\n\n_self_linkB\x11\n\x0f_target_service\"\xd4\x03\n\x1fServiceAttachmentAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12U\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x43.google.cloud.compute.v1.ServiceAttachmentAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x63\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x44\n\x05value\x18\x02 \x01(\x0b\x32\x35.google.cloud.compute.v1.ServiceAttachmentsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x90\x04\n\"ServiceAttachmentConnectedEndpoint\x12 \n\x10\x63onsumer_network\x18\xe5\xdd\xa4y \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08\x65ndpoint\x18\x95\xbb\x9c> \x01(\tH\x01\x88\x01\x01\x12!\n\x10\x65ndpoint_with_id\x18\x8a\xc5\x90\xd4\x01 \x01(\tH\x02\x88\x01\x01\x12\x12\n\x07nat_ips\x18\x8e\xf0\x8b\x38 \x03(\t\x12,\n\x1bpropagated_connection_count\x18\xd2\xd3\xe3\x9a\x01 \x01(\rH\x03\x88\x01\x01\x12\"\n\x11psc_connection_id\x18\xdd\xa5\xa3\x8b\x01 \x01(\x04H\x04\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x05\x88\x01\x01\"\x94\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0f\n\x08\x41\x43\x43\x45PTED\x10\xa7\x9f\xd2u\x12\x0e\n\x06\x43LOSED\x10\xec\xaa\xa3\xb5\x01\x12\x17\n\x0fNEEDS_ATTENTION\x10\xbc\x8b\xa2\xa4\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x0f\n\x08REJECTED\x10\xfe\x88\x84S\x12\x19\n\x12STATUS_UNSPECIFIED\x10\xca\xcc\x8b\x14\x42\x13\n\x11_consumer_networkB\x0b\n\t_endpointB\x13\n\x11_endpoint_with_idB\x1e\n\x1c_propagated_connection_countB\x14\n\x12_psc_connection_idB\t\n\x07_status\"\xf4\x01\n%ServiceAttachmentConsumerProjectLimit\x12 \n\x10\x63onnection_limit\x18\x9a\x9e\xd4> \x01(\rH\x00\x88\x01\x01\x12\x1c\n\x0c\x65ndpoint_url\x18\xc5\xff\xc4j \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0bnetwork_url\x18\xde\x8f\xe6\x62 \x01(\tH\x02\x88\x01\x01\x12\"\n\x11project_id_or_num\x18\xa8\x8a\xe5\xa6\x01 \x01(\tH\x03\x88\x01\x01\x42\x13\n\x11_connection_limitB\x0f\n\r_endpoint_urlB\x0e\n\x0c_network_urlB\x14\n\x12_project_id_or_num\"\xb3\x02\n\x15ServiceAttachmentList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12<\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32*.google.cloud.compute.v1.ServiceAttachment\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb2\x01\n\x1cServiceAttachmentsScopedList\x12K\n\x13service_attachments\x18\xa6\x92\xba\x92\x01 \x03(\x0b\x32*.google.cloud.compute.v1.ServiceAttachment\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xa6\x02\n&SetBackendServiceTargetSslProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x8a\x01\n7target_ssl_proxies_set_backend_service_request_resource\x18\xa4\xe9\xa8\x42 \x01(\x0b\x32\x41.google.cloud.compute.v1.TargetSslProxiesSetBackendServiceRequestB\x03\xe0\x41\x02\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa7\x02\n&SetBackendServiceTargetTcpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x8b\x01\n7target_tcp_proxies_set_backend_service_request_resource\x18\xef\xd1\xc2\x82\x01 \x01(\x0b\x32\x41.google.cloud.compute.v1.TargetTcpProxiesSetBackendServiceRequestB\x03\xe0\x41\x02\x12!\n\x10target_tcp_proxy\x18\xe2\xd6\xf0\xef\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb1\x02\n\x1aSetBackupTargetPoolRequest\x12\x1e\n\x0e\x66\x61ilover_ratio\x18\xfe\x94\xb4\x65 \x01(\x02H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x12T\n\x19target_reference_resource\x18\xf0\xb7\xdd\xf9\x01 \x01(\x0b\x32(.google.cloud.compute.v1.TargetReferenceB\x03\xe0\x41\x02\x42\x11\n\x0f_failover_ratioB\r\n\x0b_request_id\"\xae\x02\n(SetCertificateMapTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x8f\x01\n9target_https_proxies_set_certificate_map_request_resource\x18\xbb\xb6\xfe\xde\x01 \x01(\x0b\x32\x43.google.cloud.compute.v1.TargetHttpsProxiesSetCertificateMapRequestB\x03\xe0\x41\x02\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa7\x02\n&SetCertificateMapTargetSslProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x8b\x01\n7target_ssl_proxies_set_certificate_map_request_resource\x18\xba\x96\x83\xa4\x01 \x01(\x0b\x32\x41.google.cloud.compute.v1.TargetSslProxiesSetCertificateMapRequestB\x03\xe0\x41\x02\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xea\x01\n\x1fSetCloudArmorTierProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12y\n.projects_set_cloud_armor_tier_request_resource\x18\xcf\xfb\xde$ \x01(\x0b\x32\x39.google.cloud.compute.v1.ProjectsSetCloudArmorTierRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x8c\x03\n*SetCommonInstanceMetadataOperationMetadata\x12$\n\x13\x63lient_operation_id\x18\xe7\x8d\xde\x8d\x01 \x01(\tH\x00\x88\x01\x01\x12\x83\x01\n\x17per_location_operations\x18\x94\xd1\x82\xc3\x01 \x03(\x0b\x32^.google.cloud.compute.v1.SetCommonInstanceMetadataOperationMetadata.PerLocationOperationsEntry\x1a\x99\x01\n\x1aPerLocationOperationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12j\n\x05value\x18\x02 \x01(\x0b\x32[.google.cloud.compute.v1.SetCommonInstanceMetadataOperationMetadataPerLocationOperationInfo:\x02\x38\x01\x42\x16\n\x14_client_operation_id\"\xb2\x02\nBSetCommonInstanceMetadataOperationMetadataPerLocationOperationInfo\x12\x36\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x1f.google.cloud.compute.v1.StatusH\x00\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x01\x88\x01\x01\"\x88\x01\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x10\n\tABANDONED\x10\xb4\xc3\x80\'\x12\x0b\n\x04\x44ONE\x10\x82\xb7\x80\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x12\n\nPROPAGATED\x10\xdb\xb4\x82\xf2\x01\x12\x12\n\x0bPROPAGATING\x10\x86\x83\xcbN\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x08\n\x06_errorB\x08\n\x06_state\"\xbe\x01\n\'SetCommonInstanceMetadataProjectRequest\x12\x45\n\x11metadata_resource\x18\x9e\xbe\xe6\x8a\x01 \x01(\x0b\x32!.google.cloud.compute.v1.MetadataB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf7\x01\n#SetDefaultNetworkTierProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x81\x01\n2projects_set_default_network_tier_request_resource\x18\x8a\xc0\xa3< \x01(\x0b\x32=.google.cloud.compute.v1.ProjectsSetDefaultNetworkTierRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe9\x01\n$SetDeletionProtectionInstanceRequest\x12$\n\x13\x64\x65letion_protection\x18\xea\xff\xb2\xda\x01 \x01(\x08H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x16\n\x14_deletion_protectionB\r\n\x0b_request_id\"\xe2\x01\n SetDiskAutoDeleteInstanceRequest\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\x08\x42\x03\xe0\x41\x02\x12\x1b\n\x0b\x64\x65vice_name\x18\xd4\xb5\x9a \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xff\x01\n)SetEdgeSecurityPolicyBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x64\n\"security_policy_reference_resource\x18\xf0\xb4\xab\x61 \x01(\x0b\x32\x30.google.cloud.compute.v1.SecurityPolicyReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x82\x02\n*SetEdgeSecurityPolicyBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x64\n\"security_policy_reference_resource\x18\xf0\xb4\xab\x61 \x01(\x0b\x32\x30.google.cloud.compute.v1.SecurityPolicyReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xbb\x01\n SetIamPolicyBackendBucketRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xbc\x01\n!SetIamPolicyBackendServiceRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xc4\x01\n\x17SetIamPolicyDiskRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\xbb\x01\n!SetIamPolicyFirewallPolicyRequest\x12|\n/global_organization_set_policy_request_resource\x18\xde\x94\xccT \x01(\x0b\x32;.google.cloud.compute.v1.GlobalOrganizationSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xb3\x01\n\x18SetIamPolicyImageRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xc8\x01\n\x1bSetIamPolicyInstanceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\xbe\x01\n#SetIamPolicyInstanceTemplateRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xcf\x01\n\"SetIamPolicyInstantSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\xc9\x01\n.SetIamPolicyInterconnectAttachmentGroupRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xbf\x01\n$SetIamPolicyInterconnectGroupRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xb5\x01\n\x1aSetIamPolicyLicenseRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xba\x01\n\x1fSetIamPolicyMachineImageRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xd7\x01\n$SetIamPolicyNetworkAttachmentRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xc3\x01\n(SetIamPolicyNetworkFirewallPolicyRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xc9\x01\n\x1cSetIamPolicyNodeGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\xd2\x01\n\x1fSetIamPolicyNodeTemplateRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xda\x01\n\'SetIamPolicyRegionBackendServiceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xd0\x01\n\x1dSetIamPolicyRegionDiskRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xdb\x01\n(SetIamPolicyRegionInstantSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xe1\x01\n.SetIamPolicyRegionNetworkFirewallPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xfd\x01\n#SetIamPolicyReservationBlockRequest\x12\x1f\n\x0fparent_resource\x18\x83\x98\xd0\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12l\n\'zone_set_nested_policy_request_resource\x18\xd3\xf1\x80\x7f \x01(\x0b\x32\x33.google.cloud.compute.v1.ZoneSetNestedPolicyRequestB\x03\xe0\x41\x02\"\xcb\x01\n\x1eSetIamPolicyReservationRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\x80\x02\n&SetIamPolicyReservationSubBlockRequest\x12\x1f\n\x0fparent_resource\x18\x83\x98\xd0\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12l\n\'zone_set_nested_policy_request_resource\x18\xd3\xf1\x80\x7f \x01(\x0b\x32\x33.google.cloud.compute.v1.ZoneSetNestedPolicyRequestB\x03\xe0\x41\x02\"\xd4\x01\n!SetIamPolicyResourcePolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xd7\x01\n$SetIamPolicyServiceAttachmentRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xb6\x01\n\x1bSetIamPolicySnapshotRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xcb\x01\n\x1eSetIamPolicyStoragePoolRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\xd0\x01\n\x1dSetIamPolicySubnetworkRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xde\x02\n.SetInstanceTemplateInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x98\x01\n>instance_group_managers_set_instance_template_request_resource\x18\xc5\xd9\xd6\x04 \x01(\x0b\x32H.google.cloud.compute.v1.InstanceGroupManagersSetInstanceTemplateRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe4\x02\n4SetInstanceTemplateRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x94\x01\n.google.cloud.compute.v1.TargetSslProxiesSetProxyHeaderRequestB\x03\xe0\x41\x02\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x9d\x02\n#SetProxyHeaderTargetTcpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x84\x01\n4target_tcp_proxies_set_proxy_header_request_resource\x18\xc3\x98\xf1h \x01(\x0b\x32>.google.cloud.compute.v1.TargetTcpProxiesSetProxyHeaderRequestB\x03\xe0\x41\x02\x12!\n\x10target_tcp_proxy\x18\xe2\xd6\xf0\xef\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa7\x02\n&SetQuicOverrideTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x8a\x01\n7target_https_proxies_set_quic_override_request_resource\x18\xe2\xf5\xe3\" \x01(\x0b\x32\x41.google.cloud.compute.v1.TargetHttpsProxiesSetQuicOverrideRequestB\x03\xe0\x41\x02\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xee\x01\n\x1cSetSchedulingInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12I\n\x13scheduling_resource\x18\xd9\xac\xee\xdc\x01 \x01(\x0b\x32#.google.cloud.compute.v1.SchedulingB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xfe\x01\n&SetSecurityPolicyBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x64\n\"security_policy_reference_resource\x18\xf0\xb4\xab\x61 \x01(\x0b\x32\x30.google.cloud.compute.v1.SecurityPolicyReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa3\x02\n SetSecurityPolicyInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12z\n.instances_set_security_policy_request_resource\x18\x8a\xd1\xbav \x01(\x0b\x32:.google.cloud.compute.v1.InstancesSetSecurityPolicyRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa5\x02\n,SetSecurityPolicyRegionBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x64\n\"security_policy_reference_resource\x18\xf0\xb4\xab\x61 \x01(\x0b\x32\x30.google.cloud.compute.v1.SecurityPolicyReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x9b\x02\n&SetSecurityPolicyTargetInstanceRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x64\n\"security_policy_reference_resource\x18\xf0\xb4\xab\x61 \x01(\x0b\x32\x30.google.cloud.compute.v1.SecurityPolicyReferenceB\x03\xe0\x41\x02\x12 \n\x0ftarget_instance\x18\x83\x8f\x96\x8a\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x96\x02\n\"SetSecurityPolicyTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x64\n\"security_policy_reference_resource\x18\xf0\xb4\xab\x61 \x01(\x0b\x32\x30.google.cloud.compute.v1.SecurityPolicyReferenceB\x03\xe0\x41\x02\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa4\x02\n SetServiceAccountInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12{\n.instances_set_service_account_request_resource\x18\xb8\x9e\xb2\x83\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InstancesSetServiceAccountRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xb0\x02\n1SetShieldedInstanceIntegrityPolicyInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12v\n+shielded_instance_integrity_policy_resource\x18\xb6\xdc\x8d\xc3\x01 \x01(\x0b\x32\x38.google.cloud.compute.v1.ShieldedInstanceIntegrityPolicyB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe5\x02\n/SetSslCertificatesRegionTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9e\x01\nAregion_target_https_proxies_set_ssl_certificates_request_resource\x18\x87\x84\xa6\xba\x01 \x01(\x0b\x32J.google.cloud.compute.v1.RegionTargetHttpsProxiesSetSslCertificatesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb0\x02\n)SetSslCertificatesTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x90\x01\n:target_https_proxies_set_ssl_certificates_request_resource\x18\xdc\xab\xb2j \x01(\x0b\x32\x44.google.cloud.compute.v1.TargetHttpsProxiesSetSslCertificatesRequestB\x03\xe0\x41\x02\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa9\x02\n\'SetSslCertificatesTargetSslProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x8c\x01\n8target_ssl_proxies_set_ssl_certificates_request_resource\x18\xbd\xcb\xc5\x46 \x01(\x0b\x32\x42.google.cloud.compute.v1.TargetSslProxiesSetSslCertificatesRequestB\x03\xe0\x41\x02\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf3\x01\n#SetSslPolicyTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Z\n\x1dssl_policy_reference_resource\x18\xbc\xf4\x9fp \x01(\x0b\x32+.google.cloud.compute.v1.SslPolicyReferenceB\x03\xe0\x41\x02\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf0\x01\n!SetSslPolicyTargetSslProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Z\n\x1dssl_policy_reference_resource\x18\xbc\xf4\x9fp \x01(\x0b\x32+.google.cloud.compute.v1.SslPolicyReferenceB\x03\xe0\x41\x02\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xdc\x01\n\x16SetTagsInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12=\n\rtags_resource\x18\xf4\x9a\x85\x9e\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.TagsB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x87\x02\n\x1eSetTargetForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12T\n\x19target_reference_resource\x18\xf0\xb7\xdd\xf9\x01 \x01(\x0b\x32(.google.cloud.compute.v1.TargetReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xec\x01\n$SetTargetGlobalForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12T\n\x19target_reference_resource\x18\xf0\xb7\xdd\xf9\x01 \x01(\x0b\x32(.google.cloud.compute.v1.TargetReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd0\x02\n)SetTargetPoolsInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x8f\x01\n9instance_group_managers_set_target_pools_request_resource\x18\x88\x86\x88\x86\x01 \x01(\x0b\x32\x43.google.cloud.compute.v1.InstanceGroupManagersSetTargetPoolsRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe6\x02\n/SetTargetPoolsRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9b\x01\n@region_instance_group_managers_set_target_pools_request_resource\x18\xfd\xca\xc5% \x01(\x0b\x32I.google.cloud.compute.v1.RegionInstanceGroupManagersSetTargetPoolsRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x90\x02\n%SetUrlMapRegionTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\x12U\n\x1aurl_map_reference_resource\x18\x95\xe6\x8e\xbe\x01 \x01(\x0b\x32(.google.cloud.compute.v1.UrlMapReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x92\x02\n&SetUrlMapRegionTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x12U\n\x1aurl_map_reference_resource\x18\x95\xe6\x8e\xbe\x01 \x01(\x0b\x32(.google.cloud.compute.v1.UrlMapReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe9\x01\n\x1fSetUrlMapTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\x12U\n\x1aurl_map_reference_resource\x18\x95\xe6\x8e\xbe\x01 \x01(\x0b\x32(.google.cloud.compute.v1.UrlMapReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xeb\x01\n SetUrlMapTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x12U\n\x1aurl_map_reference_resource\x18\x95\xe6\x8e\xbe\x01 \x01(\x0b\x32(.google.cloud.compute.v1.UrlMapReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd0\x01\n\"SetUsageExportBucketProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\\\n\x1eusage_export_location_resource\x18\xeb\xcc\xd4\t \x01(\x0b\x32,.google.cloud.compute.v1.UsageExportLocationB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xfa\x02\n\rShareSettings\x12N\n\x0bproject_map\x18\xb6\xd6\xff? \x03(\x0b\x32\x36.google.cloud.compute.v1.ShareSettings.ProjectMapEntry\x12\x1b\n\nshare_type\x18\x9a\x97\xb8\xab\x01 \x01(\tH\x00\x88\x01\x01\x1a\x66\n\x0fProjectMapEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.ShareSettingsProjectConfig:\x02\x38\x01\"\x84\x01\n\tShareType\x12\x18\n\x14UNDEFINED_SHARE_TYPE\x10\x00\x12\x0c\n\x05LOCAL\x10\xcb\xce\xcf\"\x12\x14\n\x0cORGANIZATION\x10\xb3\xaa\x8f\x83\x01\x12\x1e\n\x16SHARE_TYPE_UNSPECIFIED\x10\x92\xbc\xf6\xeb\x01\x12\x19\n\x11SPECIFIC_PROJECTS\x10\xe7\xb1\xee\xa5\x01\x42\r\n\x0b_share_type\"G\n\x1aShareSettingsProjectConfig\x12\x1a\n\nproject_id\x18\x81\xc8\xd2T \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_project_id\"\xce\x01\n\x16ShieldedInstanceConfig\x12,\n\x1b\x65nable_integrity_monitoring\x18\xb6\xdb\x87\xc3\x01 \x01(\x08H\x00\x88\x01\x01\x12\"\n\x12\x65nable_secure_boot\x18\xfe\x83\xf6: \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0b\x65nable_vtpm\x18\xf7\xe4\xdbV \x01(\x08H\x02\x88\x01\x01\x42\x1e\n\x1c_enable_integrity_monitoringB\x15\n\x13_enable_secure_bootB\x0e\n\x0c_enable_vtpm\"\x81\x04\n\x18ShieldedInstanceIdentity\x12`\n\x17\x65\x63\x63_p256_encryption_key\x18\xc5\xc7\xf6\xdf\x01 \x01(\x0b\x32\x36.google.cloud.compute.v1.ShieldedInstanceIdentityEntryH\x00\x88\x01\x01\x12]\n\x14\x65\x63\x63_p256_signing_key\x18\xc3\x96\xe3\xe3\x01 \x01(\x0b\x32\x36.google.cloud.compute.v1.ShieldedInstanceIdentityEntryH\x01\x88\x01\x01\x12W\n\x0e\x65ncryption_key\x18\xa3\xc7\xe9\xe8\x01 \x01(\x0b\x32\x36.google.cloud.compute.v1.ShieldedInstanceIdentityEntryH\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12T\n\x0bsigning_key\x18\xa5\x90\x85\x99\x01 \x01(\x0b\x32\x36.google.cloud.compute.v1.ShieldedInstanceIdentityEntryH\x04\x88\x01\x01\x42\x1a\n\x18_ecc_p256_encryption_keyB\x17\n\x15_ecc_p256_signing_keyB\x11\n\x0f_encryption_keyB\x07\n\x05_kindB\x0e\n\x0c_signing_key\"i\n\x1dShieldedInstanceIdentityEntry\x12\x18\n\x07\x65k_cert\x18\x9d\xdc\xd4\xd6\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x06\x65k_pub\x18\xe4\xd7\xa8\x93\x01 \x01(\tH\x01\x88\x01\x01\x42\n\n\x08_ek_certB\t\n\x07_ek_pub\"h\n\x1fShieldedInstanceIntegrityPolicy\x12(\n\x18update_auto_learn_policy\x18\xa7\xc4\x87u \x01(\x08H\x00\x88\x01\x01\x42\x1b\n\x19_update_auto_learn_policy\"`\n\x0cSignedUrlKey\x12\x19\n\x08key_name\x18\xeb\xf0\xee\xee\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\tkey_value\x18\x91\x9f\xb0\xf0\x01 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_key_nameB\x0c\n\n_key_value\"\xfc\x01\n\'SimulateMaintenanceEventInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12,\n\x1bwith_extended_notifications\x18\xfb\xd7\xc9\xc1\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x1e\n\x1c_with_extended_notifications\"\xc1\x02\n(SimulateMaintenanceEventNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12\x8c\x01\n7node_groups_simulate_maintenance_event_request_resource\x18\xdc\xf9\xcb\xa7\x01 \x01(\x0b\x32\x42.google.cloud.compute.v1.NodeGroupsSimulateMaintenanceEventRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x99\x15\n\x08Snapshot\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0c\x61uto_created\x18\xd8\xc8\x9b\xdd\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1a\n\nchain_name\x18\xc9\xda\xdd \x01(\tH\x02\x88\x01\x01\x12#\n\x13\x63reation_size_bytes\x18\x8d\xe8\xe5; \x01(\x03H\x03\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x04\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x05\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x06\x88\x01\x01\x12\x1f\n\x0e\x64ownload_bytes\x18\xf4\xcb\xb9\xcf\x01 \x01(\x03H\x07\x88\x01\x01\x12+\n\x1b\x65nable_confidential_compute\x18\xbc\xeb\xd9\x30 \x01(\x08H\x08\x88\x01\x01\x12\x1c\n\x0bguest_flush\x18\xdd\x93\xec\xb7\x01 \x01(\x08H\t\x88\x01\x01\x12\x45\n\x11guest_os_features\x18\xd1\xe0\xe7% \x03(\x0b\x32\'.google.cloud.compute.v1.GuestOsFeature\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\n\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x0b\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x0c\x88\x01\x01\x12\x41\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32-.google.cloud.compute.v1.Snapshot.LabelsEntry\x12\x18\n\rlicense_codes\x18\xa8\x85\xd8\x15 \x03(\x03\x12\x14\n\x08licenses\x18\xd2\x88\x80\xa1\x01 \x03(\t\x12\x1e\n\rlocation_hint\x18\xd1\x81\x92\xa7\x01 \x01(\tH\r\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0e\x88\x01\x01\x12?\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32\'.google.cloud.compute.v1.SnapshotParamsH\x0f\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\x10\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x11\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x12\x88\x01\x01\x12W\n\x17snapshot_encryption_key\x18\xfe\xf6\xd4\x14 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x13\x88\x01\x01\x12\x1d\n\rsnapshot_type\x18\xd5\xd9\xa5; \x01(\tH\x14\x88\x01\x01\x12\x1c\n\x0bsource_disk\x18\xc1\xee\xb4\xd7\x01 \x01(\tH\x15\x88\x01\x01\x12[\n\x1asource_disk_encryption_key\x18\xe1\xa0\xb8\xfd\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x16\x88\x01\x01\x12\x34\n#source_disk_for_recovery_checkpoint\x18\xfe\xe1\xca\xab\x01 \x01(\tH\x17\x88\x01\x01\x12\x1f\n\x0esource_disk_id\x18\xd9\xcd\xc9\xd8\x01 \x01(\tH\x18\x88\x01\x01\x12\'\n\x17source_instant_snapshot\x18\x86\x84\xc3h \x01(\tH\x19\x88\x01\x01\x12g\n&source_instant_snapshot_encryption_key\x18\xfc\x85\x94\xd0\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x1a\x88\x01\x01\x12+\n\x1asource_instant_snapshot_id\x18\xf4\xd3\x90\x89\x01 \x01(\tH\x1b\x88\x01\x01\x12/\n\x1fsource_snapshot_schedule_policy\x18\x83\xb6\xb5p \x01(\tH\x1c\x88\x01\x01\x12\x32\n\"source_snapshot_schedule_policy_id\x18\xd7\xa7\xce! \x01(\tH\x1d\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x1e\x88\x01\x01\x12\x1e\n\rstorage_bytes\x18\xa7\xbb\xbd\xca\x01 \x01(\x03H\x1f\x88\x01\x01\x12%\n\x14storage_bytes_status\x18\x8a\xab\x80\xea\x01 \x01(\tH \x88\x01\x01\x12\x1d\n\x11storage_locations\x18\x9a\xed\xb3\x9c\x01 \x03(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\"N\n\x0cSnapshotType\x12\x1b\n\x17UNDEFINED_SNAPSHOT_TYPE\x10\x00\x12\x0f\n\x07\x41RCHIVE\x10\xa2\xd9\xd1\xf1\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\"r\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x10\n\tUPLOADING\x10\xa1\x9c\xcd\x7f\"]\n\x12StorageBytesStatus\x12\"\n\x1eUNDEFINED_STORAGE_BYTES_STATUS\x10\x00\x12\x10\n\x08UPDATING\x10\xc6\xee\xec\xeb\x01\x12\x11\n\nUP_TO_DATE\x10\xce\xa2\xa7\x30\x42\x0f\n\r_architectureB\x0f\n\r_auto_createdB\r\n\x0b_chain_nameB\x16\n\x14_creation_size_bytesB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0f\n\r_disk_size_gbB\x11\n\x0f_download_bytesB\x1e\n\x1c_enable_confidential_computeB\x0e\n\x0c_guest_flushB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x10\n\x0e_location_hintB\x07\n\x05_nameB\t\n\x07_paramsB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\x1a\n\x18_snapshot_encryption_keyB\x10\n\x0e_snapshot_typeB\x0e\n\x0c_source_diskB\x1d\n\x1b_source_disk_encryption_keyB&\n$_source_disk_for_recovery_checkpointB\x11\n\x0f_source_disk_idB\x1a\n\x18_source_instant_snapshotB)\n\'_source_instant_snapshot_encryption_keyB\x1d\n\x1b_source_instant_snapshot_idB\"\n _source_snapshot_schedule_policyB%\n#_source_snapshot_schedule_policy_idB\t\n\x07_statusB\x10\n\x0e_storage_bytesB\x17\n\x15_storage_bytes_status\"\xa1\x02\n\x0cSnapshotList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x33\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32!.google.cloud.compute.v1.Snapshot\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb1\x01\n\x0eSnapshotParams\x12\x63\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32@.google.cloud.compute.v1.SnapshotParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8c\x01\n\x10SnapshotSettings\x12\x63\n\x10storage_location\x18\xf9\xd1\xe0\xdb\x01 \x01(\x0b\x32@.google.cloud.compute.v1.SnapshotSettingsStorageLocationSettingsH\x00\x88\x01\x01\x42\x13\n\x11_storage_location\"\xde\x03\n\'SnapshotSettingsStorageLocationSettings\x12\x66\n\tlocations\x18\xde\xae\x91\xc5\x01 \x03(\x0b\x32O.google.cloud.compute.v1.SnapshotSettingsStorageLocationSettings.LocationsEntry\x12\x16\n\x06policy\x18\xb2\xca\xb6+ \x01(\tH\x00\x88\x01\x01\x1a\x8b\x01\n\x0eLocationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12h\n\x05value\x18\x02 \x01(\x0b\x32Y.google.cloud.compute.v1.SnapshotSettingsStorageLocationSettingsStorageLocationPreference:\x02\x38\x01\"\x99\x01\n\x06Policy\x12\x14\n\x10UNDEFINED_POLICY\x10\x00\x12\x14\n\x0cLOCAL_REGION\x10\xe8\xec\xb5\xc0\x01\x12\x1b\n\x14NEAREST_MULTI_REGION\x10\xbb\xfe\xa7\x65\x12\x1a\n\x12SPECIFIC_LOCATIONS\x10\xf1\xc8\xc7\x85\x01\x12*\n#STORAGE_LOCATION_POLICY_UNSPECIFIED\x10\xf0\x90\xc2wB\t\n\x07_policy\"a\n@SnapshotSettingsStorageLocationSettingsStorageLocationPreference\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_name\"\xb5\x01\n\x17SourceDiskEncryptionKey\x12T\n\x13\x64isk_encryption_key\x18\x85\xed\xc4\x81\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x00\x88\x01\x01\x12\x1c\n\x0bsource_disk\x18\xc1\xee\xb4\xd7\x01 \x01(\tH\x01\x88\x01\x01\x42\x16\n\x14_disk_encryption_keyB\x0e\n\x0c_source_disk\"a\n\x14SourceInstanceParams\x12I\n\x0c\x64isk_configs\x18\xcf\xd9\xaap \x03(\x0b\x32\x30.google.cloud.compute.v1.DiskInstantiationConfig\"\xe8\n\n\x18SourceInstanceProperties\x12\x1f\n\x0e\x63\x61n_ip_forward\x18\xfc\x86\x84\xdf\x01 \x01(\x08H\x00\x88\x01\x01\x12$\n\x13\x64\x65letion_protection\x18\xea\xff\xb2\xda\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12<\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32*.google.cloud.compute.v1.SavedAttachedDisk\x12J\n\x12guest_accelerators\x18\xef\xcc\x87\xdd\x01 \x03(\x0b\x32*.google.cloud.compute.v1.AcceleratorConfig\x12*\n\x1akey_revocation_action_type\x18\xe2\xdc\xc0p \x01(\tH\x03\x88\x01\x01\x12Q\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32=.google.cloud.compute.v1.SourceInstanceProperties.LabelsEntry\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x04\x88\x01\x01\x12;\n\x08metadata\x18\xaf\xf6\xb5) \x01(\x0b\x32!.google.cloud.compute.v1.MetadataH\x05\x88\x01\x01\x12 \n\x10min_cpu_platform\x18\xf7\x9b\xeas \x01(\tH\x06\x88\x01\x01\x12H\n\x12network_interfaces\x18\x8b\xda\x92\x19 \x03(\x0b\x32).google.cloud.compute.v1.NetworkInterface\x12\x30\n\x1fpost_key_revocation_action_type\x18\xe1\xd2\xd9\x8b\x01 \x01(\tH\x07\x88\x01\x01\x12@\n\nscheduling\x18\x94\xcb\xb1\xb8\x01 \x01(\x0b\x32#.google.cloud.compute.v1.SchedulingH\x08\x88\x01\x01\x12\x45\n\x10service_accounts\x18\xb0\xc4\xab\x84\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.ServiceAccount\x12\x33\n\x04tags\x18\x99\xe8\xd8\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.TagsH\t\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8d\x01\n\x17KeyRevocationActionType\x12(\n$UNDEFINED_KEY_REVOCATION_ACTION_TYPE\x10\x00\x12.\n&KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED\x10\xda\x91\xde\xde\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x0b\n\x04STOP\x10\x82\x80\x9c\x01\"\x9e\x01\n\x1bPostKeyRevocationActionType\x12-\n)UNDEFINED_POST_KEY_REVOCATION_ACTION_TYPE\x10\x00\x12\x0b\n\x04NOOP\x10\xe2\xce\x92\x01\x12\x32\n+POST_KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED\x10\xd9\x8a\x89m\x12\x0f\n\x08SHUTDOWN\x10\xd6\xec\xb7$B\x11\n\x0f_can_ip_forwardB\x16\n\x14_deletion_protectionB\x0e\n\x0c_descriptionB\x1d\n\x1b_key_revocation_action_typeB\x0f\n\r_machine_typeB\x0b\n\t_metadataB\x13\n\x11_min_cpu_platformB\"\n _post_key_revocation_action_typeB\r\n\x0b_schedulingB\x07\n\x05_tags\"\xa0\x06\n\x0eSslCertificate\x12\x1c\n\x0b\x63\x65rtificate\x18\x97\x83\xfd\xa2\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0b\x65xpire_time\x18\xed\xd3\x91\xd2\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12V\n\x07managed\x18\x9f\x9f\xa4\x8e\x01 \x01(\x0b\x32<.google.cloud.compute.v1.SslCertificateManagedSslCertificateH\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x1c\n\x0bprivate_key\x18\xa3\xf3\xa5\xac\x01 \x01(\tH\x08\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\t\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\n\x88\x01\x01\x12_\n\x0cself_managed\x18\xac\xf3\x81\x9d\x01 \x01(\x0b\x32@.google.cloud.compute.v1.SslCertificateSelfManagedSslCertificateH\x0b\x88\x01\x01\x12%\n\x19subject_alternative_names\x18\xe3\xef\x93\xfc\x01 \x03(\t\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x0c\x88\x01\x01\"[\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x0f\n\x07MANAGED\x10\xff\xb6\xd2\xe4\x01\x12\x14\n\x0cSELF_MANAGED\x10\x8c\xfb\x93\xcf\x01\x12\x18\n\x10TYPE_UNSPECIFIED\x10\x92\xfb\xdb\xd0\x01\x42\x0e\n\x0c_certificateB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_expire_timeB\x05\n\x03_idB\x07\n\x05_kindB\n\n\x08_managedB\x07\n\x05_nameB\x0e\n\x0c_private_keyB\t\n\x07_regionB\x0c\n\n_self_linkB\x0f\n\r_self_managedB\x07\n\x05_type\"\xcb\x03\n\x1cSslCertificateAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12R\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32@.google.cloud.compute.v1.SslCertificateAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a`\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x41\n\x05value\x18\x02 \x01(\x0b\x32\x32.google.cloud.compute.v1.SslCertificatesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xad\x02\n\x12SslCertificateList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.SslCertificate\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xd0\x03\n#SslCertificateManagedSslCertificate\x12i\n\rdomain_status\x18\xcd\xa7\xe7\xab\x01 \x03(\x0b\x32N.google.cloud.compute.v1.SslCertificateManagedSslCertificate.DomainStatusEntry\x12\x12\n\x07\x64omains\x18\xaf\x88\x9bl \x03(\t\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x00\x88\x01\x01\x1a\x33\n\x11\x44omainStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xd1\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12.\n&MANAGED_CERTIFICATE_STATUS_UNSPECIFIED\x10\xd2\xc5\xb3\xe2\x01\x12\x14\n\x0cPROVISIONING\x10\xed\xf5\xda\x8a\x01\x12\x1a\n\x13PROVISIONING_FAILED\x10\xcf\xab\xd0$\x12\'\n\x1fPROVISIONING_FAILED_PERMANENTLY\x10\xab\xf0\x92\x83\x01\x12\x16\n\x0eRENEWAL_FAILED\x10\x84\xbe\xa1\xcf\x01\x42\t\n\x07_status\"\x85\x01\n\'SslCertificateSelfManagedSslCertificate\x12\x1c\n\x0b\x63\x65rtificate\x18\x97\x83\xfd\xa2\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bprivate_key\x18\xa3\xf3\xa5\xac\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_certificateB\x0e\n\x0c_private_key\"\xa9\x01\n\x19SslCertificatesScopedList\x12\x45\n\x10ssl_certificates\x18\x8f\xa2\xc3\xae\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.SslCertificate\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xe0\x03\n\x19SslPoliciesAggregatedList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12O\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32=.google.cloud.compute.v1.SslPoliciesAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x1a\\\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.SslPoliciesScopedList:\x02\x38\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa5\x02\n\x0fSslPoliciesList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x34\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\".google.cloud.compute.v1.SslPolicy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"?\n(SslPoliciesListAvailableFeaturesResponse\x12\x13\n\x08\x66\x65\x61tures\x18\xbd\xc8\xb3u \x03(\t\"\x9b\x01\n\x15SslPoliciesScopedList\x12;\n\x0cssl_policies\x18\xa3\xe4\x8d\x64 \x03(\x0b\x32\".google.cloud.compute.v1.SslPolicy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xfe\x05\n\tSslPolicy\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1a\n\x0f\x63ustom_features\x18\xcb\xb2\xcb\x10 \x03(\t\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x10\x65nabled_features\x18\xfb\xc6\xd2\xdf\x01 \x03(\t\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x1f\n\x0fmin_tls_version\x18\xa7\xe6\xf1\x03 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x17\n\x07profile\x18\xa9\x93\xbal \x01(\tH\x07\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12\x37\n\x08warnings\x18\xd7\x88\xc1\xed\x01 \x03(\x0b\x32!.google.cloud.compute.v1.Warnings\"n\n\rMinTlsVersion\x12\x1d\n\x19UNDEFINED_MIN_TLS_VERSION\x10\x00\x12\x0e\n\x07TLS_1_0\x10\xbe\xa4\xe5\x0f\x12\x0e\n\x07TLS_1_1\x10\xbf\xa4\xe5\x0f\x12\x0e\n\x07TLS_1_2\x10\xc0\xa4\xe5\x0f\x12\x0e\n\x07TLS_1_3\x10\xc1\xa4\xe5\x0f\"z\n\x07Profile\x12\x15\n\x11UNDEFINED_PROFILE\x10\x00\x12\x11\n\nCOMPATIBLE\x10\xd4\x8d\xc3U\x12\x0e\n\x06\x43USTOM\x10\xf1\xfe\xa5\xb9\x01\x12\x13\n\x0b\x46IPS_202205\x10\xdc\x9f\xf2\xe2\x01\x12\r\n\x06MODERN\x10\x9f\xbe\xf9>\x12\x11\n\nRESTRICTED\x10\xdb\xe8\xdb|B\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_min_tls_versionB\x07\n\x05_nameB\n\n\x08_profileB\t\n\x07_regionB\x0c\n\n_self_link\"@\n\x12SslPolicyReference\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_ssl_policy\"\xa0\x02\n StartAsyncReplicationDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12{\n.disks_start_async_replication_request_resource\x18\xda\x9e\xc0\xe0\x01 \x01(\x0b\x32:.google.cloud.compute.v1.DisksStartAsyncReplicationRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xb8\x02\n&StartAsyncReplicationRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x88\x01\n5region_disks_start_async_replication_request_resource\x18\x85\xc8\x96\xe2\x01 \x01(\x0b\x32@.google.cloud.compute.v1.RegionDisksStartAsyncReplicationRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9b\x01\n\x14StartInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xce\x02\n)StartInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x8d\x01\n8instance_group_managers_start_instances_request_resource\x18\xab\xa5\xbf| \x01(\x0b\x32\x43.google.cloud.compute.v1.InstanceGroupManagersStartInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe6\x02\n/StartInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9b\x01\n?region_instance_group_managers_start_instances_request_resource\x18\x96\x9b\xff\xec\x01 \x01(\x0b\x32I.google.cloud.compute.v1.RegionInstanceGroupManagersStartInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb5\x02\n%StartWithEncryptionKeyInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x86\x01\n4instances_start_with_encryption_key_request_resource\x18\xff\xfe\xcf\xd2\x01 \x01(\x0b\x32?.google.cloud.compute.v1.InstancesStartWithEncryptionKeyRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"|\n\x0eStatefulPolicy\x12V\n\x0fpreserved_state\x18\xaa\xe2\xa0\x01 \x01(\x0b\x32\x35.google.cloud.compute.v1.StatefulPolicyPreservedStateH\x00\x88\x01\x01\x42\x12\n\x10_preserved_state\"\x8e\x05\n\x1cStatefulPolicyPreservedState\x12R\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32@.google.cloud.compute.v1.StatefulPolicyPreservedState.DisksEntry\x12\x61\n\rexternal_i_ps\x18\x8d\xd3\x80\xfe\x01 \x03(\x0b\x32\x46.google.cloud.compute.v1.StatefulPolicyPreservedState.ExternalIPsEntry\x12`\n\rinternal_i_ps\x18\xdb\x9b\xef\x66 \x03(\x0b\x32\x46.google.cloud.compute.v1.StatefulPolicyPreservedState.InternalIPsEntry\x1am\n\nDisksEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12N\n\x05value\x18\x02 \x01(\x0b\x32?.google.cloud.compute.v1.StatefulPolicyPreservedStateDiskDevice:\x02\x38\x01\x1ar\n\x10\x45xternalIPsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12M\n\x05value\x18\x02 \x01(\x0b\x32>.google.cloud.compute.v1.StatefulPolicyPreservedStateNetworkIp:\x02\x38\x01\x1ar\n\x10InternalIPsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12M\n\x05value\x18\x02 \x01(\x0b\x32>.google.cloud.compute.v1.StatefulPolicyPreservedStateNetworkIp:\x02\x38\x01\"\xb4\x01\n&StatefulPolicyPreservedStateDiskDevice\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\tH\x00\x88\x01\x01\"\\\n\nAutoDelete\x12\x19\n\x15UNDEFINED_AUTO_DELETE\x10\x00\x12\x0c\n\x05NEVER\x10\xec\xa4\xaf#\x12%\n\x1eON_PERMANENT_INSTANCE_DELETION\x10\xe7\xe0\xd2-B\x0e\n\x0c_auto_delete\"\xb3\x01\n%StatefulPolicyPreservedStateNetworkIp\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\tH\x00\x88\x01\x01\"\\\n\nAutoDelete\x12\x19\n\x15UNDEFINED_AUTO_DELETE\x10\x00\x12\x0c\n\x05NEVER\x10\xec\xa4\xaf#\x12%\n\x1eON_PERMANENT_INSTANCE_DELETION\x10\xe7\xe0\xd2-B\x0e\n\x0c_auto_delete\"x\n\x06Status\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\x05H\x00\x88\x01\x01\x12)\n\x07\x64\x65tails\x18\xc2\xe4\xe3\xe6\x01 \x03(\x0b\x32\x14.google.protobuf.Any\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_codeB\n\n\x08_message\"\xa2\x01\n\x1fStopAsyncReplicationDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xac\x01\n%StopAsyncReplicationRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9a\x02\n$StopGroupAsyncReplicationDiskRequest\x12\x86\x01\n4disks_stop_group_async_replication_resource_resource\x18\x95\xf8\xaf\xa5\x01 \x01(\x0b\x32?.google.cloud.compute.v1.DisksStopGroupAsyncReplicationResourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa4\x02\n*StopGroupAsyncReplicationRegionDiskRequest\x12\x86\x01\n4disks_stop_group_async_replication_resource_resource\x18\x95\xf8\xaf\xa5\x01 \x01(\x0b\x32?.google.cloud.compute.v1.DisksStopGroupAsyncReplicationResourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd4\x01\n\x13StopInstanceRequest\x12\"\n\x11\x64iscard_local_ssd\x18\xcf\xe9\xad\x98\x01 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x14\n\x12_discard_local_ssdB\r\n\x0b_request_id\"\xcb\x02\n(StopInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x8b\x01\n7instance_group_managers_stop_instances_request_resource\x18\x8d\xa5\xf4\x11 \x01(\x0b\x32\x42.google.cloud.compute.v1.InstanceGroupManagersStopInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe3\x02\n.StopInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x99\x01\n>region_instance_group_managers_stop_instances_request_resource\x18\xc2\x9c\xf2\x80\x01 \x01(\x0b\x32H.google.cloud.compute.v1.RegionInstanceGroupManagersStopInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xec\x0c\n\x0bStoragePool\x12*\n\x1a\x63\x61pacity_provisioning_type\x18\x87\x8a\xfdw \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12r\n\x1f\x65xapool_provisioned_capacity_gb\x18\xe0\xe1\xcb\xa4\x01 \x01(\x0b\x32@.google.cloud.compute.v1.StoragePoolExapoolProvisionedCapacityGbH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x06\x88\x01\x01\x12\x44\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x30.google.cloud.compute.v1.StoragePool.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x42\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32*.google.cloud.compute.v1.StoragePoolParamsH\x08\x88\x01\x01\x12.\n\x1dperformance_provisioning_type\x18\xfd\x9d\xb6\xdf\x01 \x01(\tH\t\x88\x01\x01\x12-\n\x1cpool_provisioned_capacity_gb\x18\xd2\xcf\x97\xe4\x01 \x01(\x03H\n\x88\x01\x01\x12%\n\x15pool_provisioned_iops\x18\x97\xc9\xb9\x35 \x01(\x03H\x0b\x88\x01\x01\x12+\n\x1bpool_provisioned_throughput\x18\x98\x8d\xd8P \x01(\x03H\x0c\x88\x01\x01\x12S\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32\x32.google.cloud.compute.v1.StoragePoolResourceStatusH\r\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0e\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x0f\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x10\x88\x01\x01\x12J\n\x06status\x18\xf2\x9f\xb7V \x01(\x0b\x32\x32.google.cloud.compute.v1.StoragePoolResourceStatusH\x11\x88\x01\x01\x12\"\n\x11storage_pool_type\x18\xb9\x81\xb0\x88\x01 \x01(\tH\x12\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x13\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"D\n\x18\x43\x61pacityProvisioningType\x12(\n$UNDEFINED_CAPACITY_PROVISIONING_TYPE\x10\x00\"J\n\x1bPerformanceProvisioningType\x12+\n\'UNDEFINED_PERFORMANCE_PROVISIONING_TYPE\x10\x00\"^\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B\x1d\n\x1b_capacity_provisioning_typeB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\"\n _exapool_provisioned_capacity_gbB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\t\n\x07_paramsB \n\x1e_performance_provisioning_typeB\x1f\n\x1d_pool_provisioned_capacity_gbB\x18\n\x16_pool_provisioned_iopsB\x1e\n\x1c_pool_provisioned_throughputB\x12\n\x10_resource_statusB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x08\n\x06_stateB\t\n\x07_statusB\x14\n\x12_storage_pool_typeB\x07\n\x05_zone\"\xe1\x03\n\x19StoragePoolAggregatedList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12O\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32=.google.cloud.compute.v1.StoragePoolAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x1a]\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12>\n\x05value\x18\x02 \x01(\x0b\x32/.google.cloud.compute.v1.StoragePoolsScopedList:\x02\x38\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xe0\x04\n\x0fStoragePoolDisk\x12\x1d\n\x12\x61ttached_instances\x18\xa3\xf3\x8e\x1f \x03(\t\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x02\x88\x01\x01\x12 \n\x10provisioned_iops\x18\xd4\xbd\x87Y \x01(\x03H\x03\x88\x01\x01\x12\'\n\x16provisioned_throughput\x18\x95\xbe\x88\xfb\x01 \x01(\x03H\x04\x88\x01\x01\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\x12\x18\n\x07size_gb\x18\xd9\x8b\x80\xec\x01 \x01(\x03H\x05\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\nused_bytes\x18\xe9\x9a\xban \x01(\x03H\x08\x88\x01\x01\"\x88\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x11\n\tRESTORING\x10\xab\xa7\xe2\xc0\x01\x12\x13\n\x0bUNAVAILABLE\x10\xb0\xd8\xa5\xc5\x01\x42\x15\n\x13_creation_timestampB\x07\n\x05_diskB\x07\n\x05_nameB\x13\n\x11_provisioned_iopsB\x19\n\x17_provisioned_throughputB\n\n\x08_size_gbB\t\n\x07_statusB\x07\n\x05_typeB\r\n\x0b_used_bytes\"\xce\x01\n\'StoragePoolExapoolProvisionedCapacityGb\x12\"\n\x12\x63\x61pacity_optimized\x18\xe2\xef\xdfw \x01(\x03H\x00\x88\x01\x01\x12\x1f\n\x0eread_optimized\x18\xbe\xb3\xf3\xb9\x01 \x01(\x03H\x01\x88\x01\x01\x12 \n\x0fwrite_optimized\x18\xc7\xa1\xed\xea\x01 \x01(\x03H\x02\x88\x01\x01\x42\x15\n\x13_capacity_optimizedB\x11\n\x0f_read_optimizedB\x12\n\x10_write_optimized\"\xdf\x02\n\x0fStoragePoolList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x36\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32$.google.cloud.compute.v1.StoragePool\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xe8\x02\n\x14StoragePoolListDisks\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.StoragePoolDisk\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb7\x01\n\x11StoragePoolParams\x12\x66\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x43.google.cloud.compute.v1.StoragePoolParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x90\x08\n\x19StoragePoolResourceStatus\x12\x1a\n\ndisk_count\x18\xed\xaf\x9dW \x01(\x03H\x00\x88\x01\x01\x12%\n\x15\x65xapool_max_read_iops\x18\xc2\xea\x9f\x1c \x01(\x03H\x01\x88\x01\x01\x12,\n\x1b\x65xapool_max_read_throughput\x18\x83\xd6\xb4\xba\x01 \x01(\x03H\x02\x88\x01\x01\x12\'\n\x16\x65xapool_max_write_iops\x18\xf9\xa2\xe8\x8b\x01 \x01(\x03H\x03\x88\x01\x01\x12-\n\x1c\x65xapool_max_write_throughput\x18\xfa\x83\xc4\x9d\x01 \x01(\x03H\x04\x88\x01\x01\x12&\n\x15last_resize_timestamp\x18\xd4\xfb\xe7\xee\x01 \x01(\tH\x05\x88\x01\x01\x12\x36\n&max_total_provisioned_disk_capacity_gb\x18\xdf\xde\x88O \x01(\x03H\x06\x88\x01\x01\x12)\n\x18pool_used_capacity_bytes\x18\xc5\xe9\xb0\xf3\x01 \x01(\x03H\x07\x88\x01\x01\x12\x1e\n\x0epool_used_iops\x18\x88\xc9\xbc/ \x01(\x03H\x08\x88\x01\x01\x12$\n\x14pool_used_throughput\x18\xc9\x9b\xa5\x62 \x01(\x03H\t\x88\x01\x01\x12\'\n\x17pool_user_written_bytes\x18\xd2\xed\x96m \x01(\x03H\n\x88\x01\x01\x12\x33\n\"total_provisioned_disk_capacity_gb\x18\xa4\x8d\xb3\xf8\x01 \x01(\x03H\x0b\x88\x01\x01\x12+\n\x1btotal_provisioned_disk_iops\x18\x85\xdc\xd2\x0f \x01(\x03H\x0c\x88\x01\x01\x12\x32\n!total_provisioned_disk_throughput\x18\x86\x8b\xbc\xd5\x01 \x01(\x03H\r\x88\x01\x01\x42\r\n\x0b_disk_countB\x18\n\x16_exapool_max_read_iopsB\x1e\n\x1c_exapool_max_read_throughputB\x19\n\x17_exapool_max_write_iopsB\x1f\n\x1d_exapool_max_write_throughputB\x18\n\x16_last_resize_timestampB)\n\'_max_total_provisioned_disk_capacity_gbB\x1b\n\x19_pool_used_capacity_bytesB\x11\n\x0f_pool_used_iopsB\x17\n\x15_pool_used_throughputB\x1a\n\x18_pool_user_written_bytesB%\n#_total_provisioned_disk_capacity_gbB\x1e\n\x1c_total_provisioned_disk_iopsB$\n\"_total_provisioned_disk_throughput\"\xe7\x07\n\x0fStoragePoolType\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x30\n max_pool_provisioned_capacity_gb\x18\xcd\xf1\xecV \x01(\x03H\x05\x88\x01\x01\x12*\n\x19max_pool_provisioned_iops\x18\xfc\xcf\xd9\xf5\x01 \x01(\x03H\x06\x88\x01\x01\x12/\n\x1fmax_pool_provisioned_throughput\x18\xbd\xd4\x94m \x01(\x03H\x07\x88\x01\x01\x12\x30\n min_pool_provisioned_capacity_gb\x18\x9f\x8d\x8b[ \x01(\x03H\x08\x88\x01\x01\x12*\n\x19min_pool_provisioned_iops\x18\xea\xc4\xcb\xc6\x01 \x01(\x03H\t\x88\x01\x01\x12\x30\n\x1fmin_pool_provisioned_throughput\x18\xab\xb4\xae\xaf\x01 \x01(\x03H\n\x88\x01\x01\x12\x1c\n\x0bmin_size_gb\x18\xec\xc1\xdb\xb7\x01 \x01(\x03H\x0b\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0c\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\r\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x0e\x88\x01\x01\x12\x1f\n\x14supported_disk_types\x18\x88\x8f\xe7G \x03(\t\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0f\x88\x01\x01\x42\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB#\n!_max_pool_provisioned_capacity_gbB\x1c\n\x1a_max_pool_provisioned_iopsB\"\n _max_pool_provisioned_throughputB#\n!_min_pool_provisioned_capacity_gbB\x1c\n\x1a_min_pool_provisioned_iopsB\"\n _min_pool_provisioned_throughputB\x0e\n\x0c_min_size_gbB\x07\n\x05_nameB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x07\n\x05_zone\"\xb5\x03\n\x1dStoragePoolTypeAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12S\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x41.google.cloud.compute.v1.StoragePoolTypeAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.StoragePoolTypesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xaf\x02\n\x13StoragePoolTypeList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.StoragePoolType\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xad\x01\n\x1aStoragePoolTypesScopedList\x12H\n\x12storage_pool_types\x18\xda\xad\xd0\x83\x01 \x03(\x0b\x32(.google.cloud.compute.v1.StoragePoolType\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xa0\x01\n\x16StoragePoolsScopedList\x12?\n\rstorage_pools\x18\x93\x92\xc0\xd0\x01 \x03(\x0b\x32$.google.cloud.compute.v1.StoragePool\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xa1\x16\n\nSubnetwork\x12\x30\n allow_subnet_cidr_routes_overlap\x18\xd1\xce\xad \x01(\x08H\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12 \n\x10\x65nable_flow_logs\x18\xe4\xc4\xa1H \x01(\x08H\x03\x88\x01\x01\x12$\n\x14\x65xternal_ipv6_prefix\x18\xf6\x92\xb6\x42 \x01(\tH\x04\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x05\x88\x01\x01\x12 \n\x0fgateway_address\x18\xf9\x89\xa4\xdb\x01 \x01(\tH\x06\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x07\x88\x01\x01\x12%\n\x14internal_ipv6_prefix\x18\xe8\xa2\xb4\xf1\x01 \x01(\tH\x08\x88\x01\x01\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\t\x88\x01\x01\x12\x1d\n\rip_collection\x18\xb6\x91\xa8T \x01(\tH\n\x88\x01\x01\x12!\n\x10ipv6_access_type\x18\xdd\xf5\xd1\xf0\x01 \x01(\tH\x0b\x88\x01\x01\x12 \n\x0fipv6_cidr_range\x18\x8a\x9c\x9f\x82\x01 \x01(\tH\x0c\x88\x01\x01\x12\"\n\x11ipv6_gce_endpoint\x18\xe3\xca\xe2\x98\x01 \x01(\tH\r\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x0e\x88\x01\x01\x12I\n\nlog_config\x18\x9d\xd1\xc1\xa7\x01 \x01(\x0b\x32,.google.cloud.compute.v1.SubnetworkLogConfigH\x0f\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x10\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x11\x88\x01\x01\x12\x41\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32).google.cloud.compute.v1.SubnetworkParamsH\x12\x88\x01\x01\x12)\n\x18private_ip_google_access\x18\xce\xe8\xfd\xc8\x01 \x01(\x08H\x13\x88\x01\x01\x12*\n\x1aprivate_ipv6_google_access\x18\x8e\xcc\x82\x17 \x01(\tH\x14\x88\x01\x01\x12\x18\n\x07purpose\x18\x9e\xfa\xef\x96\x01 \x01(\tH\x15\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x16\x88\x01\x01\x12(\n\x17reserved_internal_range\x18\xb2\x9e\xbf\x88\x01 \x01(\tH\x17\x88\x01\x01\x12$\n\x13resolve_subnet_mask\x18\xbb\xd9\xed\xf6\x01 \x01(\tH\x18\x88\x01\x01\x12\x14\n\x04role\x18\xf6\x80\xd6\x01 \x01(\tH\x19\x88\x01\x01\x12Q\n\x13secondary_ip_ranges\x18\xe3\xff\x94\x41 \x03(\x0b\x32\x31.google.cloud.compute.v1.SubnetworkSecondaryRange\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x1a\x88\x01\x01\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH\x1b\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x1c\x88\x01\x01\x12/\n$system_reserved_external_ipv6_ranges\x18\xe1\x88\x93\x1f \x03(\t\x12\x30\n$system_reserved_internal_ipv6_ranges\x18\xd3\x98\x91\xce\x01 \x03(\t\x12Z\n\x13utilization_details\x18\xa5\x8a\xe6; \x01(\x0b\x32\x35.google.cloud.compute.v1.SubnetworkUtilizationDetailsH\x1d\x88\x01\x01\"y\n\x0eIpv6AccessType\x12\x1e\n\x1aUNDEFINED_IPV6_ACCESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\x12$\n\x1cUNSPECIFIED_IPV6_ACCESS_TYPE\x10\xa5\xf6\xa4\x95\x01\"T\n\x0fIpv6GceEndpoint\x12\x1f\n\x1bUNDEFINED_IPV6_GCE_ENDPOINT\x10\x00\x12\x10\n\tVM_AND_FR\x10\xdc\x8d\xf9\x13\x12\x0e\n\x07VM_ONLY\x10\xb4\xc0\xf3p\"\xbe\x01\n\x17PrivateIpv6GoogleAccess\x12(\n$UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS\x10\x00\x12\x1d\n\x15\x44ISABLE_GOOGLE_ACCESS\x10\xf3\xa9\x84\xd7\x01\x12-\n%ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE\x10\xba\xca\x89\xcc\x01\x12+\n#ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE\x10\xd7\xfa\xb6\x89\x01\"\xf8\x01\n\x07Purpose\x12\x15\n\x11UNDEFINED_PURPOSE\x10\x00\x12\x1b\n\x14GLOBAL_MANAGED_PROXY\x10\xf2\xcb\xe0p\x12#\n\x1cINTERNAL_HTTPS_LOAD_BALANCER\x10\xd9\xb6\xcev\x12\x16\n\x0ePEER_MIGRATION\x10\x91\xaa\xc7\xea\x01\x12\x0f\n\x07PRIVATE\x10\xe3\xe2\xb2\xc0\x01\x12\x13\n\x0bPRIVATE_NAT\x10\xa5\xc8\xae\xaf\x01\x12\x17\n\x10PRIVATE_RFC_1918\x10\xdb\xfe\xc5y\x12\x1e\n\x17PRIVATE_SERVICE_CONNECT\x10\xc4\xf4\xf9\x16\x12\x1d\n\x16REGIONAL_MANAGED_PROXY\x10\xee\xb6\xfdH\"h\n\x11ResolveSubnetMask\x12!\n\x1dUNDEFINED_RESOLVE_SUBNET_MASK\x10\x00\x12\x16\n\x0e\x41RP_ALL_RANGES\x10\xd4\xd2\xc0\xd4\x01\x12\x18\n\x11\x41RP_PRIMARY_RANGE\x10\x80\x85\xa9\x39\":\n\x04Role\x12\x12\n\x0eUNDEFINED_ROLE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0e\n\x06\x42\x41\x43KUP\x10\xc2\xd3\xcd\xa2\x01\"{\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\x12\x10\n\tIPV6_ONLY\x10\xe4\xad\xfc%\x12\x1e\n\x16UNSPECIFIED_STACK_TYPE\x10\xd9\xd1\x91\x8e\x01\"<\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x10\n\x08\x44RAINING\x10\xea\xd5\x8c\xe5\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B#\n!_allow_subnet_cidr_routes_overlapB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x13\n\x11_enable_flow_logsB\x17\n\x15_external_ipv6_prefixB\x0e\n\x0c_fingerprintB\x12\n\x10_gateway_addressB\x05\n\x03_idB\x17\n\x15_internal_ipv6_prefixB\x10\n\x0e_ip_cidr_rangeB\x10\n\x0e_ip_collectionB\x13\n\x11_ipv6_access_typeB\x12\n\x10_ipv6_cidr_rangeB\x14\n\x12_ipv6_gce_endpointB\x07\n\x05_kindB\r\n\x0b_log_configB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_paramsB\x1b\n\x19_private_ip_google_accessB\x1d\n\x1b_private_ipv6_google_accessB\n\n\x08_purposeB\t\n\x07_regionB\x1a\n\x18_reserved_internal_rangeB\x16\n\x14_resolve_subnet_maskB\x07\n\x05_roleB\x0c\n\n_self_linkB\r\n\x0b_stack_typeB\x08\n\x06_stateB\x16\n\x14_utilization_details\"\xbf\x03\n\x18SubnetworkAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12N\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32<.google.cloud.compute.v1.SubnetworkAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\\\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.SubnetworksScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa5\x02\n\x0eSubnetworkList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x35\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32#.google.cloud.compute.v1.Subnetwork\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xdd\x04\n\x13SubnetworkLogConfig\x12$\n\x14\x61ggregation_interval\x18\x82\x9b\xb4S \x01(\tH\x00\x88\x01\x01\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0b\x66ilter_expr\x18\xdc\xa4\xb8W \x01(\tH\x02\x88\x01\x01\x12\x1e\n\rflow_sampling\x18\xd8\xe7\xe5\xfc\x01 \x01(\x02H\x03\x88\x01\x01\x12\x18\n\x08metadata\x18\xaf\xf6\xb5) \x01(\tH\x04\x88\x01\x01\x12\x1b\n\x0fmetadata_fields\x18\xc9\xbb\xbb\xb4\x01 \x03(\t\"\xc8\x01\n\x13\x41ggregationInterval\x12\"\n\x1eUNDEFINED_AGGREGATION_INTERVAL\x10\x00\x12\x17\n\x0fINTERVAL_10_MIN\x10\xcc\xd1\xa5\xe8\x01\x12\x17\n\x0fINTERVAL_15_MIN\x10\xd1\xbc\xbf\xea\x01\x12\x15\n\x0eINTERVAL_1_MIN\x10\xaa\xd2\xf6 \x12\x16\n\x0fINTERVAL_30_SEC\x10\x89\xe0\xcc\x03\x12\x15\n\x0eINTERVAL_5_MIN\x10\xae\x8e\xd8\"\x12\x15\n\x0eINTERVAL_5_SEC\x10\xad\xba\xd8\"\"u\n\x08Metadata\x12\x16\n\x12UNDEFINED_METADATA\x10\x00\x12\x16\n\x0f\x43USTOM_METADATA\x10\xbd\xd8\xe3\x1d\x12\x1c\n\x14\x45XCLUDE_ALL_METADATA\x10\x92\xbd\xc1\x9f\x01\x12\x1b\n\x14INCLUDE_ALL_METADATA\x10\x84\xcd\xbfNB\x17\n\x15_aggregation_intervalB\t\n\x07_enableB\x0e\n\x0c_filter_exprB\x10\n\x0e_flow_samplingB\x0b\n\t_metadata\"\xb5\x01\n\x10SubnetworkParams\x12\x65\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x42.google.cloud.compute.v1.SubnetworkParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xbd\x01\n\x18SubnetworkSecondaryRange\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nrange_name\x18\xcd\xf0\xb4\x9e\x01 \x01(\tH\x01\x88\x01\x01\x12(\n\x17reserved_internal_range\x18\xb2\x9e\xbf\x88\x01 \x01(\tH\x02\x88\x01\x01\x42\x10\n\x0e_ip_cidr_rangeB\r\n\x0b_range_nameB\x1a\n\x18_reserved_internal_range\"\xc8\x04\n\x1cSubnetworkUtilizationDetails\x12y\n\"external_ipv6_instance_utilization\x18\xdc\xc2\x93\xc8\x01 \x01(\x0b\x32\x44.google.cloud.compute.v1.SubnetworkUtilizationDetailsIPV6UtilizationH\x00\x88\x01\x01\x12r\n\x1c\x65xternal_ipv6_lb_utilization\x18\xbd\x97\x8f\x41 \x01(\x0b\x32\x44.google.cloud.compute.v1.SubnetworkUtilizationDetailsIPV6UtilizationH\x01\x88\x01\x01\x12o\n\x19internal_ipv6_utilization\x18\x8c\xca\x9e! \x01(\x0b\x32\x44.google.cloud.compute.v1.SubnetworkUtilizationDetailsIPV6UtilizationH\x02\x88\x01\x01\x12\x62\n\x11ipv4_utilizations\x18\xab\x9d\xa8\x62 \x03(\x0b\x32\x44.google.cloud.compute.v1.SubnetworkUtilizationDetailsIPV4UtilizationB%\n#_external_ipv6_instance_utilizationB\x1f\n\x1d_external_ipv6_lb_utilizationB\x1c\n\x1a_internal_ipv6_utilization\"\xc6\x01\n+SubnetworkUtilizationDetailsIPV4Utilization\x12\x1b\n\nrange_name\x18\xcd\xf0\xb4\x9e\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12total_allocated_ip\x18\xba\x99\x88\x85\x01 \x01(\x03H\x01\x88\x01\x01\x12\x1d\n\rtotal_free_ip\x18\xdf\xe3\xae\x32 \x01(\x03H\x02\x88\x01\x01\x42\r\n\x0b_range_nameB\x15\n\x13_total_allocated_ipB\x10\n\x0e_total_free_ip\"\xde\x01\n+SubnetworkUtilizationDetailsIPV6Utilization\x12\x45\n\x12total_allocated_ip\x18\xba\x99\x88\x85\x01 \x01(\x0b\x32 .google.cloud.compute.v1.Uint128H\x00\x88\x01\x01\x12?\n\rtotal_free_ip\x18\xdf\xe3\xae\x32 \x01(\x0b\x32 .google.cloud.compute.v1.Uint128H\x01\x88\x01\x01\x42\x15\n\x13_total_allocated_ipB\x10\n\x0e_total_free_ip\"V\n#SubnetworksExpandIpCidrRangeRequest\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x00\x88\x01\x01\x42\x10\n\x0e_ip_cidr_range\"\x9c\x01\n\x15SubnetworksScopedList\x12<\n\x0bsubnetworks\x18\xc5\xd4\xa5\xc6\x01 \x03(\x0b\x32#.google.cloud.compute.v1.Subnetwork\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x8d\x01\n\x18SubnetworksScopedWarning\x12\x1b\n\nscope_name\x18\x96\x93\xe3\xa4\x01 \x01(\tH\x00\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x01\x88\x01\x01\x42\r\n\x0b_scope_nameB\n\n\x08_warning\"t\n*SubnetworksSetPrivateIpGoogleAccessRequest\x12)\n\x18private_ip_google_access\x18\xce\xe8\xfd\xc8\x01 \x01(\x08H\x00\x88\x01\x01\x42\x1b\n\x19_private_ip_google_access\"\x7f\n\nSubsetting\x12\x16\n\x06policy\x18\xb2\xca\xb6+ \x01(\tH\x00\x88\x01\x01\"N\n\x06Policy\x12\x14\n\x10UNDEFINED_POLICY\x10\x00\x12!\n\x1a\x43ONSISTENT_HASH_SUBSETTING\x10\xb4\x98\xfc\x33\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x42\t\n\x07_policy\"\xd7\x01\n\x16SuspendInstanceRequest\x12\"\n\x11\x64iscard_local_ssd\x18\xcf\xe9\xad\x98\x01 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x14\n\x12_discard_local_ssdB\r\n\x0b_request_id\"\xd4\x02\n+SuspendInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x91\x01\n:instance_group_managers_suspend_instances_request_resource\x18\xd1\x8d\xa1\x16 \x01(\x0b\x32\x45.google.cloud.compute.v1.InstanceGroupManagersSuspendInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xeb\x02\n1SuspendInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9e\x01\nAregion_instance_group_managers_suspend_instances_request_resource\x18\xfc\xe5\x94\x66 \x01(\x0b\x32K.google.cloud.compute.v1.RegionInstanceGroupManagersSuspendInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x89\x01\n SwitchToCustomModeNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd8\x03\n\x0eTCPHealthCheck\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x00\x88\x01\x01\x12\x19\n\tport_name\x18\x89\x87\xe7\x13 \x01(\tH\x01\x88\x01\x01\x12\"\n\x12port_specification\x18\xc5\xeb\xcc\x18 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0cproxy_header\x18\xfe\xba\xbcL \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07request\x18\x8f\xe5\xbb\n \x01(\tH\x04\x88\x01\x01\x12\x18\n\x08response\x18\xc1\xa8\xdc] \x01(\tH\x05\x88\x01\x01\"~\n\x11PortSpecification\x12 \n\x1cUNDEFINED_PORT_SPECIFICATION\x10\x00\x12\x15\n\x0eUSE_FIXED_PORT\x10\xe4\x88\xdbZ\x12\x16\n\x0eUSE_NAMED_PORT\x10\xbf\xcf\xc7\xa6\x01\x12\x18\n\x10USE_SERVING_PORT\x10\xcc\xd1\xf5\xac\x01\"H\n\x0bProxyHeader\x12\x1a\n\x16UNDEFINED_PROXY_HEADER\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x10\n\x08PROXY_V1\x10\xac\xa4\xb7\x9f\x01\x42\x07\n\x05_portB\x0c\n\n_port_nameB\x15\n\x13_port_specificationB\x0f\n\r_proxy_headerB\n\n\x08_requestB\x0b\n\t_response\"E\n\x04Tags\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12\x10\n\x05items\x18\xc0\xcf\xf7/ \x03(\tB\x0e\n\x0c_fingerprint\"\xca\x03\n\x0fTargetGrpcProxy\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x06\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x07\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tH\x08\x88\x01\x01\x12&\n\x16validate_for_proxyless\x18\xa8\xe3\xc6\x30 \x01(\x08H\t\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\n\n\x08_url_mapB\x19\n\x17_validate_for_proxyless\"\xaf\x02\n\x13TargetGrpcProxyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.TargetGrpcProxy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xae\x01\n\x1bTargetHttpProxiesScopedList\x12H\n\x13target_http_proxies\x18\xc3\xd5\xa8M \x03(\x0b\x32(.google.cloud.compute.v1.TargetHttpProxy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xeb\x03\n\x0fTargetHttpProxy\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12,\n\x1bhttp_keep_alive_timeout_sec\x18\xde\xce\xa6\xd5\x01 \x01(\x05H\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x1b\n\nproxy_bind\x18\xee\xce\xb1\x88\x01 \x01(\x08H\x07\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tH\n\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x1e\n\x1c_http_keep_alive_timeout_secB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\r\n\x0b_proxy_bindB\t\n\x07_regionB\x0c\n\n_self_linkB\n\n\x08_url_map\"\x88\x03\n\x1dTargetHttpProxyAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12S\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x41.google.cloud.compute.v1.TargetHttpProxyAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x1a\x62\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.google.cloud.compute.v1.TargetHttpProxiesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_link\"\xaf\x02\n\x13TargetHttpProxyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.TargetHttpProxy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb2\x01\n\x1cTargetHttpsProxiesScopedList\x12K\n\x14target_https_proxies\x18\x8a\xfc\xe7\xae\x01 \x03(\x0b\x32).google.cloud.compute.v1.TargetHttpsProxy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"a\n*TargetHttpsProxiesSetCertificateMapRequest\x12\x1f\n\x0f\x63\x65rtificate_map\x18\xb4\xe5\xcdJ \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_certificate_map\"\xb6\x01\n(TargetHttpsProxiesSetQuicOverrideRequest\x12\x1e\n\rquic_override\x18\xad\xa1\xdb\xd9\x01 \x01(\tH\x00\x88\x01\x01\"X\n\x0cQuicOverride\x12\x1b\n\x17UNDEFINED_QUIC_OVERRIDE\x10\x00\x12\x0e\n\x07\x44ISABLE\x10\xc8\xdd\xa6s\x12\x0e\n\x06\x45NABLE\x10\x83\xb3\xa0\xd1\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x42\x10\n\x0e_quic_override\"K\n+TargetHttpsProxiesSetSslCertificatesRequest\x12\x1c\n\x10ssl_certificates\x18\x8f\xa2\xc3\xae\x01 \x03(\t\"\x9d\x08\n\x10TargetHttpsProxy\x12$\n\x14\x61uthorization_policy\x18\xb8\xef\x97\x10 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0f\x63\x65rtificate_map\x18\xb4\xe5\xcdJ \x01(\tH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x04\x88\x01\x01\x12,\n\x1bhttp_keep_alive_timeout_sec\x18\xde\xce\xa6\xd5\x01 \x01(\x05H\x05\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12\x1b\n\nproxy_bind\x18\xee\xce\xb1\x88\x01 \x01(\x08H\t\x88\x01\x01\x12\x1e\n\rquic_override\x18\xad\xa1\xdb\xd9\x01 \x01(\tH\n\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0b\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\x12\"\n\x11server_tls_policy\x18\xf2\xde\x87\x8d\x01 \x01(\tH\r\x88\x01\x01\x12\x1c\n\x10ssl_certificates\x18\x8f\xa2\xc3\xae\x01 \x03(\t\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tH\x0e\x88\x01\x01\x12\x1e\n\x0etls_early_data\x18\xca\xe1\x91\x1d \x01(\tH\x0f\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tH\x10\x88\x01\x01\"X\n\x0cQuicOverride\x12\x1b\n\x17UNDEFINED_QUIC_OVERRIDE\x10\x00\x12\x0e\n\x07\x44ISABLE\x10\xc8\xdd\xa6s\x12\x0e\n\x06\x45NABLE\x10\x83\xb3\xa0\xd1\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\"x\n\x0cTlsEarlyData\x12\x1c\n\x18UNDEFINED_TLS_EARLY_DATA\x10\x00\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x12\n\nPERMISSIVE\x10\x9f\xe5\xbe\xf0\x01\x12\x0e\n\x06STRICT\x10\xc9\xa5\xa1\x93\x01\x12\x14\n\x0cUNRESTRICTED\x10\xb4\xa7\x85\xda\x01\x42\x17\n\x15_authorization_policyB\x12\n\x10_certificate_mapB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x1e\n\x1c_http_keep_alive_timeout_secB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\r\n\x0b_proxy_bindB\x10\n\x0e_quic_overrideB\t\n\x07_regionB\x0c\n\n_self_linkB\x14\n\x12_server_tls_policyB\r\n\x0b_ssl_policyB\x11\n\x0f_tls_early_dataB\n\n\x08_url_map\"\xd2\x03\n\x1eTargetHttpsProxyAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12T\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x42.google.cloud.compute.v1.TargetHttpsProxyAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x63\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x44\n\x05value\x18\x02 \x01(\x0b\x32\x35.google.cloud.compute.v1.TargetHttpsProxiesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb1\x02\n\x14TargetHttpsProxyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12;\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32).google.cloud.compute.v1.TargetHttpsProxy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xfc\x03\n\x0eTargetInstance\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\nnat_policy\x18\x90\xc4\x8a\xf3\x01 \x01(\tH\x06\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x07\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\n\x88\x01\x01\"4\n\tNatPolicy\x12\x18\n\x14UNDEFINED_NAT_POLICY\x10\x00\x12\r\n\x06NO_NAT\x10\x83\xbb\xfeLB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x0b\n\t_instanceB\x07\n\x05_kindB\x07\n\x05_nameB\r\n\x0b_nat_policyB\n\n\x08_networkB\x12\n\x10_security_policyB\x0c\n\n_self_linkB\x07\n\x05_zone\"\xcb\x03\n\x1cTargetInstanceAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12R\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32@.google.cloud.compute.v1.TargetInstanceAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a`\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x41\n\x05value\x18\x02 \x01(\x0b\x32\x32.google.cloud.compute.v1.TargetInstancesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xad\x02\n\x12TargetInstanceList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.TargetInstance\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa9\x01\n\x19TargetInstancesScopedList\x12\x45\n\x10target_instances\x18\xd0\xd2\xad\xbb\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.TargetInstance\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xa5\x06\n\nTargetPool\x12\x1b\n\x0b\x62\x61\x63kup_pool\x18\xf9\xc8\xf0\x15 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x1e\n\x0e\x66\x61ilover_ratio\x18\xfe\x94\xb4\x65 \x01(\x02H\x03\x88\x01\x01\x12\x19\n\rhealth_checks\x18\xae\xaf\xe6\xd5\x01 \x03(\t\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12!\n\x10session_affinity\x18\xb1\xc1\x99\xdd\x01 \x01(\tH\n\x88\x01\x01\"\x8b\x02\n\x0fSessionAffinity\x12\x1e\n\x1aUNDEFINED_SESSION_AFFINITY\x10\x00\x12\x11\n\tCLIENT_IP\x10\x9b\xdc\xe9\xa4\x01\x12\x1f\n\x18\x43LIENT_IP_NO_DESTINATION\x10\x94\x9a\xcd\x32\x12\x1b\n\x14\x43LIENT_IP_PORT_PROTO\x10\xae\xf2\xdci\x12\x16\n\x0f\x43LIENT_IP_PROTO\x10\xa4\xc5\x89\x0c\x12\x18\n\x10GENERATED_COOKIE\x10\xb4\xce\xca\xb0\x01\x12\x13\n\x0cHEADER_FIELD\x10\xa8\x89\xdc_\x12\x13\n\x0bHTTP_COOKIE\x10\xfb\xa3\x83\xec\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x1e\n\x16STRONG_COOKIE_AFFINITY\x10\xfb\xdd\x93\xd1\x01\x42\x0e\n\x0c_backup_poolB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x11\n\x0f_failover_ratioB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x12\n\x10_security_policyB\x0c\n\n_self_linkB\x13\n\x11_session_affinity\"\xbf\x03\n\x18TargetPoolAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12N\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32<.google.cloud.compute.v1.TargetPoolAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\\\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.TargetPoolsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"{\n\x18TargetPoolInstanceHealth\x12@\n\rhealth_status\x18\xb5\xd6\xba\xb5\x01 \x03(\x0b\x32%.google.cloud.compute.v1.HealthStatus\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_kind\"\xa5\x02\n\x0eTargetPoolList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x35\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32#.google.cloud.compute.v1.TargetPool\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"l\n TargetPoolsAddHealthCheckRequest\x12H\n\rhealth_checks\x18\xae\xaf\xe6\xd5\x01 \x03(\x0b\x32-.google.cloud.compute.v1.HealthCheckReference\"a\n\x1dTargetPoolsAddInstanceRequest\x12@\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32*.google.cloud.compute.v1.InstanceReference\"o\n#TargetPoolsRemoveHealthCheckRequest\x12H\n\rhealth_checks\x18\xae\xaf\xe6\xd5\x01 \x03(\x0b\x32-.google.cloud.compute.v1.HealthCheckReference\"d\n TargetPoolsRemoveInstanceRequest\x12@\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32*.google.cloud.compute.v1.InstanceReference\"\x9d\x01\n\x15TargetPoolsScopedList\x12=\n\x0ctarget_pools\x18\xa9\x9f\xa0\xa0\x01 \x03(\x0b\x32#.google.cloud.compute.v1.TargetPool\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"4\n\x0fTargetReference\x12\x16\n\x06target\x18\x91\xe3\xf9[ \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_target\"P\n(TargetSslProxiesSetBackendServiceRequest\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_service\"_\n(TargetSslProxiesSetCertificateMapRequest\x12\x1f\n\x0f\x63\x65rtificate_map\x18\xb4\xe5\xcdJ \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_certificate_map\"\xa0\x01\n%TargetSslProxiesSetProxyHeaderRequest\x12\x1c\n\x0cproxy_header\x18\xfe\xba\xbcL \x01(\tH\x00\x88\x01\x01\"H\n\x0bProxyHeader\x12\x1a\n\x16UNDEFINED_PROXY_HEADER\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x10\n\x08PROXY_V1\x10\xac\xa4\xb7\x9f\x01\x42\x0f\n\r_proxy_header\"I\n)TargetSslProxiesSetSslCertificatesRequest\x12\x1c\n\x10ssl_certificates\x18\x8f\xa2\xc3\xae\x01 \x03(\t\"\x98\x04\n\x0eTargetSslProxy\x12\x1f\n\x0f\x63\x65rtificate_map\x18\xb4\xe5\xcdJ \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x1c\n\x0cproxy_header\x18\xfe\xba\xbcL \x01(\tH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x08\x88\x01\x01\x12\x1c\n\x10ssl_certificates\x18\x8f\xa2\xc3\xae\x01 \x03(\t\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tH\t\x88\x01\x01\"H\n\x0bProxyHeader\x12\x1a\n\x16UNDEFINED_PROXY_HEADER\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x10\n\x08PROXY_V1\x10\xac\xa4\xb7\x9f\x01\x42\x12\n\x10_certificate_mapB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x0f\n\r_proxy_headerB\x0c\n\n_self_linkB\n\n\x08_serviceB\r\n\x0b_ssl_policy\"\xad\x02\n\x12TargetSslProxyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.TargetSslProxy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xab\x01\n\x1aTargetTcpProxiesScopedList\x12\x46\n\x12target_tcp_proxies\x18\x80\xd7\xfa| \x03(\x0b\x32\'.google.cloud.compute.v1.TargetTcpProxy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"P\n(TargetTcpProxiesSetBackendServiceRequest\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_service\"\xa0\x01\n%TargetTcpProxiesSetProxyHeaderRequest\x12\x1c\n\x0cproxy_header\x18\xfe\xba\xbcL \x01(\tH\x00\x88\x01\x01\"H\n\x0bProxyHeader\x12\x1a\n\x16UNDEFINED_PROXY_HEADER\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x10\n\x08PROXY_V1\x10\xac\xa4\xb7\x9f\x01\x42\x0f\n\r_proxy_header\"\xe8\x03\n\x0eTargetTcpProxy\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x04\x88\x01\x01\x12\x1b\n\nproxy_bind\x18\xee\xce\xb1\x88\x01 \x01(\x08H\x05\x88\x01\x01\x12\x1c\n\x0cproxy_header\x18\xfe\xba\xbcL \x01(\tH\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\t\x88\x01\x01\"H\n\x0bProxyHeader\x12\x1a\n\x16UNDEFINED_PROXY_HEADER\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x10\n\x08PROXY_V1\x10\xac\xa4\xb7\x9f\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\r\n\x0b_proxy_bindB\x0f\n\r_proxy_headerB\t\n\x07_regionB\x0c\n\n_self_linkB\n\n\x08_service\"\xcc\x03\n\x1cTargetTcpProxyAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12R\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32@.google.cloud.compute.v1.TargetTcpProxyAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.TargetTcpProxiesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xad\x02\n\x12TargetTcpProxyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.TargetTcpProxy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x82\x06\n\x10TargetVpnGateway\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x10\x66orwarding_rules\x18\xb5\x9a\xcc\x96\x01 \x03(\t\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x04\x88\x01\x01\x12I\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x35.google.cloud.compute.v1.TargetVpnGateway.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x06\x88\x01\x01\x12G\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32/.google.cloud.compute.v1.TargetVpnGatewayParamsH\x07\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\n\x88\x01\x01\x12\x12\n\x07tunnels\x18\x8b\xfa\xed\x31 \x03(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"`\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_paramsB\t\n\x07_regionB\x0c\n\n_self_linkB\t\n\x07_status\"\xd1\x03\n\x1eTargetVpnGatewayAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12T\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x42.google.cloud.compute.v1.TargetVpnGatewayAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x62\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.google.cloud.compute.v1.TargetVpnGatewaysScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb1\x02\n\x14TargetVpnGatewayList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12;\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32).google.cloud.compute.v1.TargetVpnGateway\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xc1\x01\n\x16TargetVpnGatewayParams\x12k\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32H.google.cloud.compute.v1.TargetVpnGatewayParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xb0\x01\n\x1bTargetVpnGatewaysScopedList\x12J\n\x13target_vpn_gateways\x18\x88\x93\xca\xbf\x01 \x03(\x0b\x32).google.cloud.compute.v1.TargetVpnGateway\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x93\x04\n\x0bTestFailure\x12\"\n\x11\x61\x63tual_output_url\x18\x82\xd9\xf1\x88\x01 \x01(\tH\x00\x88\x01\x01\x12-\n\x1d\x61\x63tual_redirect_response_code\x18\xd9\x83\xbc\x14 \x01(\x05H\x01\x88\x01\x01\x12\x1f\n\x0e\x61\x63tual_service\x18\x84\xd2\xfe\xd1\x01 \x01(\tH\x02\x88\x01\x01\x12$\n\x13\x65xpected_output_url\x18\x98\xa2\xf7\xce\x01 \x01(\tH\x03\x88\x01\x01\x12/\n\x1f\x65xpected_redirect_response_code\x18\xef\xea\x80\t \x01(\x05H\x04\x88\x01\x01\x12 \n\x10\x65xpected_service\x18\xae\xf8\xf1? \x01(\tH\x05\x88\x01\x01\x12=\n\x07headers\x18\x86\xdf\x9d{ \x03(\x0b\x32).google.cloud.compute.v1.UrlMapTestHeader\x12\x14\n\x04host\x18\xa8\xeb\xc3\x01 \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04path\x18\xa5\xc8\xd1\x01 \x01(\tH\x07\x88\x01\x01\x42\x14\n\x12_actual_output_urlB \n\x1e_actual_redirect_response_codeB\x11\n\x0f_actual_serviceB\x16\n\x14_expected_output_urlB\"\n _expected_redirect_response_codeB\x13\n\x11_expected_serviceB\x07\n\x05_hostB\x07\n\x05_path\"\xd2\x01\n TestIamPermissionsAddressRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd3\x01\n#TestIamPermissionsAutoscalerRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xc0\x01\n&TestIamPermissionsBackendBucketRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xc1\x01\n\'TestIamPermissionsBackendServiceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xcd\x01\n\x1dTestIamPermissionsDiskRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xc5\x01\n+TestIamPermissionsExternalVpnGatewayRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xa8\x01\n\'TestIamPermissionsFirewallPolicyRequest\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xbb\x01\n!TestIamPermissionsFirewallRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xc0\x01\n&TestIamPermissionsGlobalAddressRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xbe\x01\n$TestIamPermissionsHealthCheckRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xb8\x01\n\x1eTestIamPermissionsImageRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd6\x01\n&TestIamPermissionsInstanceGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd1\x01\n!TestIamPermissionsInstanceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xc3\x01\n)TestIamPermissionsInstanceTemplateRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd8\x01\n(TestIamPermissionsInstantSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xce\x01\n4TestIamPermissionsInterconnectAttachmentGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xc4\x01\n*TestIamPermissionsInterconnectGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xbe\x01\n$TestIamPermissionsLicenseCodeRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xba\x01\n TestIamPermissionsLicenseRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xbf\x01\n%TestIamPermissionsMachineImageRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdc\x01\n*TestIamPermissionsNetworkAttachmentRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdd\x01\n-TestIamPermissionsNetworkEndpointGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xc8\x01\n.TestIamPermissionsNetworkFirewallPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd2\x01\n\"TestIamPermissionsNodeGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd7\x01\n%TestIamPermissionsNodeTemplateRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xda\x01\n(TestIamPermissionsPacketMirroringRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdb\x01\n)TestIamPermissionsRegionAutoscalerRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdf\x01\n-TestIamPermissionsRegionBackendServiceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe5\x01\n3TestIamPermissionsRegionCompositeHealthCheckRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd5\x01\n#TestIamPermissionsRegionDiskRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe8\x01\n6TestIamPermissionsRegionHealthAggregationPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdc\x01\n*TestIamPermissionsRegionHealthCheckRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe3\x01\n1TestIamPermissionsRegionHealthCheckServiceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdd\x01\n+TestIamPermissionsRegionHealthSourceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xde\x01\n,TestIamPermissionsRegionInstanceGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe0\x01\n.TestIamPermissionsRegionInstantSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe6\x01\n4TestIamPermissionsRegionNetworkFirewallPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe5\x01\n3TestIamPermissionsRegionNotificationEndpointRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xfa\x01\n)TestIamPermissionsReservationBlockRequest\x12\x1f\n\x0fparent_resource\x18\x83\x98\xd0\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd4\x01\n$TestIamPermissionsReservationRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xfd\x01\n,TestIamPermissionsReservationSubBlockRequest\x12\x1f\n\x0fparent_resource\x18\x83\x98\xd0\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd9\x01\n\'TestIamPermissionsResourcePolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xb8\x01\n\x1eTestIamPermissionsRouteRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdc\x01\n*TestIamPermissionsServiceAttachmentRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xbb\x01\n!TestIamPermissionsSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd4\x01\n$TestIamPermissionsStoragePoolRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd5\x01\n#TestIamPermissionsSubnetworkRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd7\x01\n\'TestIamPermissionsTargetInstanceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd5\x01\n#TestIamPermissionsTargetPoolRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xc1\x01\n\'TestIamPermissionsTargetSslProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xc1\x01\n\'TestIamPermissionsTargetTcpProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xb9\x01\n\x1fTestIamPermissionsUrlMapRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd5\x01\n#TestIamPermissionsVpnGatewayRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"0\n\x16TestPermissionsRequest\x12\x16\n\x0bpermissions\x18\x84\xe9\xcb\x1c \x03(\t\"1\n\x17TestPermissionsResponse\x12\x16\n\x0bpermissions\x18\x84\xe9\xcb\x1c \x03(\t\"D\n\x07Uint128\x12\x14\n\x04high\x18\xa2\xbb\xc3\x01 \x01(\x04H\x00\x88\x01\x01\x12\x12\n\x03low\x18\xd4\xc6\x06 \x01(\x04H\x01\x88\x01\x01\x42\x07\n\x05_highB\x06\n\x04_low\"\xd3\t\n\x13UpcomingMaintenance\x12\x1e\n\x0e\x63\x61n_reschedule\x18\x99\xa3\xe2- \x01(\x08H\x00\x88\x01\x01\x12(\n\x18latest_window_start_time\x18\x81\xbb\x86= \x01(\tH\x01\x88\x01\x01\x12\'\n\x17maintenance_on_shutdown\x18\x8a\xc3\x96n \x01(\x08H\x02\x88\x01\x01\x12\x1e\n\x13maintenance_reasons\x18\x83\x9b\xf2\x42 \x03(\t\x12\"\n\x12maintenance_status\x18\x9e\x9d\xf7& \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x04\x88\x01\x01\x12 \n\x0fwindow_end_time\x18\xa0\xae\xce\x81\x01 \x01(\tH\x05\x88\x01\x01\x12\"\n\x11window_start_time\x18\xb9\xb0\xc9\xe1\x01 \x01(\tH\x06\x88\x01\x01\"\xbd\x04\n\x12MaintenanceReasons\x12!\n\x1dUNDEFINED_MAINTENANCE_REASONS\x10\x00\x12\x13\n\x0c\x46\x41ILURE_DISK\x10\xd2\xa6\x8b\x04\x12\x13\n\x0b\x46\x41ILURE_GPU\x10\xb7\xf8\x8c\xdf\x01\x12:\n3FAILURE_GPU_MULTIPLE_FAULTY_HOSTS_CUSTOMER_REPORTED\x10\xdf\x9d\xbcj\x12\x32\n+FAILURE_GPU_NVLINK_SWITCH_CUSTOMER_REPORTED\x10\x9e\xef\x98*\x12\x1e\n\x17\x46\x41ILURE_GPU_TEMPERATURE\x10\xcc\xb2\xf1\x0b\x12\x16\n\x0f\x46\x41ILURE_GPU_XID\x10\xeb\x96\xe3\x18\x12\x15\n\rFAILURE_INFRA\x10\x9b\xc5\x80\x81\x01\x12\x19\n\x11\x46\x41ILURE_INTERFACE\x10\x84\xf1\xff\xb9\x01\x12\x16\n\x0e\x46\x41ILURE_MEMORY\x10\xf6\xca\xef\xd1\x01\x12\x16\n\x0f\x46\x41ILURE_NETWORK\x10\xb9\x80\xb5\x14\x12\x16\n\x0e\x46\x41ILURE_NVLINK\x10\xb7\x84\xff\xe6\x01\x12\'\n FAILURE_REDUNDANT_HARDWARE_FAULT\x10\xd2\x8f\xe4\x0e\x12\x13\n\x0b\x46\x41ILURE_TPU\x10\x84\xda\x8d\xdf\x01\x12!\n\x19INFRASTRUCTURE_RELOCATION\x10\x84\x9e\xcb\xab\x01\x12!\n\x1aMAINTENANCE_REASON_UNKNOWN\x10\xfb\xc7\x8e\x18\x12\x1d\n\x16PLANNED_NETWORK_UPDATE\x10\x95\xf8\xcd@\x12\x15\n\x0ePLANNED_UPDATE\x10\xc4\xb7\x8fM\"g\n\x11MaintenanceStatus\x12 \n\x1cUNDEFINED_MAINTENANCE_STATUS\x10\x00\x12\x0f\n\x07ONGOING\x10\xdb\xa6\xcf\xe1\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\"j\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x10\n\x08MULTIPLE\x10\x90\xac\xfa\xac\x01\x12\x11\n\tSCHEDULED\x10\x8d\xa1\x8f\xe4\x01\x12\x14\n\x0cUNKNOWN_TYPE\x10\xaf\xa4\xfe\xe9\x01\x12\x13\n\x0bUNSCHEDULED\x10\x94\xc4\xce\xd6\x01\x42\x11\n\x0f_can_rescheduleB\x1b\n\x19_latest_window_start_timeB\x1a\n\x18_maintenance_on_shutdownB\x15\n\x13_maintenance_statusB\x07\n\x05_typeB\x12\n\x10_window_end_timeB\x14\n\x12_window_start_time\"\x9c\x02\n!UpdateAccessConfigInstanceRequest\x12N\n\x16\x61\x63\x63\x65ss_config_resource\x18\x90\xff\xf6\xb8\x01 \x01(\x0b\x32%.google.cloud.compute.v1.AccessConfigB\x03\xe0\x41\x02\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11network_interface\x18\xe8\xc0\x9d\xae\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xfa\x01\n\x17UpdateAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tH\x00\x88\x01\x01\x12H\n\x13\x61utoscaler_resource\x18\xf6\xf0\xff\x62 \x01(\x0b\x32#.google.cloud.compute.v1.AutoscalerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_autoscalerB\r\n\x0b_request_id\"\xdc\x01\n\x1aUpdateBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12P\n\x17\x62\x61\x63kend_bucket_resource\x18\x98\xce\xc7\xb5\x01 \x01(\x0b\x32&.google.cloud.compute.v1.BackendBucketB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe1\x01\n\x1bUpdateBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x62\x61\x63kend_service_resource\x18\xa3\x81\xdf\xa5\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.BackendServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa1\x02\n\x11UpdateDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12<\n\rdisk_resource\x18\xf0\xd0\xab\x0c \x01(\x0b\x32\x1d.google.cloud.compute.v1.DiskB\x03\xe0\x41\x02\x12\x15\n\x05paths\x18\xee\xc1\xe0\x32 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x08\n\x06_pathsB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xfb\x01\n\"UpdateDisplayDeviceInstanceRequest\x12P\n\x17\x64isplay_device_resource\x18\xda\x84\x91\x8a\x01 \x01(\x0b\x32&.google.cloud.compute.v1.DisplayDeviceB\x03\xe0\x41\x02\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xc6\x01\n\x15UpdateFirewallRequest\x12\x19\n\x08\x66irewall\x18\x80\xfa\xd5\xf3\x01 \x01(\tB\x03\xe0\x41\x02\x12\x44\n\x11\x66irewall_resource\x18\xed\xb0\xe0\x13 \x01(\x0b\x32!.google.cloud.compute.v1.FirewallB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb7\x02\n\x1eUpdateFutureReservationRequest\x12\"\n\x12\x66uture_reservation\x18\xd0\xc6\xe6\x1a \x01(\tB\x03\xe0\x41\x02\x12X\n\x1b\x66uture_reservation_resource\x18\x9d\x98\xc8\xde\x01 \x01(\x0b\x32*.google.cloud.compute.v1.FutureReservationB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xd4\x01\n\x18UpdateHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12K\n\x15health_check_resource\x18\xa8\xc3\xa4` \x01(\x0b\x32$.google.cloud.compute.v1.HealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9f\x04\n\x15UpdateInstanceRequest\x12\"\n\x11\x64iscard_local_ssd\x18\xcf\xe9\xad\x98\x01 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x44\n\x11instance_resource\x18\xf8\xf0\xfe\x66 \x01(\x0b\x32!.google.cloud.compute.v1.InstanceB\x03\xe0\x41\x02\x12\x1f\n\x0eminimal_action\x18\x94\x8d\x82\x81\x01 \x01(\tH\x01\x88\x01\x01\x12.\n\x1emost_disruptive_allowed_action\x18\x8d\xce\xc2\x1f \x01(\tH\x02\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zone\"-\n\rMinimalAction\x12\x1c\n\x18UNDEFINED_MINIMAL_ACTION\x10\x00\"K\n\x1bMostDisruptiveAllowedAction\x12,\n(UNDEFINED_MOST_DISRUPTIVE_ALLOWED_ACTION\x10\x00\x42\x14\n\x12_discard_local_ssdB\x11\n\x0f_minimal_actionB!\n\x1f_most_disruptive_allowed_actionB\r\n\x0b_request_id\"\xf0\x01\n\x14UpdateLicenseRequest\x12\x17\n\x07license\x18\xc1\x88\xc2O \x01(\tB\x03\xe0\x41\x02\x12\x43\n\x10license_resource\x18\xcc\xd4\xea\xd0\x01 \x01(\x0b\x32 .google.cloud.compute.v1.LicenseB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xa8\x02\n%UpdateNetworkInterfaceInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11network_interface\x18\xe8\xc0\x9d\xae\x01 \x01(\tB\x03\xe0\x41\x02\x12V\n\x1anetwork_interface_resource\x18\x85\x94\xae\x9b\x01 \x01(\x0b\x32).google.cloud.compute.v1.NetworkInterfaceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf5\x01\n\x1bUpdatePeeringNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12o\n(networks_update_peering_request_resource\x18\xd9\xaa\x82k \x01(\x0b\x32\x35.google.cloud.compute.v1.NetworksUpdatePeeringRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe6\x02\n3UpdatePerInstanceConfigsInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x9b\x01\n@instance_group_managers_update_per_instance_configs_req_resource\x18\xbe\xc1\xb6\x43 \x01(\x0b\x32I.google.cloud.compute.v1.InstanceGroupManagersUpdatePerInstanceConfigsReqB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf2\x02\n9UpdatePerInstanceConfigsRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9d\x01\nAregion_instance_group_manager_update_instance_config_req_resource\x18\xa7\xae\xba* \x01(\x0b\x32J.google.cloud.compute.v1.RegionInstanceGroupManagerUpdateInstanceConfigReqB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe0\x01\n\x1bUpdatePreviewFeatureRequest\x12 \n\x0fpreview_feature\x18\xff\xfa\xfa\xd8\x01 \x01(\tB\x03\xe0\x41\x02\x12Q\n\x18preview_feature_resource\x18\xce\xed\x97\x05 \x01(\x0b\x32\'.google.cloud.compute.v1.PreviewFeatureB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x84\x02\n\x1dUpdateRegionAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tH\x00\x88\x01\x01\x12H\n\x13\x61utoscaler_resource\x18\xf6\xf0\xff\x62 \x01(\x0b\x32#.google.cloud.compute.v1.AutoscalerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_autoscalerB\r\n\x0b_request_id\"\x88\x02\n!UpdateRegionBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x62\x61\x63kend_service_resource\x18\xa3\x81\xdf\xa5\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.BackendServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc4\x02\n\x1dUpdateRegionCommitmentRequest\x12\x1b\n\ncommitment\x18\x95\x96\xf3\xe5\x01 \x01(\tB\x03\xe0\x41\x02\x12H\n\x13\x63ommitment_resource\x18\xf8\xa3\xbbt \x01(\x0b\x32#.google.cloud.compute.v1.CommitmentB\x03\xe0\x41\x02\x12\x15\n\x05paths\x18\xee\xc1\xe0\x32 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x02\x88\x01\x01\x42\x08\n\x06_pathsB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xab\x02\n\x17UpdateRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12<\n\rdisk_resource\x18\xf0\xd0\xab\x0c \x01(\x0b\x32\x1d.google.cloud.compute.v1.DiskB\x03\xe0\x41\x02\x12\x15\n\x05paths\x18\xee\xc1\xe0\x32 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x02\x88\x01\x01\x42\x08\n\x06_pathsB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xfb\x01\n\x1eUpdateRegionHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12K\n\x15health_check_resource\x18\xa8\xc3\xa4` \x01(\x0b\x32$.google.cloud.compute.v1.HealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe7\x01\n\x19UpdateRegionUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x12\x41\n\x10url_map_resource\x18\xe1\x90\xb7P \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xbe\x02\n\x18UpdateReservationRequest\x12\x15\n\x05paths\x18\xee\xc1\xe0\x32 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12K\n\x14reservation_resource\x18\xa1\xee\xf4\x87\x01 \x01(\x0b\x32$.google.cloud.compute.v1.ReservationB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x08\n\x06_pathsB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xa3\x02\n\x1cUpdateReservationSlotRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12!\n\x10reservation_slot\x18\x91\xbd\xa7\x84\x01 \x01(\tB\x03\xe0\x41\x02\x12T\n\x19reservation_slot_resource\x18\xfc\xd3\xe7\xc2\x01 \x01(\x0b\x32(.google.cloud.compute.v1.ReservationSlotB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x0e\n\x0c_update_mask\"\xf4\x01\n\x1eUpdateRoutePolicyRouterRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12K\n\x15route_policy_resource\x18\x85\xbd\xb5\x37 \x01(\x0b\x32$.google.cloud.compute.v1.RoutePolicyB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xde\x01\n\x13UpdateRouterRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x12@\n\x0frouter_resource\x18\xc4\x80\x82J \x01(\x0b\x32\x1f.google.cloud.compute.v1.RouterB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x97\x02\n+UpdateShieldedInstanceConfigInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x63\n!shielded_instance_config_resource\x18\xd8\x96\xdd\x81\x01 \x01(\x0b\x32/.google.cloud.compute.v1.ShieldedInstanceConfigB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x9f\x02\n\x18UpdateStoragePoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0cstorage_pool\x18\xe0\xc6\xf1\xab\x01 \x01(\tB\x03\xe0\x41\x02\x12K\n\x15storage_pool_resource\x18\x8d\xbc\xf9J \x01(\x0b\x32$.google.cloud.compute.v1.StoragePoolB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xc0\x01\n\x13UpdateUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x12\x41\n\x10url_map_resource\x18\xe1\x90\xb7P \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf2\x07\n\x06UrlMap\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12h\n$default_custom_error_response_policy\x18\xa9\x8b\xe0& \x01(\x0b\x32\x32.google.cloud.compute.v1.CustomErrorResponsePolicyH\x01\x88\x01\x01\x12O\n\x14\x64\x65\x66\x61ult_route_action\x18\xaa\xb4\xd7\xb4\x01 \x01(\x0b\x32(.google.cloud.compute.v1.HttpRouteActionH\x02\x88\x01\x01\x12 \n\x0f\x64\x65\x66\x61ult_service\x18\xb7\xe5\xc5\xb0\x01 \x01(\tH\x03\x88\x01\x01\x12R\n\x14\x64\x65\x66\x61ult_url_redirect\x18\xea\xab\xb6\xab\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HttpRedirectActionH\x04\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x06\x88\x01\x01\x12I\n\rheader_action\x18\xa8\xa0\xb8\x9c\x01 \x01(\x0b\x32).google.cloud.compute.v1.HttpHeaderActionH\x07\x88\x01\x01\x12\x39\n\nhost_rules\x18\xa0\x87\xd7\x94\x01 \x03(\x0b\x32!.google.cloud.compute.v1.HostRule\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x08\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\n\x88\x01\x01\x12?\n\rpath_matchers\x18\xdb\x88\xc5\x81\x01 \x03(\x0b\x32$.google.cloud.compute.v1.PathMatcher\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0b\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\x12\x35\n\x05tests\x18\xa1\x9c\xc9\x34 \x03(\x0b\x32#.google.cloud.compute.v1.UrlMapTestB\x15\n\x13_creation_timestampB\'\n%_default_custom_error_response_policyB\x17\n\x15_default_route_actionB\x12\n\x10_default_serviceB\x17\n\x15_default_url_redirectB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x10\n\x0e_header_actionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x0c\n\n_self_link\"\x9d\x02\n\nUrlMapList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x31\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1f.google.cloud.compute.v1.UrlMap\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"7\n\x0fUrlMapReference\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_url_map\"\xf0\x02\n\nUrlMapTest\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12$\n\x13\x65xpected_output_url\x18\x98\xa2\xf7\xce\x01 \x01(\tH\x01\x88\x01\x01\x12/\n\x1f\x65xpected_redirect_response_code\x18\xef\xea\x80\t \x01(\x05H\x02\x88\x01\x01\x12=\n\x07headers\x18\x86\xdf\x9d{ \x03(\x0b\x32).google.cloud.compute.v1.UrlMapTestHeader\x12\x14\n\x04host\x18\xa8\xeb\xc3\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04path\x18\xa5\xc8\xd1\x01 \x01(\tH\x04\x88\x01\x01\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x05\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x16\n\x14_expected_output_urlB\"\n _expected_redirect_response_codeB\x07\n\x05_hostB\x07\n\x05_pathB\n\n\x08_service\"R\n\x10UrlMapTestHeader\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05value\x18\xf1\xa2\xb2\x35 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\x08\n\x06_value\"\xd2\x01\n\x16UrlMapValidationResult\x12\x17\n\x0bload_errors\x18\xe4\xf1\xf1\x93\x01 \x03(\t\x12\x1e\n\x0eload_succeeded\x18\xc8\xb4\x98= \x01(\x08H\x00\x88\x01\x01\x12?\n\rtest_failures\x18\xb6\xe2\x9f\xf1\x01 \x03(\x0b\x32$.google.cloud.compute.v1.TestFailure\x12\x1b\n\x0btest_passed\x18\xbd\x81\xf2[ \x01(\x08H\x01\x88\x01\x01\x42\x11\n\x0f_load_succeededB\x0e\n\x0c_test_passed\"\xb5\x03\n\x15UrlMapsAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12K\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x39.google.cloud.compute.v1.UrlMapsAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aX\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x39\n\x05value\x18\x02 \x01(\x0b\x32*.google.cloud.compute.v1.UrlMapsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x90\x01\n\x11UrlMapsScopedList\x12\x34\n\x08url_maps\x18\xe7\x8e\xa4\x31 \x03(\x0b\x32\x1f.google.cloud.compute.v1.UrlMap\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x98\x02\n\x16UrlMapsValidateRequest\x12!\n\x16load_balancing_schemes\x18\xaf\x85\x81\x03 \x03(\t\x12\x39\n\x08resource\x18\x8e\x88\xaf] \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapH\x00\x88\x01\x01\"\x92\x01\n\x14LoadBalancingSchemes\x12$\n UNDEFINED_LOAD_BALANCING_SCHEMES\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x18\n\x10\x45XTERNAL_MANAGED\x10\x8b\xb6\x92\xf4\x01\x12)\n!LOAD_BALANCING_SCHEME_UNSPECIFIED\x10\xbc\xbb\x87\xfb\x01\x42\x0b\n\t_resource\"m\n\x17UrlMapsValidateResponse\x12G\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32/.google.cloud.compute.v1.UrlMapValidationResultH\x00\x88\x01\x01\x42\t\n\x07_result\"\xba\x01\n\nUrlRewrite\x12\x1c\n\x0chost_rewrite\x18\xf5\xcb\x9aL \x01(\tH\x00\x88\x01\x01\x12#\n\x13path_prefix_rewrite\x18\xb9\xe8\xd1\x13 \x01(\tH\x01\x88\x01\x01\x12&\n\x15path_template_rewrite\x18\xa1\xef\xf2\xc9\x01 \x01(\tH\x02\x88\x01\x01\x42\x0f\n\r_host_rewriteB\x16\n\x14_path_prefix_rewriteB\x18\n\x16_path_template_rewrite\"\xfe\x07\n\x10UsableSubnetwork\x12$\n\x14\x65xternal_ipv6_prefix\x18\xf6\x92\xb6\x42 \x01(\tH\x00\x88\x01\x01\x12%\n\x14internal_ipv6_prefix\x18\xe8\xa2\xb4\xf1\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x02\x88\x01\x01\x12!\n\x10ipv6_access_type\x18\xdd\xf5\xd1\xf0\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x04\x88\x01\x01\x12\x18\n\x07purpose\x18\x9e\xfa\xef\x96\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04role\x18\xf6\x80\xd6\x01 \x01(\tH\x06\x88\x01\x01\x12W\n\x13secondary_ip_ranges\x18\xe3\xff\x94\x41 \x03(\x0b\x32\x37.google.cloud.compute.v1.UsableSubnetworkSecondaryRange\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH\x07\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\x08\x88\x01\x01\"S\n\x0eIpv6AccessType\x12\x1e\n\x1aUNDEFINED_IPV6_ACCESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\"\xf8\x01\n\x07Purpose\x12\x15\n\x11UNDEFINED_PURPOSE\x10\x00\x12\x1b\n\x14GLOBAL_MANAGED_PROXY\x10\xf2\xcb\xe0p\x12#\n\x1cINTERNAL_HTTPS_LOAD_BALANCER\x10\xd9\xb6\xcev\x12\x16\n\x0ePEER_MIGRATION\x10\x91\xaa\xc7\xea\x01\x12\x0f\n\x07PRIVATE\x10\xe3\xe2\xb2\xc0\x01\x12\x13\n\x0bPRIVATE_NAT\x10\xa5\xc8\xae\xaf\x01\x12\x17\n\x10PRIVATE_RFC_1918\x10\xdb\xfe\xc5y\x12\x1e\n\x17PRIVATE_SERVICE_CONNECT\x10\xc4\xf4\xf9\x16\x12\x1d\n\x16REGIONAL_MANAGED_PROXY\x10\xee\xb6\xfdH\":\n\x04Role\x12\x12\n\x0eUNDEFINED_ROLE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0e\n\x06\x42\x41\x43KUP\x10\xc2\xd3\xcd\xa2\x01\"[\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\x12\x10\n\tIPV6_ONLY\x10\xe4\xad\xfc%B\x17\n\x15_external_ipv6_prefixB\x17\n\x15_internal_ipv6_prefixB\x10\n\x0e_ip_cidr_rangeB\x13\n\x11_ipv6_access_typeB\n\n\x08_networkB\n\n\x08_purposeB\x07\n\x05_roleB\r\n\x0b_stack_typeB\r\n\x0b_subnetwork\"}\n\x1eUsableSubnetworkSecondaryRange\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nrange_name\x18\xcd\xf0\xb4\x9e\x01 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_ip_cidr_rangeB\r\n\x0b_range_name\"\xa4\x03\n\x1fUsableSubnetworksAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12;\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32).google.cloud.compute.v1.UsableSubnetwork\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12M\n\x0fscoped_warnings\x18\xa6\x96\xf8\x66 \x03(\x0b\x32\x31.google.cloud.compute.v1.SubnetworksScopedWarning\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x7f\n\x13UsageExportLocation\x12\x1c\n\x0b\x62ucket_name\x18\xc0\x97\x9e\x87\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12report_name_prefix\x18\xbb\xb0\xd7\x98\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_bucket_nameB\x15\n\x13_report_name_prefix\"\xda\x01\n\x1bValidateRegionUrlMapRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12p\n)region_url_maps_validate_request_resource\x18\x9a\xcc\x80\x1b \x01(\x0b\x32\x35.google.cloud.compute.v1.RegionUrlMapsValidateRequestB\x03\xe0\x41\x02\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\"\xb0\x01\n\x15ValidateUrlMapRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"url_maps_validate_request_resource\x18\xef\xd1\xe4\xbc\x01 \x01(\x0b\x32/.google.cloud.compute.v1.UrlMapsValidateRequestB\x03\xe0\x41\x02\"\xaf\x01\n\x15VmEndpointNatMappings\x12\x1d\n\rinstance_name\x18\xf5\xe7\xd8l \x01(\tH\x00\x88\x01\x01\x12\x65\n\x16interface_nat_mappings\x18\x89\x80\x95z \x03(\x0b\x32\x42.google.cloud.compute.v1.VmEndpointNatMappingsInterfaceNatMappingsB\x10\n\x0e_instance_name\"\xe2\x03\n)VmEndpointNatMappingsInterfaceNatMappings\x12$\n\x18\x64rain_nat_ip_port_ranges\x18\xc1\xe3\xc7\xbc\x01 \x03(\t\x12\x1e\n\x12nat_ip_port_ranges\x18\x9a\xb0\xcc\xfd\x01 \x03(\t\x12*\n\x19num_total_drain_nat_ports\x18\xf9\xa5\xff\x9f\x01 \x01(\x05H\x00\x88\x01\x01\x12$\n\x13num_total_nat_ports\x18\x80\xdb\x80\x8f\x01 \x01(\x05H\x01\x88\x01\x01\x12l\n\rrule_mappings\x18\xc8\xee\xea\xe7\x01 \x03(\x0b\x32Q.google.cloud.compute.v1.VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings\x12&\n\x15source_alias_ip_range\x18\xd8\xa3\xfc\xd1\x01 \x01(\tH\x02\x88\x01\x01\x12!\n\x11source_virtual_ip\x18\xff\xa2\xb9G \x01(\tH\x03\x88\x01\x01\x42\x1c\n\x1a_num_total_drain_nat_portsB\x16\n\x14_num_total_nat_portsB\x18\n\x16_source_alias_ip_rangeB\x14\n\x12_source_virtual_ip\"\xb6\x02\n8VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings\x12$\n\x18\x64rain_nat_ip_port_ranges\x18\xc1\xe3\xc7\xbc\x01 \x03(\t\x12\x1e\n\x12nat_ip_port_ranges\x18\x9a\xb0\xcc\xfd\x01 \x03(\t\x12*\n\x19num_total_drain_nat_ports\x18\xf9\xa5\xff\x9f\x01 \x01(\x05H\x00\x88\x01\x01\x12$\n\x13num_total_nat_ports\x18\x80\xdb\x80\x8f\x01 \x01(\x05H\x01\x88\x01\x01\x12\x1c\n\x0brule_number\x18\xec\xdb\x9a\xff\x01 \x01(\x05H\x02\x88\x01\x01\x42\x1c\n\x1a_num_total_drain_nat_portsB\x16\n\x14_num_total_nat_portsB\x0e\n\x0c_rule_number\"\xbc\x02\n\x19VmEndpointNatMappingsList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x41\n\x06result\x18\x9d\x90\xb7\x42 \x03(\x0b\x32..google.cloud.compute.v1.VmEndpointNatMappings\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa0\x07\n\nVpnGateway\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\"\n\x12gateway_ip_version\x18\x9b\xed\x83\x1f \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x05\x88\x01\x01\x12\x43\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32/.google.cloud.compute.v1.VpnGateway.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x07\x88\x01\x01\x12\x41\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32).google.cloud.compute.v1.VpnGatewayParamsH\x08\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\t\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\n\x88\x01\x01\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH\x0b\x88\x01\x01\x12Q\n\x0evpn_interfaces\x18\x85\xcd\xe5+ \x03(\x0b\x32\x36.google.cloud.compute.v1.VpnGatewayVpnGatewayInterface\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"N\n\x10GatewayIpVersion\x12 \n\x1cUNDEFINED_GATEWAY_IP_VERSION\x10\x00\x12\x0b\n\x04IPV4\x10\x85\xcc\x89\x01\x12\x0b\n\x04IPV6\x10\x87\xcc\x89\x01\"[\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\x12\x10\n\tIPV6_ONLY\x10\xe4\xad\xfc%B\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x15\n\x13_gateway_ip_versionB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_paramsB\t\n\x07_regionB\x0c\n\n_self_linkB\r\n\x0b_stack_type\"\xbf\x03\n\x18VpnGatewayAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12N\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32<.google.cloud.compute.v1.VpnGatewayAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\\\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.VpnGatewaysScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa5\x02\n\x0eVpnGatewayList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x35\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32#.google.cloud.compute.v1.VpnGateway\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb5\x01\n\x10VpnGatewayParams\x12\x65\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x42.google.cloud.compute.v1.VpnGatewayParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"g\n\x10VpnGatewayStatus\x12S\n\x0fvpn_connections\x18\x8a\xed\xbe\xd1\x01 \x03(\x0b\x32\x36.google.cloud.compute.v1.VpnGatewayStatusVpnConnection\"\xd1\x02\n0VpnGatewayStatusHighAvailabilityRequirementState\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12unsatisfied_reason\x18\x8a\xf7\x9d\x1a \x01(\tH\x01\x88\x01\x01\"f\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12!\n\x19\x43ONNECTION_REDUNDANCY_MET\x10\x9b\xca\xf5\xf0\x01\x12%\n\x1d\x43ONNECTION_REDUNDANCY_NOT_MET\x10\x8f\xd4\x89\xf4\x01\"Y\n\x11UnsatisfiedReason\x12 \n\x1cUNDEFINED_UNSATISFIED_REASON\x10\x00\x12\"\n\x1bINCOMPLETE_TUNNELS_COVERAGE\x10\xfd\xf6\xd4\x1a\x42\x08\n\x06_stateB\x15\n\x13_unsatisfied_reason\"\xcb\x01\n\x16VpnGatewayStatusTunnel\x12\'\n\x17local_gateway_interface\x18\xaa\x9a\xdaK \x01(\rH\x00\x88\x01\x01\x12&\n\x16peer_gateway_interface\x18\xe1\xde\x9c\x66 \x01(\rH\x01\x88\x01\x01\x12\x1a\n\ntunnel_url\x18\x98\xa2\xd4% \x01(\tH\x02\x88\x01\x01\x42\x1a\n\x18_local_gateway_interfaceB\x19\n\x17_peer_gateway_interfaceB\r\n\x0b_tunnel_url\"\xca\x02\n\x1dVpnGatewayStatusVpnConnection\x12&\n\x15peer_external_gateway\x18\x8d\xee\xc7\xb7\x01 \x01(\tH\x00\x88\x01\x01\x12!\n\x10peer_gcp_gateway\x18\xbc\xe9\xb3\x86\x01 \x01(\tH\x01\x88\x01\x01\x12`\n\x05state\x18\x91\x89\xab\x34 \x01(\x0b\x32I.google.cloud.compute.v1.VpnGatewayStatusHighAvailabilityRequirementStateH\x02\x88\x01\x01\x12\x43\n\x07tunnels\x18\x8b\xfa\xed\x31 \x03(\x0b\x32/.google.cloud.compute.v1.VpnGatewayStatusTunnelB\x18\n\x16_peer_external_gatewayB\x13\n\x11_peer_gcp_gatewayB\x08\n\x06_state\"\xda\x01\n\x1dVpnGatewayVpnGatewayInterface\x12\x10\n\x02id\x18\x9b\x1a \x01(\rH\x00\x88\x01\x01\x12(\n\x17interconnect_attachment\x18\xf4\x8a\xf7\x92\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x02\x88\x01\x01\x12\x1d\n\x0cipv6_address\x18\x9c\xb3\xef\xa2\x01 \x01(\tH\x03\x88\x01\x01\x42\x05\n\x03_idB\x1a\n\x18_interconnect_attachmentB\r\n\x0b_ip_addressB\x0f\n\r_ipv6_address\"l\n\x1cVpnGatewaysGetStatusResponse\x12\x41\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32).google.cloud.compute.v1.VpnGatewayStatusH\x00\x88\x01\x01\x42\t\n\x07_result\"\x9c\x01\n\x15VpnGatewaysScopedList\x12<\n\x0cvpn_gateways\x18\x9a\xfb\xca{ \x03(\x0b\x32#.google.cloud.compute.v1.VpnGateway\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xc7\r\n\tVpnTunnel\x12L\n\x0c\x63ipher_suite\x18\xc4\xd7\xce\xd3\x01 \x01(\x0b\x32-.google.cloud.compute.v1.VpnTunnelCipherSuiteH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12 \n\x0f\x64\x65tailed_status\x18\xe1\xa4\x83\x9f\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x1b\n\x0bike_version\x18\x9c\xd0\x90h \x01(\x05H\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x07\x88\x01\x01\x12\x42\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32..google.cloud.compute.v1.VpnTunnel.LabelsEntry\x12\"\n\x16local_traffic_selector\x18\xb5\xac\xa7\x97\x01 \x03(\t\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12@\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32(.google.cloud.compute.v1.VpnTunnelParamsH\t\x88\x01\x01\x12&\n\x15peer_external_gateway\x18\x8d\xee\xc7\xb7\x01 \x01(\tH\n\x88\x01\x01\x12\x30\n\x1fpeer_external_gateway_interface\x18\x87\xe5\xf2\xd7\x01 \x01(\x05H\x0b\x88\x01\x01\x12!\n\x10peer_gcp_gateway\x18\xbc\xe9\xb3\x86\x01 \x01(\tH\x0c\x88\x01\x01\x12\x18\n\x07peer_ip\x18\xa4\xda\xdf\xb6\x01 \x01(\tH\r\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0e\x88\x01\x01\x12#\n\x17remote_traffic_selector\x18\xba\xdd\x90\xab\x01 \x03(\t\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tH\x0f\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x10\x88\x01\x01\x12\x1e\n\rshared_secret\x18\xca\xa7\x8f\xb6\x01 \x01(\tH\x11\x88\x01\x01\x12#\n\x12shared_secret_hash\x18\xe3\xe8\x99\xbe\x01 \x01(\tH\x12\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x13\x88\x01\x01\x12#\n\x12target_vpn_gateway\x18\xcb\x80\xf6\xfd\x01 \x01(\tH\x14\x88\x01\x01\x12\x1c\n\x0bvpn_gateway\x18\xf9\x83\xf6\xc1\x01 \x01(\tH\x15\x88\x01\x01\x12%\n\x15vpn_gateway_interface\x18\xf3\x8c\xe2- \x01(\x05H\x16\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xd3\x02\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x1c\n\x14\x41LLOCATING_RESOURCES\x10\xc0\xc9\x83\x99\x01\x12\x1a\n\x13\x41UTHORIZATION_ERROR\x10\x82\x9d\x9f\x0b\x12\x16\n\x0e\x44\x45PROVISIONING\x10\xee\x93\xc4\xcc\x01\x12\x12\n\x0b\x45STABLISHED\x10\xf8\x8e\xaf*\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x16\n\x0f\x46IRST_HANDSHAKE\x10\xe8\xd9\xa1[\x12\x1b\n\x13NEGOTIATION_FAILURE\x10\xec\xc5\xe8\xab\x01\x12\x14\n\rNETWORK_ERROR\x10\xf7\xc0\xbb\\\x12\x1a\n\x13NO_INCOMING_PACKETS\x10\xf0\x98\x9b\x39\x12\x14\n\x0cPROVISIONING\x10\xed\xf5\xda\x8a\x01\x12\x0f\n\x08REJECTED\x10\xfe\x88\x84S\x12\x0f\n\x07STOPPED\x10\xad\xbb\xec\xd3\x01\x12\x1e\n\x17WAITING_FOR_FULL_CONFIG\x10\xca\xc4\xed\x13\x42\x0f\n\r_cipher_suiteB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x12\n\x10_detailed_statusB\x05\n\x03_idB\x0e\n\x0c_ike_versionB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\t\n\x07_paramsB\x18\n\x16_peer_external_gatewayB\"\n _peer_external_gateway_interfaceB\x13\n\x11_peer_gcp_gatewayB\n\n\x08_peer_ipB\t\n\x07_regionB\t\n\x07_routerB\x0c\n\n_self_linkB\x10\n\x0e_shared_secretB\x15\n\x13_shared_secret_hashB\t\n\x07_statusB\x15\n\x13_target_vpn_gatewayB\x0e\n\x0c_vpn_gatewayB\x18\n\x16_vpn_gateway_interface\"\xbc\x03\n\x17VpnTunnelAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12M\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32;.google.cloud.compute.v1.VpnTunnelAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a[\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12<\n\x05value\x18\x02 \x01(\x0b\x32-.google.cloud.compute.v1.VpnTunnelsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xc4\x01\n\x14VpnTunnelCipherSuite\x12J\n\x06phase1\x18\x96\xcc\x98( \x01(\x0b\x32\x32.google.cloud.compute.v1.VpnTunnelPhase1AlgorithmsH\x00\x88\x01\x01\x12J\n\x06phase2\x18\x97\xcc\x98( \x01(\x0b\x32\x32.google.cloud.compute.v1.VpnTunnelPhase2AlgorithmsH\x01\x88\x01\x01\x42\t\n\x07_phase1B\t\n\x07_phase2\"\xa3\x02\n\rVpnTunnelList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x34\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\".google.cloud.compute.v1.VpnTunnel\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb3\x01\n\x0fVpnTunnelParams\x12\x64\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x41.google.cloud.compute.v1.VpnTunnelParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"e\n\x19VpnTunnelPhase1Algorithms\x12\x0b\n\x02\x64h\x18\x84\x19 \x03(\t\x12\x15\n\nencryption\x18\x83\x9f\xdc. \x03(\t\x12\x15\n\tintegrity\x18\xcd\xfe\xff\xea\x01 \x03(\t\x12\r\n\x03prf\x18\xa4\xe5\x06 \x03(\t\"X\n\x19VpnTunnelPhase2Algorithms\x12\x15\n\nencryption\x18\x83\x9f\xdc. \x03(\t\x12\x15\n\tintegrity\x18\xcd\xfe\xff\xea\x01 \x03(\t\x12\r\n\x03pfs\x18\xbd\xe2\x06 \x03(\t\"\x99\x01\n\x14VpnTunnelsScopedList\x12:\n\x0bvpn_tunnels\x18\xc0\xf1\xfaM \x03(\x0b\x32\".google.cloud.compute.v1.VpnTunnel\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x8c\x01\n\x10WafExpressionSet\x12\x12\n\x07\x61liases\x18\xfe\x9d\xf5K \x03(\t\x12K\n\x0b\x65xpressions\x18\xdb\x81\xdbS \x03(\x0b\x32\x33.google.cloud.compute.v1.WafExpressionSetExpression\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x42\x05\n\x03_id\"b\n\x1aWafExpressionSetExpression\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bsensitivity\x18\x9f\xbd\x90\r \x01(\x05H\x01\x88\x01\x01\x42\x05\n\x03_idB\x0e\n\x0c_sensitivity\"P\n\x1aWaitGlobalOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"h\n\x1aWaitRegionOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"d\n\x18WaitZoneOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xfd\x08\n\x07Warning\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\tH\x00\x88\x01\x01\x12.\n\x04\x64\x61ta\x18\xaa\xdf\xbb\x01 \x03(\x0b\x32\x1d.google.cloud.compute.v1.Data\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x01\x88\x01\x01\"\xfc\x07\n\x04\x43ode\x12\x12\n\x0eUNDEFINED_CODE\x10\x00\x12\x15\n\x0e\x43LEANUP_FAILED\x10\xd8\x8c\xd6G\x12 \n\x18\x44\x45PRECATED_RESOURCE_USED\x10\xc2\xdf\xeb\xba\x01\x12\x1c\n\x14\x44\x45PRECATED_TYPE_USED\x10\x96\xa4\x9e\xa5\x01\x12(\n DISK_SIZE_LARGER_THAN_IMAGE_SIZE\x10\x97\x81\x95\xb0\x01\x12\x1e\n\x16\x45XPERIMENTAL_TYPE_USED\x10\x8b\x8e\xc1\xd7\x01\x12\x1b\n\x14\x45XTERNAL_API_WARNING\x10\xc3\xbf\xdaS\x12\x1d\n\x15\x46IELD_VALUE_OVERRIDEN\x10\xaf\xb6\x99\x9d\x01\x12#\n\x1bINJECTED_KERNELS_DEPRECATED\x10\x8b\xd9\x82\xc7\x01\x12\x34\n,INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB\x10\xce\x9b\xbc\xbf\x01\x12 \n\x18LARGE_DEPLOYMENT_WARNING\x10\xa6\xe7\xc8\xe5\x01\x12!\n\x1aLIST_OVERHEAD_QUOTA_EXCEED\x10\xc5\xb0\xda\x16\x12\x1f\n\x17MISSING_TYPE_DEPENDENCY\x10\xf7\xf8\xa2\xa4\x01\x12%\n\x1dNEXT_HOP_ADDRESS_NOT_ASSIGNED\x10\x87\xa5\xfa\x9a\x01\x12\"\n\x1aNEXT_HOP_CANNOT_IP_FORWARD\x10\xe7\xea\xe7\xb6\x01\x12.\n\'NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE\x10\x92\xe8\xfc\x45\x12#\n\x1bNEXT_HOP_INSTANCE_NOT_FOUND\x10\xce\xcc\xaf\xdd\x01\x12\'\n NEXT_HOP_INSTANCE_NOT_ON_NETWORK\x10\xc2\xe8\x9dt\x12\x1c\n\x14NEXT_HOP_NOT_RUNNING\x10\xb1\xcf\xf0\xc6\x01\x12\x19\n\x12NOT_CRITICAL_ERROR\x10\xd4\xa8\xb7\x32\x12\x19\n\x12NO_RESULTS_ON_PAGE\x10\x88\xa6\xa9\x0e\x12\x16\n\x0fPARTIAL_SUCCESS\x10\x85\xae\x87\x13\x12\x1e\n\x16QUOTA_INFO_UNAVAILABLE\x10\xa6\xd2\x8c\x91\x01\x12\x1d\n\x16REQUIRED_TOS_AGREEMENT\x10\x83\xce\xe4\x01\x12\x31\n)RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING\x10\xc1\xf4\xed\xec\x01\x12\x1b\n\x14RESOURCE_NOT_DELETED\x10\xbc\xb7\xb2P\x12!\n\x19SCHEMA_VALIDATION_IGNORED\x10\xca\xd4\x9f\x83\x01\x12(\n!SINGLE_INSTANCE_PROPERTY_TEMPLATE\x10\xd1\x89\xf8\x7f\x12\x1d\n\x15UNDECLARED_PROPERTIES\x10\x9f\x86\x9b\xba\x01\x12\x12\n\x0bUNREACHABLE\x10\xb4\xbd\xad\x06\x42\x07\n\x05_codeB\n\n\x08_message\"\xfe\x08\n\x08Warnings\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\tH\x00\x88\x01\x01\x12.\n\x04\x64\x61ta\x18\xaa\xdf\xbb\x01 \x03(\x0b\x32\x1d.google.cloud.compute.v1.Data\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x01\x88\x01\x01\"\xfc\x07\n\x04\x43ode\x12\x12\n\x0eUNDEFINED_CODE\x10\x00\x12\x15\n\x0e\x43LEANUP_FAILED\x10\xd8\x8c\xd6G\x12 \n\x18\x44\x45PRECATED_RESOURCE_USED\x10\xc2\xdf\xeb\xba\x01\x12\x1c\n\x14\x44\x45PRECATED_TYPE_USED\x10\x96\xa4\x9e\xa5\x01\x12(\n DISK_SIZE_LARGER_THAN_IMAGE_SIZE\x10\x97\x81\x95\xb0\x01\x12\x1e\n\x16\x45XPERIMENTAL_TYPE_USED\x10\x8b\x8e\xc1\xd7\x01\x12\x1b\n\x14\x45XTERNAL_API_WARNING\x10\xc3\xbf\xdaS\x12\x1d\n\x15\x46IELD_VALUE_OVERRIDEN\x10\xaf\xb6\x99\x9d\x01\x12#\n\x1bINJECTED_KERNELS_DEPRECATED\x10\x8b\xd9\x82\xc7\x01\x12\x34\n,INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB\x10\xce\x9b\xbc\xbf\x01\x12 \n\x18LARGE_DEPLOYMENT_WARNING\x10\xa6\xe7\xc8\xe5\x01\x12!\n\x1aLIST_OVERHEAD_QUOTA_EXCEED\x10\xc5\xb0\xda\x16\x12\x1f\n\x17MISSING_TYPE_DEPENDENCY\x10\xf7\xf8\xa2\xa4\x01\x12%\n\x1dNEXT_HOP_ADDRESS_NOT_ASSIGNED\x10\x87\xa5\xfa\x9a\x01\x12\"\n\x1aNEXT_HOP_CANNOT_IP_FORWARD\x10\xe7\xea\xe7\xb6\x01\x12.\n\'NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE\x10\x92\xe8\xfc\x45\x12#\n\x1bNEXT_HOP_INSTANCE_NOT_FOUND\x10\xce\xcc\xaf\xdd\x01\x12\'\n NEXT_HOP_INSTANCE_NOT_ON_NETWORK\x10\xc2\xe8\x9dt\x12\x1c\n\x14NEXT_HOP_NOT_RUNNING\x10\xb1\xcf\xf0\xc6\x01\x12\x19\n\x12NOT_CRITICAL_ERROR\x10\xd4\xa8\xb7\x32\x12\x19\n\x12NO_RESULTS_ON_PAGE\x10\x88\xa6\xa9\x0e\x12\x16\n\x0fPARTIAL_SUCCESS\x10\x85\xae\x87\x13\x12\x1e\n\x16QUOTA_INFO_UNAVAILABLE\x10\xa6\xd2\x8c\x91\x01\x12\x1d\n\x16REQUIRED_TOS_AGREEMENT\x10\x83\xce\xe4\x01\x12\x31\n)RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING\x10\xc1\xf4\xed\xec\x01\x12\x1b\n\x14RESOURCE_NOT_DELETED\x10\xbc\xb7\xb2P\x12!\n\x19SCHEMA_VALIDATION_IGNORED\x10\xca\xd4\x9f\x83\x01\x12(\n!SINGLE_INSTANCE_PROPERTY_TEMPLATE\x10\xd1\x89\xf8\x7f\x12\x1d\n\x15UNDECLARED_PROPERTIES\x10\x9f\x86\x9b\xba\x01\x12\x12\n\x0bUNREACHABLE\x10\xb4\xbd\xad\x06\x42\x07\n\x05_codeB\n\n\x08_message\"\xcf\x01\n\x16WeightedBackendService\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tH\x00\x88\x01\x01\x12I\n\rheader_action\x18\xa8\xa0\xb8\x9c\x01 \x01(\x0b\x32).google.cloud.compute.v1.HttpHeaderActionH\x01\x88\x01\x01\x12\x17\n\x06weight\x18\xf8\x84\xc5\x86\x01 \x01(\rH\x02\x88\x01\x01\x42\x12\n\x10_backend_serviceB\x10\n\x0e_header_actionB\t\n\x07_weight\"\xf6\x01\n\x04Wire\x12\x1e\n\radmin_enabled\x18\xd1\xec\xc1\xd4\x01 \x01(\x08H\x00\x88\x01\x01\x12<\n\tendpoints\x18\xfe\xaa\xf2\x88\x01 \x03(\x0b\x32%.google.cloud.compute.v1.WireEndpoint\x12\x15\n\x05label\x18\xf4\xfd\xfd\x30 \x01(\tH\x01\x88\x01\x01\x12I\n\x0fwire_properties\x18\xad\xba\xc4\x90\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.WirePropertiesH\x02\x88\x01\x01\x42\x10\n\x0e_admin_enabledB\x08\n\x06_labelB\x12\n\x10_wire_properties\"e\n\x0cWireEndpoint\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tH\x00\x88\x01\x01\x12\x19\n\x08vlan_tag\x18\xbe\x95\xb3\xf5\x01 \x01(\x05H\x01\x88\x01\x01\x42\x0f\n\r_interconnectB\x0b\n\t_vlan_tag\"\xe0\x05\n\tWireGroup\x12\x1e\n\radmin_enabled\x18\xd1\xec\xc1\xd4\x01 \x01(\x08H\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12H\n\tendpoints\x18\xfe\xaa\xf2\x88\x01 \x03(\x0b\x32\x31.google.cloud.compute.v1.WireGroup.EndpointsEntry\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x1c\n\x0breconciling\x18\x8b\xd9\x88\xce\x01 \x01(\x08H\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12\x44\n\x08topology\x18\xef\x84\xa7: \x01(\x0b\x32*.google.cloud.compute.v1.WireGroupTopologyH\x08\x88\x01\x01\x12I\n\x0fwire_properties\x18\xad\xba\xc4\x90\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.WirePropertiesH\t\x88\x01\x01\x12/\n\x05wires\x18\x8e\xc1\xf9\x35 \x03(\x0b\x32\x1d.google.cloud.compute.v1.Wire\x1a\\\n\x0e\x45ndpointsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x39\n\x05value\x18\x02 \x01(\x0b\x32*.google.cloud.compute.v1.WireGroupEndpoint:\x02\x38\x01\x42\x10\n\x0e_admin_enabledB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x0e\n\x0c_reconcilingB\x0c\n\n_self_linkB\x0b\n\t_topologyB\x12\n\x10_wire_properties\"\xdb\x01\n\x11WireGroupEndpoint\x12X\n\rinterconnects\x18\xa5\xdb\x85\xf8\x01 \x03(\x0b\x32=.google.cloud.compute.v1.WireGroupEndpoint.InterconnectsEntry\x1al\n\x12InterconnectsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x45\n\x05value\x18\x02 \x01(\x0b\x32\x36.google.cloud.compute.v1.WireGroupEndpointInterconnect:\x02\x38\x01\"e\n\x1dWireGroupEndpointInterconnect\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tH\x00\x88\x01\x01\x12\x15\n\tvlan_tags\x18\xf5\x9a\xb2\xb7\x01 \x03(\x05\x42\x0f\n\r_interconnect\"\xdb\x02\n\rWireGroupList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x34\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\".google.cloud.compute.v1.WireGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"^\n\x11WireGroupTopology\x12I\n\tendpoints\x18\xfe\xaa\xf2\x88\x01 \x03(\x0b\x32\x32.google.cloud.compute.v1.WireGroupTopologyEndpoint\"[\n\x19WireGroupTopologyEndpoint\x12\x14\n\x04\x63ity\x18\xeb\xb2\xba\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05label\x18\xf4\xfd\xfd\x30 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_cityB\x08\n\x06_label\"\x89\x03\n\x0eWireProperties\x12$\n\x14\x62\x61ndwidth_allocation\x18\xae\xfa\x9c+ \x01(\tH\x00\x88\x01\x01\x12$\n\x13\x62\x61ndwidth_unmetered\x18\xa1\x9e\x81\x82\x01 \x01(\x03H\x01\x88\x01\x01\x12\x1f\n\x0e\x66\x61ult_response\x18\xbe\xa3\xcd\xa8\x01 \x01(\tH\x02\x88\x01\x01\"t\n\x13\x42\x61ndwidthAllocation\x12\"\n\x1eUNDEFINED_BANDWIDTH_ALLOCATION\x10\x00\x12\x19\n\x11\x41LLOCATE_PER_WIRE\x10\xc9\x92\x87\xab\x01\x12\x1e\n\x16SHARED_WITH_WIRE_GROUP\x10\xe4\xe6\xcb\x88\x01\"P\n\rFaultResponse\x12\x1c\n\x18UNDEFINED_FAULT_RESPONSE\x10\x00\x12\x14\n\x0c\x44ISABLE_PORT\x10\x98\xaf\xf2\x88\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x42\x17\n\x15_bandwidth_allocationB\x16\n\x14_bandwidth_unmeteredB\x11\n\x0f_fault_response\"\xa0\x01\n&WithdrawPublicAdvertisedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12(\n\x18public_advertised_prefix\x18\x9e\xf7\xc9\x30 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbf\x01\n%WithdrawPublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x90\x01\n\x16WorkloadIdentityConfig\x12\x19\n\x08identity\x18\xbe\xe1\xa1\xbf\x01 \x01(\tH\x00\x88\x01\x01\x12-\n\x1cidentity_certificate_enabled\x18\x98\xbf\xc0\xa3\x01 \x01(\x08H\x01\x88\x01\x01\x42\x0b\n\t_identityB\x1f\n\x1d_identity_certificate_enabled\"\x9f\x02\n\x0bXpnHostList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x32\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32 .google.cloud.compute.v1.Project\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x9a\x01\n\rXpnResourceId\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x01\x88\x01\x01\"Q\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x0f\n\x07PROJECT\x10\xf9\xad\xef\xc2\x01\x12$\n\x1dXPN_RESOURCE_TYPE_UNSPECIFIED\x10\xfa\xad\xa5HB\x05\n\x03_idB\x07\n\x05_type\"\x97\x04\n\x04Zone\x12\"\n\x17\x61vailable_cpu_platforms\x18\x93\xf3\xd9S \x03(\t\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x08\x88\x01\x01\x12\x1c\n\x0csupports_pzs\x18\xee\xf6\x85( \x01(\x08H\t\x88\x01\x01\"4\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0b\n\x04\x44OWN\x10\xa2\xb9\x80\x01\x12\x07\n\x02UP\x10\x9b\x15\x42\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x0c\n\n_self_linkB\t\n\x07_statusB\x0f\n\r_supports_pzs\"\x99\x02\n\x08ZoneList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12/\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1d.google.cloud.compute.v1.Zone\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xcd\x01\n\x14ZoneSetLabelsRequest\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x00\x88\x01\x01\x12M\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x39.google.cloud.compute.v1.ZoneSetLabelsRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x14\n\x12_label_fingerprint\"\xb7\x01\n\x1aZoneSetNestedPolicyRequest\x12\x36\n\x08\x62indings\x18\x8e\xc5\xa4\xc0\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Binding\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x06policy\x18\xb2\xca\xb6+ \x01(\x0b\x32\x1f.google.cloud.compute.v1.PolicyH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_policy\"\xb1\x01\n\x14ZoneSetPolicyRequest\x12\x36\n\x08\x62indings\x18\x8e\xc5\xa4\xc0\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Binding\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x06policy\x18\xb2\xca\xb6+ \x01(\x0b\x32\x1f.google.cloud.compute.v1.PolicyH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_policy2\xb3\x06\n\x10\x41\x63\x63\x65leratorTypes\x12\xd6\x01\n\x0e\x41ggregatedList\x12>.google.cloud.compute.v1.AggregatedListAcceleratorTypesRequest\x1a\x36.google.cloud.compute.v1.AcceleratorTypeAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/acceleratorTypes\x12\xdc\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetAcceleratorTypeRequest\x1a(.google.cloud.compute.v1.AcceleratorType\"w\xda\x41\x1dproject,zone,accelerator_type\x82\xd3\xe4\x93\x02Q\x12O/compute/v1/projects/{project}/zones/{zone}/acceleratorTypes/{accelerator_type}\x12\xbf\x01\n\x04List\x12\x34.google.cloud.compute.v1.ListAcceleratorTypesRequest\x1a,.google.cloud.compute.v1.AcceleratorTypeList\"S\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02>\x12project,zone,disk,disks_add_resource_policies_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02|\"L/compute/v1/projects/{project}/zones/{zone}/disks/{disk}/addResourcePolicies:,disks_add_resource_policies_request_resource\x12\xb5\x01\n\x0e\x41ggregatedList\x12\x33.google.cloud.compute.v1.AggregatedListDisksRequest\x1a+.google.cloud.compute.v1.DiskAggregatedList\"A\xda\x41\x07project\x82\xd3\xe4\x93\x02\x31\x12//compute/v1/projects/{project}/aggregated/disks\x12\x8e\x02\n\nBulkInsert\x12..google.cloud.compute.v1.BulkInsertDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x01\xda\x41/project,zone,bulk_insert_disk_resource_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x62\".google.cloud.compute.v1.ListAssociationsFirewallPolicyRequest\x1a\x41.google.cloud.compute.v1.FirewallPoliciesListAssociationsResponse\"I\xda\x41\x00\x82\xd3\xe4\x93\x02@\x12>/compute/v1/locations/global/firewallPolicies/listAssociations\x12\xe8\x01\n\x04Move\x12\x32.google.cloud.compute.v1.MoveFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x87\x01\xda\x41\x19\x66irewall_policy,parent_id\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02\x46\"D/compute/v1/locations/global/firewallPolicies/{firewall_policy}/move\x12\x8e\x02\n\x05Patch\x12\x33.google.cloud.compute.v1.PatchFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x01\xda\x41(firewall_policy,firewall_policy_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02[2?/compute/v1/locations/global/firewallPolicies/{firewall_policy}:\x18\x66irewall_policy_resource\x12\xaa\x02\n\tPatchRule\x12\x37.google.cloud.compute.v1.PatchRuleFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xbf\x01\xda\x41-firewall_policy,firewall_policy_rule_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02j\"I/compute/v1/locations/global/firewallPolicies/{firewall_policy}/patchRule:\x1d\x66irewall_policy_rule_resource\x12\x85\x02\n\x11RemoveAssociation\x12?.google.cloud.compute.v1.RemoveAssociationFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x8a\x01\xda\x41\x0f\x66irewall_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02S\"Q/compute/v1/locations/global/firewallPolicies/{firewall_policy}/removeAssociation\x12\xf0\x01\n\nRemoveRule\x12\x38.google.cloud.compute.v1.RemoveRuleFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x83\x01\xda\x41\x0f\x66irewall_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02L\"J/compute/v1/locations/global/firewallPolicies/{firewall_policy}/removeRule\x12\xa7\x02\n\x0cSetIamPolicy\x12:.google.cloud.compute.v1.SetIamPolicyFirewallPolicyRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xb9\x01\xda\x41\x38resource,global_organization_set_policy_request_resource\x82\xd3\xe4\x93\x02x\"E/compute/v1/locations/global/firewallPolicies/{resource}/setIamPolicy:/global_organization_set_policy_request_resource\x12\xae\x02\n\x12TestIamPermissions\x12@.google.cloud.compute.v1.TestIamPermissionsFirewallPolicyRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xa3\x01\xda\x41*resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02p\"K/compute/v1/locations/global/firewallPolicies/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x84\r\n\tFirewalls\x12\xc6\x01\n\x06\x44\x65lete\x12..google.cloud.compute.v1.DeleteFirewallRequest\x1a\".google.cloud.compute.v1.Operation\"h\xda\x41\x10project,firewall\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02<*:/compute/v1/projects/{project}/global/firewalls/{firewall}\x12\xac\x01\n\x03Get\x12+.google.cloud.compute.v1.GetFirewallRequest\x1a!.google.cloud.compute.v1.Firewall\"U\xda\x41\x10project,firewall\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/global/firewalls/{firewall}\x12\xd7\x01\n\x06Insert\x12..google.cloud.compute.v1.InsertFirewallRequest\x1a\".google.cloud.compute.v1.Operation\"y\xda\x41\x19project,firewall_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x44\"//compute/v1/projects/{project}/global/firewalls:\x11\x66irewall_resource\x12\x9f\x01\n\x04List\x12-.google.cloud.compute.v1.ListFirewallsRequest\x1a%.google.cloud.compute.v1.FirewallList\"A\xda\x41\x07project\x82\xd3\xe4\x93\x02\x31\x12//compute/v1/projects/{project}/global/firewalls\x12\xea\x01\n\x05Patch\x12-.google.cloud.compute.v1.PatchFirewallRequest\x1a\".google.cloud.compute.v1.Operation\"\x8d\x01\xda\x41\"project,firewall,firewall_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02O2:/compute/v1/projects/{project}/global/firewalls/{firewall}:\x11\x66irewall_resource\x12\xb2\x02\n\x12TestIamPermissions\x12:.google.cloud.compute.v1.TestIamPermissionsFirewallRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xad\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02r\"M/compute/v1/projects/{project}/global/firewalls/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xec\x01\n\x06Update\x12..google.cloud.compute.v1.UpdateFirewallRequest\x1a\".google.cloud.compute.v1.Operation\"\x8d\x01\xda\x41\"project,firewall,firewall_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02O\x1a:/compute/v1/projects/{project}/global/firewalls/{firewall}:\x11\x66irewall_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x99\x11\n\x0f\x46orwardingRules\x12\xd3\x01\n\x0e\x41ggregatedList\x12=.google.cloud.compute.v1.AggregatedListForwardingRulesRequest\x1a\x35.google.cloud.compute.v1.ForwardingRuleAggregatedList\"K\xda\x41\x07project\x82\xd3\xe4\x93\x02;\x12\x39/compute/v1/projects/{project}/aggregated/forwardingRules\x12\xf2\x01\n\x06\x44\x65lete\x12\x34.google.cloud.compute.v1.DeleteForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\x8d\x01\xda\x41\x1eproject,region,forwarding_rule\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S*Q/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}\x12\xdd\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetForwardingRuleRequest\x1a\'.google.cloud.compute.v1.ForwardingRule\"z\xda\x41\x1eproject,region,forwarding_rule\x82\xd3\xe4\x93\x02S\x12Q/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}\x12\x83\x02\n\x06Insert\x12\x34.google.cloud.compute.v1.InsertForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\x9e\x01\xda\x41\'project,region,forwarding_rule_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02[\"?/compute/v1/projects/{project}/regions/{region}/forwardingRules:\x18\x66orwarding_rule_resource\x12\xc2\x01\n\x04List\x12\x33.google.cloud.compute.v1.ListForwardingRulesRequest\x1a+.google.cloud.compute.v1.ForwardingRuleList\"X\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/projects/{project}/regions/{region}/forwardingRules\x12\xa3\x02\n\x05Patch\x12\x33.google.cloud.compute.v1.PatchForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\xc0\x01\xda\x41\x37project,region,forwarding_rule,forwarding_rule_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02m2Q/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}:\x18\x66orwarding_rule_resource\x12\xbb\x02\n\tSetLabels\x12\x37.google.cloud.compute.v1.SetLabelsForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\xd0\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02z\"T/compute/v1/projects/{project}/regions/{region}/forwardingRules/{resource}/setLabels:\"region_set_labels_request_resource\x12\xb7\x02\n\tSetTarget\x12\x37.google.cloud.compute.v1.SetTargetForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\xcc\x01\xda\x41\x38project,region,forwarding_rule,target_reference_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02x\"[/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}/setTarget:\x19target_reference_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xdf\x0e\n\x12\x46utureReservations\x12\xe5\x01\n\x0e\x41ggregatedList\x12@.google.cloud.compute.v1.AggregatedListFutureReservationsRequest\x1a\x41.google.cloud.compute.v1.FutureReservationsAggregatedListResponse\"N\xda\x41\x07project\x82\xd3\xe4\x93\x02>\x12/compute/v1/projects/{project}/zones/{zone}/futureReservations:\x1b\x66uture_reservation_resource\x12\xce\x01\n\x04List\x12\x36.google.cloud.compute.v1.ListFutureReservationsRequest\x1a\x37.google.cloud.compute.v1.FutureReservationsListResponse\"U\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02@\x12>/compute/v1/projects/{project}/zones/{zone}/futureReservations\x12\xaf\x02\n\x06Update\x12\x37.google.cloud.compute.v1.UpdateFutureReservationRequest\x1a\".google.cloud.compute.v1.Operation\"\xc7\x01\xda\x41;project,zone,future_reservation,future_reservation_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02r2S/compute/v1/projects/{project}/zones/{zone}/futureReservations/{future_reservation}:\x1b\x66uture_reservation_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x83\x0e\n\x0fGlobalAddresses\x12\xc9\x01\n\x06\x44\x65lete\x12\x33.google.cloud.compute.v1.DeleteGlobalAddressRequest\x1a\".google.cloud.compute.v1.Operation\"f\xda\x41\x0fproject,address\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02;*9/compute/v1/projects/{project}/global/addresses/{address}\x12\xae\x01\n\x03Get\x12\x30.google.cloud.compute.v1.GetGlobalAddressRequest\x1a .google.cloud.compute.v1.Address\"S\xda\x41\x0fproject,address\x82\xd3\xe4\x93\x02;\x12\x39/compute/v1/projects/{project}/global/addresses/{address}\x12\xda\x01\n\x06Insert\x12\x33.google.cloud.compute.v1.InsertGlobalAddressRequest\x1a\".google.cloud.compute.v1.Operation\"w\xda\x41\x18project,address_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x43\"//compute/v1/projects/{project}/global/addresses:\x10\x61\x64\x64ress_resource\x12\xa4\x01\n\x04List\x12\x33.google.cloud.compute.v1.ListGlobalAddressesRequest\x1a$.google.cloud.compute.v1.AddressList\"A\xda\x41\x07project\x82\xd3\xe4\x93\x02\x31\x12//compute/v1/projects/{project}/global/addresses\x12\x9a\x02\n\x04Move\x12\x31.google.cloud.compute.v1.MoveGlobalAddressRequest\x1a\".google.cloud.compute.v1.Operation\"\xba\x01\xda\x41\x36project,address,global_addresses_move_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02h\">/compute/v1/projects/{project}/global/addresses/{address}/move:&global_addresses_move_request_resource\x12\xa3\x02\n\tSetLabels\x12\x36.google.cloud.compute.v1.SetLabelsGlobalAddressRequest\x1a\".google.cloud.compute.v1.Operation\"\xb9\x01\xda\x41\x33project,resource,global_set_labels_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02j\"D/compute/v1/projects/{project}/global/addresses/{resource}/setLabels:\"global_set_labels_request_resource\x12\xb7\x02\n\x12TestIamPermissions\x12?.google.cloud.compute.v1.TestIamPermissionsGlobalAddressRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xad\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02r\"M/compute/v1/projects/{project}/global/addresses/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xfb\x0e\n\x15GlobalForwardingRules\x12\xe6\x01\n\x06\x44\x65lete\x12:.google.cloud.compute.v1.DeleteGlobalForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"|\xda\x41\x17project,forwarding_rule\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02I*G/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}\x12\xd2\x01\n\x03Get\x12\x37.google.cloud.compute.v1.GetGlobalForwardingRuleRequest\x1a\'.google.cloud.compute.v1.ForwardingRule\"i\xda\x41\x17project,forwarding_rule\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}\x12\xf8\x01\n\x06Insert\x12:.google.cloud.compute.v1.InsertGlobalForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\x8d\x01\xda\x41 project,forwarding_rule_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02Q\"5/compute/v1/projects/{project}/global/forwardingRules:\x18\x66orwarding_rule_resource\x12\xb7\x01\n\x04List\x12\x39.google.cloud.compute.v1.ListGlobalForwardingRulesRequest\x1a+.google.cloud.compute.v1.ForwardingRuleList\"G\xda\x41\x07project\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/global/forwardingRules\x12\x98\x02\n\x05Patch\x12\x39.google.cloud.compute.v1.PatchGlobalForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\xaf\x01\xda\x41\x30project,forwarding_rule,forwarding_rule_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x63\x32G/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}:\x18\x66orwarding_rule_resource\x12\xb0\x02\n\tSetLabels\x12=.google.cloud.compute.v1.SetLabelsGlobalForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\xbf\x01\xda\x41\x33project,resource,global_set_labels_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02p\"J/compute/v1/projects/{project}/global/forwardingRules/{resource}/setLabels:\"global_set_labels_request_resource\x12\xac\x02\n\tSetTarget\x12=.google.cloud.compute.v1.SetTargetGlobalForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\xbb\x01\xda\x41\x31project,forwarding_rule,target_reference_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02n\"Q/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}/setTarget:\x19target_reference_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xac\x12\n\x1bGlobalNetworkEndpointGroups\x12\xbc\x03\n\x16\x41ttachNetworkEndpoints\x12P.google.cloud.compute.v1.AttachNetworkEndpointsGlobalNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x02\xda\x41_project,network_endpoint_group,global_network_endpoint_groups_attach_endpoints_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\xaf\x01\"k/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}/attachNetworkEndpoints:@global_network_endpoint_groups_attach_endpoints_request_resource\x12\x81\x02\n\x06\x44\x65lete\x12@.google.cloud.compute.v1.DeleteGlobalNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\x1eproject,network_endpoint_group\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02V*T/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}\x12\xbc\x03\n\x16\x44\x65tachNetworkEndpoints\x12P.google.cloud.compute.v1.DetachNetworkEndpointsGlobalNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x02\xda\x41_project,network_endpoint_group,global_network_endpoint_groups_detach_endpoints_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\xaf\x01\"k/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}/detachNetworkEndpoints:@global_network_endpoint_groups_detach_endpoints_request_resource\x12\xf2\x01\n\x03Get\x12=.google.cloud.compute.v1.GetGlobalNetworkEndpointGroupRequest\x1a-.google.cloud.compute.v1.NetworkEndpointGroup\"}\xda\x41\x1eproject,network_endpoint_group\x82\xd3\xe4\x93\x02V\x12T/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}\x12\x92\x02\n\x06Insert\x12@.google.cloud.compute.v1.InsertGlobalNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41\'project,network_endpoint_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02^\";/compute/v1/projects/{project}/global/networkEndpointGroups:\x1fnetwork_endpoint_group_resource\x12\xc9\x01\n\x04List\x12?.google.cloud.compute.v1.ListGlobalNetworkEndpointGroupsRequest\x1a\x31.google.cloud.compute.v1.NetworkEndpointGroupList\"M\xda\x41\x07project\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/global/networkEndpointGroups\x12\xc0\x02\n\x14ListNetworkEndpoints\x12O.google.cloud.compute.v1.ListNetworkEndpointsGlobalNetworkEndpointGroupsRequest\x1a\x42.google.cloud.compute.v1.NetworkEndpointGroupsListNetworkEndpoints\"\x92\x01\xda\x41\x1eproject,network_endpoint_group\x82\xd3\xe4\x93\x02k\"i/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}/listNetworkEndpoints\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd0\x08\n\x10GlobalOperations\x12\xca\x01\n\x0e\x41ggregatedList\x12>.google.cloud.compute.v1.AggregatedListGlobalOperationsRequest\x1a\x30.google.cloud.compute.v1.OperationAggregatedList\"F\xda\x41\x07project\x82\xd3\xe4\x93\x02\x36\x12\x34/compute/v1/projects/{project}/aggregated/operations\x12\xd1\x01\n\x06\x44\x65lete\x12\x35.google.cloud.compute.v1.DeleteGlobalOperationRequest\x1a\x36.google.cloud.compute.v1.DeleteGlobalOperationResponse\"X\xda\x41\x11project,operation\x82\xd3\xe4\x93\x02>*\x12.google.cloud.compute.v1.GetGlobalOrganizationOperationRequest\x1a\".google.cloud.compute.v1.Operation\"J\xda\x41\toperation\x90N\x01\x82\xd3\xe4\x93\x02\x35\x12\x33/compute/v1/locations/global/operations/{operation}\x12\xa4\x01\n\x04List\x12@.google.cloud.compute.v1.ListGlobalOrganizationOperationsRequest\x1a&.google.cloud.compute.v1.OperationList\"2\xda\x41\x00\x82\xd3\xe4\x93\x02)\x12\'/compute/v1/locations/global/operations\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd1\x0b\n\x1dGlobalPublicDelegatedPrefixes\x12\x87\x02\n\x06\x44\x65lete\x12\x42.google.cloud.compute.v1.DeleteGlobalPublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\x94\x01\xda\x41\x1fproject,public_delegated_prefix\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02Y*W/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{public_delegated_prefix}\x12\xfa\x01\n\x03Get\x12?.google.cloud.compute.v1.GetGlobalPublicDelegatedPrefixeRequest\x1a..google.cloud.compute.v1.PublicDelegatedPrefix\"\x81\x01\xda\x41\x1fproject,public_delegated_prefix\x82\xd3\xe4\x93\x02Y\x12W/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{public_delegated_prefix}\x12\x98\x02\n\x06Insert\x12\x42.google.cloud.compute.v1.InsertGlobalPublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xa5\x01\xda\x41(project,public_delegated_prefix_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x61\"=/compute/v1/projects/{project}/global/publicDelegatedPrefixes: public_delegated_prefix_resource\x12\xce\x01\n\x04List\x12\x41.google.cloud.compute.v1.ListGlobalPublicDelegatedPrefixesRequest\x1a\x32.google.cloud.compute.v1.PublicDelegatedPrefixList\"O\xda\x41\x07project\x82\xd3\xe4\x93\x02?\x12=/compute/v1/projects/{project}/global/publicDelegatedPrefixes\x12\xc8\x02\n\x05Patch\x12\x41.google.cloud.compute.v1.PatchGlobalPublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xd7\x01\xda\x41@project,public_delegated_prefix,public_delegated_prefix_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02{2W/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{public_delegated_prefix}: public_delegated_prefix_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xbe\x0f\n\x0cHealthChecks\x12\xcb\x01\n\x0e\x41ggregatedList\x12:.google.cloud.compute.v1.AggregatedListHealthChecksRequest\x1a\x33.google.cloud.compute.v1.HealthChecksAggregatedList\"H\xda\x41\x07project\x82\xd3\xe4\x93\x02\x38\x12\x36/compute/v1/projects/{project}/aggregated/healthChecks\x12\xd4\x01\n\x06\x44\x65lete\x12\x31.google.cloud.compute.v1.DeleteHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"s\xda\x41\x14project,health_check\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x43*A/compute/v1/projects/{project}/global/healthChecks/{health_check}\x12\xbd\x01\n\x03Get\x12..google.cloud.compute.v1.GetHealthCheckRequest\x1a$.google.cloud.compute.v1.HealthCheck\"`\xda\x41\x14project,health_check\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/global/healthChecks/{health_check}\x12\xe6\x01\n\x06Insert\x12\x31.google.cloud.compute.v1.InsertHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\x84\x01\xda\x41\x1dproject,health_check_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02K\"2/compute/v1/projects/{project}/global/healthChecks:\x15health_check_resource\x12\xa8\x01\n\x04List\x12\x30.google.cloud.compute.v1.ListHealthChecksRequest\x1a(.google.cloud.compute.v1.HealthCheckList\"D\xda\x41\x07project\x82\xd3\xe4\x93\x02\x34\x12\x32/compute/v1/projects/{project}/global/healthChecks\x12\x80\x02\n\x05Patch\x12\x30.google.cloud.compute.v1.PatchHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\xa0\x01\xda\x41*project,health_check,health_check_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02Z2A/compute/v1/projects/{project}/global/healthChecks/{health_check}:\x15health_check_resource\x12\xb8\x02\n\x12TestIamPermissions\x12=.google.cloud.compute.v1.TestIamPermissionsHealthCheckRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb0\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02u\"P/compute/v1/projects/{project}/global/healthChecks/{resource}/testIamPermissions:!test_permissions_request_resource\x12\x82\x02\n\x06Update\x12\x31.google.cloud.compute.v1.UpdateHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\xa0\x01\xda\x41*project,health_check,health_check_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02Z\x1a\x41/compute/v1/projects/{project}/global/healthChecks/{health_check}:\x15health_check_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x84\x03\n\x10ImageFamilyViews\x12\xc8\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetImageFamilyViewRequest\x1a(.google.cloud.compute.v1.ImageFamilyView\"c\xda\x41\x13project,zone,family\x82\xd3\xe4\x93\x02G\x12\x45/compute/v1/projects/{project}/zones/{zone}/imageFamilyViews/{family}\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xfc\x13\n\x06Images\x12\xba\x01\n\x06\x44\x65lete\x12+.google.cloud.compute.v1.DeleteImageRequest\x1a\".google.cloud.compute.v1.Operation\"_\xda\x41\rproject,image\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x36*4/compute/v1/projects/{project}/global/images/{image}\x12\x84\x02\n\tDeprecate\x12..google.cloud.compute.v1.DeprecateImageRequest\x1a\".google.cloud.compute.v1.Operation\"\xa2\x01\xda\x41)project,image,deprecation_status_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02]\">/compute/v1/projects/{project}/global/images/{image}/deprecate:\x1b\x64\x65precation_status_resource\x12\x9d\x01\n\x03Get\x12(.google.cloud.compute.v1.GetImageRequest\x1a\x1e.google.cloud.compute.v1.Image\"L\xda\x41\rproject,image\x82\xd3\xe4\x93\x02\x36\x12\x34/compute/v1/projects/{project}/global/images/{image}\x12\xba\x01\n\rGetFromFamily\x12\x32.google.cloud.compute.v1.GetFromFamilyImageRequest\x1a\x1e.google.cloud.compute.v1.Image\"U\xda\x41\x0eproject,family\x82\xd3\xe4\x93\x02>\x12\",/compute/v1/projects/{project}/global/images:\x0eimage_resource\x12\x96\x01\n\x04List\x12*.google.cloud.compute.v1.ListImagesRequest\x1a\".google.cloud.compute.v1.ImageList\">\xda\x41\x07project\x82\xd3\xe4\x93\x02.\x12,/compute/v1/projects/{project}/global/images\x12\xd7\x01\n\x05Patch\x12*.google.cloud.compute.v1.PatchImageRequest\x1a\".google.cloud.compute.v1.Operation\"~\xda\x41\x1cproject,image,image_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x46\x32\x34/compute/v1/projects/{project}/global/images/{image}:\x0eimage_resource\x12\x8b\x02\n\x0cSetIamPolicy\x12\x31.google.cloud.compute.v1.SetIamPolicyImageRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xa6\x01\xda\x41\x33project,resource,global_set_policy_request_resource\x82\xd3\xe4\x93\x02j\"D/compute/v1/projects/{project}/global/images/{resource}/setIamPolicy:\"global_set_policy_request_resource\x12\x98\x02\n\tSetLabels\x12..google.cloud.compute.v1.SetLabelsImageRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x01\xda\x41\x33project,resource,global_set_labels_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02g\"A/compute/v1/projects/{project}/global/images/{resource}/setLabels:\"global_set_labels_request_resource\x12\xac\x02\n\x12TestIamPermissions\x12\x37.google.cloud.compute.v1.TestIamPermissionsImageRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xaa\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02o\"J/compute/v1/projects/{project}/global/images/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xa2\x0e\n\"InstanceGroupManagerResizeRequests\x12\xc9\x02\n\x06\x43\x61ncel\x12G.google.cloud.compute.v1.CancelInstanceGroupManagerResizeRequestRequest\x1a\".google.cloud.compute.v1.Operation\"\xd1\x01\xda\x41\x32project,zone,instance_group_manager,resize_request\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x84\x01\"\x81\x01/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resizeRequests/{resize_request}/cancel\x12\xc0\x02\n\x06\x44\x65lete\x12G.google.cloud.compute.v1.DeleteInstanceGroupManagerResizeRequestRequest\x1a\".google.cloud.compute.v1.Operation\"\xc8\x01\xda\x41\x32project,zone,instance_group_manager,resize_request\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02|*z/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resizeRequests/{resize_request}\x12\xc1\x02\n\x03Get\x12\x44.google.cloud.compute.v1.GetInstanceGroupManagerResizeRequestRequest\x1a:.google.cloud.compute.v1.InstanceGroupManagerResizeRequest\"\xb7\x01\xda\x41\x32project,zone,instance_group_manager,resize_request\x82\xd3\xe4\x93\x02|\x12z/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resizeRequests/{resize_request}\x12\x80\x03\n\x06Insert\x12G.google.cloud.compute.v1.InsertInstanceGroupManagerResizeRequestRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x02\xda\x41Rproject,zone,instance_group_manager,instance_group_manager_resize_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x9b\x01\"i/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resizeRequests:.instance_group_manager_resize_request_resource\x12\xb1\x02\n\x04List\x12\x46.google.cloud.compute.v1.ListInstanceGroupManagerResizeRequestsRequest\x1aG.google.cloud.compute.v1.InstanceGroupManagerResizeRequestsListResponse\"\x97\x01\xda\x41#project,zone,instance_group_manager\x82\xd3\xe4\x93\x02k\x12i/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resizeRequests\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd5\x45\n\x15InstanceGroupManagers\x12\xa1\x03\n\x10\x41\x62\x61ndonInstances\x12\x44.google.cloud.compute.v1.AbandonInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xa2\x02\xda\x41^project,zone,instance_group_manager,instance_group_managers_abandon_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa9\x01\"k/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/abandonInstances::instance_group_managers_abandon_instances_request_resource\x12\xe5\x01\n\x0e\x41ggregatedList\x12\x43.google.cloud.compute.v1.AggregatedListInstanceGroupManagersRequest\x1a;.google.cloud.compute.v1.InstanceGroupManagerAggregatedList\"Q\xda\x41\x07project\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/projects/{project}/aggregated/instanceGroupManagers\x12\xae\x03\n\x17\x41pplyUpdatesToInstances\x12K.google.cloud.compute.v1.ApplyUpdatesToInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x02\xda\x41Zproject,zone,instance_group_manager,instance_group_managers_apply_updates_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xac\x01\"r/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/applyUpdatesToInstances:6instance_group_managers_apply_updates_request_resource\x12\x9c\x03\n\x0f\x43reateInstances\x12\x43.google.cloud.compute.v1.CreateInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x02\xda\x41]project,zone,instance_group_manager,instance_group_managers_create_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa7\x01\"j/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/createInstances:9instance_group_managers_create_instances_request_resource\x12\x84\x02\n\x06\x44\x65lete\x12:.google.cloud.compute.v1.DeleteInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x99\x01\xda\x41#project,zone,instance_group_manager\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\\*Z/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}\x12\x9c\x03\n\x0f\x44\x65leteInstances\x12\x43.google.cloud.compute.v1.DeleteInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x02\xda\x41]project,zone,instance_group_manager,instance_group_managers_delete_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa7\x01\"j/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/deleteInstances:9instance_group_managers_delete_instances_request_resource\x12\xc5\x03\n\x18\x44\x65letePerInstanceConfigs\x12L.google.cloud.compute.v1.DeletePerInstanceConfigsInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x02\xda\x41\x64project,zone,instance_group_manager,instance_group_managers_delete_per_instance_configs_req_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xb7\x01\"s/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/deletePerInstanceConfigs:@instance_group_managers_delete_per_instance_configs_req_resource\x12\xf8\x01\n\x03Get\x12\x37.google.cloud.compute.v1.GetInstanceGroupManagerRequest\x1a-.google.cloud.compute.v1.InstanceGroupManager\"\x88\x01\xda\x41#project,zone,instance_group_manager\x82\xd3\xe4\x93\x02\\\x12Z/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}\x12\x95\x02\n\x06Insert\x12:.google.cloud.compute.v1.InsertInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xaa\x01\xda\x41,project,zone,instance_group_manager_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x64\"A/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers:\x1finstance_group_manager_resource\x12\xce\x01\n\x04List\x12\x39.google.cloud.compute.v1.ListInstanceGroupManagersRequest\x1a\x31.google.cloud.compute.v1.InstanceGroupManagerList\"X\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers\x12\xa5\x02\n\nListErrors\x12?.google.cloud.compute.v1.ListErrorsInstanceGroupManagersRequest\x1a@.google.cloud.compute.v1.InstanceGroupManagersListErrorsResponse\"\x93\x01\xda\x41#project,zone,instance_group_manager\x82\xd3\xe4\x93\x02g\x12\x65/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/listErrors\x12\xcd\x02\n\x14ListManagedInstances\x12I.google.cloud.compute.v1.ListManagedInstancesInstanceGroupManagersRequest\x1aJ.google.cloud.compute.v1.InstanceGroupManagersListManagedInstancesResponse\"\x9d\x01\xda\x41#project,zone,instance_group_manager\x82\xd3\xe4\x93\x02q\"o/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/listManagedInstances\x12\xd1\x02\n\x16ListPerInstanceConfigs\x12K.google.cloud.compute.v1.ListPerInstanceConfigsInstanceGroupManagersRequest\x1aH.google.cloud.compute.v1.InstanceGroupManagersListPerInstanceConfigsResp\"\x9f\x01\xda\x41#project,zone,instance_group_manager\x82\xd3\xe4\x93\x02s\"q/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/listPerInstanceConfigs\x12\xc3\x02\n\x05Patch\x12\x39.google.cloud.compute.v1.PatchInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xda\x01\xda\x41\x43project,zone,instance_group_manager,instance_group_manager_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02}2Z/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}:\x1finstance_group_manager_resource\x12\xc0\x03\n\x17PatchPerInstanceConfigs\x12K.google.cloud.compute.v1.PatchPerInstanceConfigsInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xb3\x02\xda\x41\x63project,zone,instance_group_manager,instance_group_managers_patch_per_instance_configs_req_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xb5\x01\"r/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/patchPerInstanceConfigs:?instance_group_managers_patch_per_instance_configs_req_resource\x12\xa6\x03\n\x11RecreateInstances\x12\x45.google.cloud.compute.v1.RecreateInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xa5\x02\xda\x41_project,zone,instance_group_manager,instance_group_managers_recreate_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xab\x01\"l/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/recreateInstances:;instance_group_managers_recreate_instances_request_resource\x12\x90\x02\n\x06Resize\x12:.google.cloud.compute.v1.ResizeInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xa5\x01\xda\x41(project,zone,instance_group_manager,size\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x63\"a/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resize\x12\x9c\x03\n\x0fResumeInstances\x12\x43.google.cloud.compute.v1.ResumeInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x02\xda\x41]project,zone,instance_group_manager,instance_group_managers_resume_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa7\x01\"j/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resumeInstances:9instance_group_managers_resume_instances_request_resource\x12\xb2\x03\n\x13SetInstanceTemplate\x12G.google.cloud.compute.v1.SetInstanceTemplateInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xad\x02\xda\x41\x62project,zone,instance_group_manager,instance_group_managers_set_instance_template_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xb0\x01\"n/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/setInstanceTemplate:>instance_group_managers_set_instance_template_request_resource\x12\x99\x03\n\x0eSetTargetPools\x12\x42.google.cloud.compute.v1.SetTargetPoolsInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x9e\x02\xda\x41]project,zone,instance_group_manager,instance_group_managers_set_target_pools_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa6\x01\"i/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/setTargetPools:9instance_group_managers_set_target_pools_request_resource\x12\x97\x03\n\x0eStartInstances\x12\x42.google.cloud.compute.v1.StartInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x9c\x02\xda\x41\\project,zone,instance_group_manager,instance_group_managers_start_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa5\x01\"i/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/startInstances:8instance_group_managers_start_instances_request_resource\x12\x92\x03\n\rStopInstances\x12\x41.google.cloud.compute.v1.StopInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x99\x02\xda\x41[project,zone,instance_group_manager,instance_group_managers_stop_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa3\x01\"h/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/stopInstances:7instance_group_managers_stop_instances_request_resource\x12\xa1\x03\n\x10SuspendInstances\x12\x44.google.cloud.compute.v1.SuspendInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xa2\x02\xda\x41^project,zone,instance_group_manager,instance_group_managers_suspend_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa9\x01\"k/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/suspendInstances::instance_group_managers_suspend_instances_request_resource\x12\xc5\x03\n\x18UpdatePerInstanceConfigs\x12L.google.cloud.compute.v1.UpdatePerInstanceConfigsInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x02\xda\x41\x64project,zone,instance_group_manager,instance_group_managers_update_per_instance_configs_req_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xb7\x01\"s/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/updatePerInstanceConfigs:@instance_group_managers_update_per_instance_configs_req_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xba\x17\n\x0eInstanceGroups\x12\xdf\x02\n\x0c\x41\x64\x64Instances\x12\x39.google.cloud.compute.v1.AddInstancesInstanceGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xef\x01\xda\x41Jproject,zone,instance_group,instance_groups_add_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x8a\x01\"X/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/addInstances:.instance_groups_add_instances_request_resource\x12\xd0\x01\n\x0e\x41ggregatedList\x12<.google.cloud.compute.v1.AggregatedListInstanceGroupsRequest\x1a\x34.google.cloud.compute.v1.InstanceGroupAggregatedList\"J\xda\x41\x07project\x82\xd3\xe4\x93\x02:\x12\x38/compute/v1/projects/{project}/aggregated/instanceGroups\x12\xe6\x01\n\x06\x44\x65lete\x12\x33.google.cloud.compute.v1.DeleteInstanceGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x82\x01\xda\x41\x1bproject,zone,instance_group\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02M*K/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}\x12\xd2\x01\n\x03Get\x12\x30.google.cloud.compute.v1.GetInstanceGroupRequest\x1a&.google.cloud.compute.v1.InstanceGroup\"q\xda\x41\x1bproject,zone,instance_group\x82\xd3\xe4\x93\x02M\x12K/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}\x12\xf7\x01\n\x06Insert\x12\x33.google.cloud.compute.v1.InsertInstanceGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x93\x01\xda\x41$project,zone,instance_group_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02U\":/compute/v1/projects/{project}/zones/{zone}/instanceGroups:\x17instance_group_resource\x12\xb9\x01\n\x04List\x12\x32.google.cloud.compute.v1.ListInstanceGroupsRequest\x1a*.google.cloud.compute.v1.InstanceGroupList\"Q\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/zones/{zone}/instanceGroups\x12\xe6\x02\n\rListInstances\x12;.google.cloud.compute.v1.ListInstancesInstanceGroupsRequest\x1a\x34.google.cloud.compute.v1.InstanceGroupsListInstances\"\xe1\x01\xda\x41Kproject,zone,instance_group,instance_groups_list_instances_request_resource\x82\xd3\xe4\x93\x02\x8c\x01\"Y/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/listInstances:/instance_groups_list_instances_request_resource\x12\xee\x02\n\x0fRemoveInstances\x12<.google.cloud.compute.v1.RemoveInstancesInstanceGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xf8\x01\xda\x41Mproject,zone,instance_group,instance_groups_remove_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x90\x01\"[/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/removeInstances:1instance_groups_remove_instances_request_resource\x12\xe6\x02\n\rSetNamedPorts\x12:.google.cloud.compute.v1.SetNamedPortsInstanceGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xf4\x01\xda\x41Lproject,zone,instance_group,instance_groups_set_named_ports_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x8d\x01\"Y/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/setNamedPorts:0instance_groups_set_named_ports_request_resource\x12\xc7\x02\n\x12TestIamPermissions\x12?.google.cloud.compute.v1.TestIamPermissionsInstanceGroupRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xbd\x01\xda\x41\x37project,zone,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02}\"X/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xcb\x04\n\x17InstanceSettingsService\x12\xb9\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetInstanceSettingRequest\x1a).google.cloud.compute.v1.InstanceSettings\"S\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02>\x12project,zone,instance,network_interface,access_config_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02j\"P/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addAccessConfig:\x16\x61\x63\x63\x65ss_config_resource\x12\xb5\x02\n\x13\x41\x64\x64NetworkInterface\x12;.google.cloud.compute.v1.AddNetworkInterfaceInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xbc\x01\xda\x41\x30project,zone,instance,network_interface_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02r\"T/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addNetworkInterface:\x1anetwork_interface_resource\x12\xe2\x02\n\x13\x41\x64\x64ResourcePolicies\x12;.google.cloud.compute.v1.AddResourcePoliciesInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe9\x01\xda\x41\x46project,zone,instance,instances_add_resource_policies_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x88\x01\"T/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addResourcePolicies:0instances_add_resource_policies_request_resource\x12\xc1\x01\n\x0e\x41ggregatedList\x12\x37.google.cloud.compute.v1.AggregatedListInstancesRequest\x1a/.google.cloud.compute.v1.InstanceAggregatedList\"E\xda\x41\x07project\x82\xd3\xe4\x93\x02\x35\x12\x33/compute/v1/projects/{project}/aggregated/instances\x12\x92\x02\n\nAttachDisk\x12\x32.google.cloud.compute.v1.AttachDiskInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x01\xda\x41,project,zone,instance,attached_disk_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x65\"K/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/attachDisk:\x16\x61ttached_disk_resource\x12\x9e\x02\n\nBulkInsert\x12\x32.google.cloud.compute.v1.BulkInsertInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xb7\x01\xda\x41\x33project,zone,bulk_insert_instance_resource_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02j\"@/compute/v1/projects/{project}/zones/{zone}/instances/bulkInsert:&bulk_insert_instance_resource_resource\x12\xcf\x01\n\x06\x44\x65lete\x12..google.cloud.compute.v1.DeleteInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"q\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x42*@/compute/v1/projects/{project}/zones/{zone}/instances/{instance}\x12\x9b\x02\n\x12\x44\x65leteAccessConfig\x12:.google.cloud.compute.v1.DeleteAccessConfigInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xa4\x01\xda\x41\x35project,zone,instance,access_config,network_interface\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02U\"S/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/deleteAccessConfig\x12\x9e\x02\n\x16\x44\x65leteNetworkInterface\x12>.google.cloud.compute.v1.DeleteNetworkInterfaceInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x01\xda\x41,project,zone,instance,network_interface_name\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02Y\"W/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/deleteNetworkInterface\x12\xef\x01\n\nDetachDisk\x12\x32.google.cloud.compute.v1.DetachDiskInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x01\xda\x41!project,zone,instance,device_name\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02M\"K/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/detachDisk\x12\xb7\x01\n\x03Get\x12+.google.cloud.compute.v1.GetInstanceRequest\x1a!.google.cloud.compute.v1.Instance\"`\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/zones/{zone}/instances/{instance}\x12\xa2\x02\n\x15GetEffectiveFirewalls\x12=.google.cloud.compute.v1.GetEffectiveFirewallsInstanceRequest\x1a?.google.cloud.compute.v1.InstancesGetEffectiveFirewallsResponse\"\x88\x01\xda\x41\'project,zone,instance,network_interface\x82\xd3\xe4\x93\x02X\x12V/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getEffectiveFirewalls\x12\xef\x01\n\x12GetGuestAttributes\x12:.google.cloud.compute.v1.GetGuestAttributesInstanceRequest\x1a(.google.cloud.compute.v1.GuestAttributes\"s\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02U\x12S/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getGuestAttributes\x12\xd4\x01\n\x0cGetIamPolicy\x12\x34.google.cloud.compute.v1.GetIamPolicyInstanceRequest\x1a\x1f.google.cloud.compute.v1.Policy\"m\xda\x41\x15project,zone,resource\x82\xd3\xe4\x93\x02O\x12M/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/getIamPolicy\x12\xd8\x01\n\rGetScreenshot\x12\x35.google.cloud.compute.v1.GetScreenshotInstanceRequest\x1a#.google.cloud.compute.v1.Screenshot\"k\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02M\x12K/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/screenshot\x12\xea\x01\n\x13GetSerialPortOutput\x12;.google.cloud.compute.v1.GetSerialPortOutputInstanceRequest\x1a).google.cloud.compute.v1.SerialPortOutput\"k\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02M\x12K/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/serialPort\x12\x93\x02\n\x1bGetShieldedInstanceIdentity\x12\x43.google.cloud.compute.v1.GetShieldedInstanceIdentityInstanceRequest\x1a\x31.google.cloud.compute.v1.ShieldedInstanceIdentity\"|\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02^\x12\\/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getShieldedInstanceIdentity\x12\xe1\x01\n\x06Insert\x12..google.cloud.compute.v1.InsertInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x82\x01\xda\x41\x1eproject,zone,instance_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02J\"5/compute/v1/projects/{project}/zones/{zone}/instances:\x11instance_resource\x12\xaa\x01\n\x04List\x12-.google.cloud.compute.v1.ListInstancesRequest\x1a%.google.cloud.compute.v1.InstanceList\"L\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/zones/{zone}/instances\x12\xe3\x01\n\rListReferrers\x12\x36.google.cloud.compute.v1.ListReferrersInstancesRequest\x1a..google.cloud.compute.v1.InstanceListReferrers\"j\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02L\x12J/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/referrers\x12\xfb\x01\n\x12PerformMaintenance\x12:.google.cloud.compute.v1.PerformMaintenanceInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x84\x01\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02U\"S/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/performMaintenance\x12\xf1\x02\n\x16RemoveResourcePolicies\x12>.google.cloud.compute.v1.RemoveResourcePoliciesInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xf2\x01\xda\x41Iproject,zone,instance,instances_remove_resource_policies_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x8e\x01\"W/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/removeResourcePolicies:3instances_remove_resource_policies_request_resource\x12\xdf\x02\n\x12ReportHostAsFaulty\x12:.google.cloud.compute.v1.ReportHostAsFaultyInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe8\x01\xda\x41\x46project,zone,instance,instances_report_host_as_faulty_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x87\x01\"S/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/reportHostAsFaulty:0instances_report_host_as_faulty_request_resource\x12\xd3\x01\n\x05Reset\x12-.google.cloud.compute.v1.ResetInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"w\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02H\"F/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/reset\x12\xd6\x01\n\x06Resume\x12..google.cloud.compute.v1.ResumeInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"x\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02I\"G/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/resume\x12\x96\x02\n\x17SendDiagnosticInterrupt\x12?.google.cloud.compute.v1.SendDiagnosticInterruptInstanceRequest\x1a@.google.cloud.compute.v1.SendDiagnosticInterruptInstanceResponse\"x\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02Z\"X/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/sendDiagnosticInterrupt\x12\x84\x02\n\x15SetDeletionProtection\x12=.google.cloud.compute.v1.SetDeletionProtectionInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x87\x01\xda\x41\x15project,zone,resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02X\"V/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/setDeletionProtection\x12\x90\x02\n\x11SetDiskAutoDelete\x12\x39.google.cloud.compute.v1.SetDiskAutoDeleteInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x9b\x01\xda\x41-project,zone,instance,auto_delete,device_name\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02T\"R/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete\x12\x98\x02\n\x0cSetIamPolicy\x12\x34.google.cloud.compute.v1.SetIamPolicyInstanceRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xb0\x01\xda\x41\x36project,zone,resource,zone_set_policy_request_resource\x82\xd3\xe4\x93\x02q\"M/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/setIamPolicy: zone_set_policy_request_resource\x12\xad\x02\n\tSetLabels\x12\x31.google.cloud.compute.v1.SetLabelsInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xc8\x01\xda\x41;project,zone,instance,instances_set_labels_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02s\"J/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setLabels:%instances_set_labels_request_resource\x12\xe2\x02\n\x13SetMachineResources\x12;.google.cloud.compute.v1.SetMachineResourcesInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe9\x01\xda\x41\x46project,zone,instance,instances_set_machine_resources_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x88\x01\"T/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMachineResources:0instances_set_machine_resources_request_resource\x12\xc8\x02\n\x0eSetMachineType\x12\x36.google.cloud.compute.v1.SetMachineTypeInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xd9\x01\xda\x41\x41project,zone,instance,instances_set_machine_type_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02~\"O/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMachineType:+instances_set_machine_type_request_resource\x12\x8b\x02\n\x0bSetMetadata\x12\x33.google.cloud.compute.v1.SetMetadataInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xa2\x01\xda\x41\'project,zone,instance,metadata_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x61\"L/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMetadata:\x11metadata_resource\x12\xda\x02\n\x11SetMinCpuPlatform\x12\x39.google.cloud.compute.v1.SetMinCpuPlatformInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe5\x01\xda\x41\x45project,zone,instance,instances_set_min_cpu_platform_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x85\x01\"R/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform:/instances_set_min_cpu_platform_request_resource\x12\xa3\x02\n\x07SetName\x12/.google.cloud.compute.v1.SetNameInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xc2\x01\xda\x41\x39project,zone,instance,instances_set_name_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02o\"H/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setName:#instances_set_name_request_resource\x12\x95\x02\n\rSetScheduling\x12\x35.google.cloud.compute.v1.SetSchedulingInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xa8\x01\xda\x41)project,zone,instance,scheduling_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x65\"N/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setScheduling:\x13scheduling_resource\x12\xd8\x02\n\x11SetSecurityPolicy\x12\x39.google.cloud.compute.v1.SetSecurityPolicyInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe3\x01\xda\x41\x44project,zone,instance,instances_set_security_policy_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x84\x01\"R/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setSecurityPolicy:.instances_set_security_policy_request_resource\x12\xd8\x02\n\x11SetServiceAccount\x12\x39.google.cloud.compute.v1.SetServiceAccountInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe3\x01\xda\x41\x44project,zone,instance,instances_set_service_account_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x84\x01\"R/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setServiceAccount:.instances_set_service_account_request_resource\x12\x85\x03\n\"SetShieldedInstanceIntegrityPolicy\x12J.google.cloud.compute.v1.SetShieldedInstanceIntegrityPolicyInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xee\x01\xda\x41\x41project,zone,instance,shielded_instance_integrity_policy_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x92\x01\x32\x63/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setShieldedInstanceIntegrityPolicy:+shielded_instance_integrity_policy_resource\x12\xf7\x01\n\x07SetTags\x12/.google.cloud.compute.v1.SetTagsInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x96\x01\xda\x41#project,zone,instance,tags_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02Y\"H/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setTags:\rtags_resource\x12\x8d\x02\n\x18SimulateMaintenanceEvent\x12@.google.cloud.compute.v1.SimulateMaintenanceEventInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x8a\x01\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02[\"Y/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent\x12\xd3\x01\n\x05Start\x12-.google.cloud.compute.v1.StartInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"w\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02H\"F/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/start\x12\xf3\x02\n\x16StartWithEncryptionKey\x12>.google.cloud.compute.v1.StartWithEncryptionKeyInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xf4\x01\xda\x41Jproject,zone,instance,instances_start_with_encryption_key_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x8f\x01\"W/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey:4instances_start_with_encryption_key_request_resource\x12\xd0\x01\n\x04Stop\x12,.google.cloud.compute.v1.StopInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"v\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02G\"E/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/stop\x12\xd9\x01\n\x07Suspend\x12/.google.cloud.compute.v1.SuspendInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"y\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02J\"H/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/suspend\x12\xbd\x02\n\x12TestIamPermissions\x12:.google.cloud.compute.v1.TestIamPermissionsInstanceRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb8\x01\xda\x41\x37project,zone,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02x\"S/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xf5\x01\n\x06Update\x12..google.cloud.compute.v1.UpdateInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x96\x01\xda\x41\'project,zone,instance,instance_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02U\x1a@/compute/v1/projects/{project}/zones/{zone}/instances/{instance}:\x11instance_resource\x12\xbc\x02\n\x12UpdateAccessConfig\x12:.google.cloud.compute.v1.UpdateAccessConfigInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xc5\x01\xda\x41>project,zone,instance,network_interface,access_config_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02m\"S/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateAccessConfig:\x16\x61\x63\x63\x65ss_config_resource\x12\xaf\x02\n\x13UpdateDisplayDevice\x12;.google.cloud.compute.v1.UpdateDisplayDeviceInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x01\xda\x41-project,zone,instance,display_device_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02o2T/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateDisplayDevice:\x17\x64isplay_device_resource\x12\xd0\x02\n\x16UpdateNetworkInterface\x12>.google.cloud.compute.v1.UpdateNetworkInterfaceInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xd1\x01\xda\x41\x42project,zone,instance,network_interface,network_interface_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02u2W/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateNetworkInterface:\x1anetwork_interface_resource\x12\xdf\x02\n\x1cUpdateShieldedInstanceConfig\x12\x44.google.cloud.compute.v1.UpdateShieldedInstanceConfigInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xd4\x01\xda\x41\x37project,zone,instance,shielded_instance_config_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x82\x01\x32]/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateShieldedInstanceConfig:!shielded_instance_config_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x83\x13\n\x10InstantSnapshots\x12\xd6\x01\n\x0e\x41ggregatedList\x12>.google.cloud.compute.v1.AggregatedListInstantSnapshotsRequest\x1a\x36.google.cloud.compute.v1.InstantSnapshotAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/instantSnapshots\x12\xee\x01\n\x06\x44\x65lete\x12\x35.google.cloud.compute.v1.DeleteInstantSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x01\xda\x41\x1dproject,zone,instant_snapshot\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02Q*O/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{instant_snapshot}\x12\xdc\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetInstantSnapshotRequest\x1a(.google.cloud.compute.v1.InstantSnapshot\"w\xda\x41\x1dproject,zone,instant_snapshot\x82\xd3\xe4\x93\x02Q\x12O/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{instant_snapshot}\x12\xe2\x01\n\x0cGetIamPolicy\x12;.google.cloud.compute.v1.GetIamPolicyInstantSnapshotRequest\x1a\x1f.google.cloud.compute.v1.Policy\"t\xda\x41\x15project,zone,resource\x82\xd3\xe4\x93\x02V\x12T/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy\x12\xff\x01\n\x06Insert\x12\x35.google.cloud.compute.v1.InsertInstantSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\x99\x01\xda\x41&project,zone,instant_snapshot_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02Y\"\x12.google.cloud.compute.v1.GetInterconnectAttachmentGroupRequest\x1a\x34.google.cloud.compute.v1.InterconnectAttachmentGroup\"\x92\x01\xda\x41%project,interconnect_attachment_group\x82\xd3\xe4\x93\x02\x64\x12\x62/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnect_attachment_group}\x12\xef\x01\n\x0cGetIamPolicy\x12G.google.cloud.compute.v1.GetIamPolicyInterconnectAttachmentGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"u\xda\x41\x10project,resource\x82\xd3\xe4\x93\x02\\\x12Z/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/getIamPolicy\x12\xe4\x02\n\x14GetOperationalStatus\x12O.google.cloud.compute.v1.GetOperationalStatusInterconnectAttachmentGroupRequest\x1aQ.google.cloud.compute.v1.InterconnectAttachmentGroupsGetOperationalStatusResponse\"\xa7\x01\xda\x41%project,interconnect_attachment_group\x82\xd3\xe4\x93\x02y\x12w/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnect_attachment_group}/getOperationalStatus\x12\xa8\x02\n\x06Insert\x12\x41.google.cloud.compute.v1.InsertInterconnectAttachmentGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x01\xda\x41.project,interconnect_attachment_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02l\"B/compute/v1/projects/{project}/global/interconnectAttachmentGroups:&interconnect_attachment_group_resource\x12\xe1\x01\n\x04List\x12@.google.cloud.compute.v1.ListInterconnectAttachmentGroupsRequest\x1a\x41.google.cloud.compute.v1.InterconnectAttachmentGroupsListResponse\"T\xda\x41\x07project\x82\xd3\xe4\x93\x02\x44\x12\x42/compute/v1/projects/{project}/global/interconnectAttachmentGroups\x12\xe5\x02\n\x05Patch\x12@.google.cloud.compute.v1.PatchInterconnectAttachmentGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xf5\x01\xda\x41Lproject,interconnect_attachment_group,interconnect_attachment_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x8c\x01\x32\x62/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnect_attachment_group}:&interconnect_attachment_group_resource\x12\xb8\x02\n\x0cSetIamPolicy\x12G.google.cloud.compute.v1.SetIamPolicyInterconnectAttachmentGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xbd\x01\xda\x41\x33project,resource,global_set_policy_request_resource\x82\xd3\xe4\x93\x02\x80\x01\"Z/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/setIamPolicy:\"global_set_policy_request_resource\x12\xd9\x02\n\x12TestIamPermissions\x12M.google.cloud.compute.v1.TestIamPermissionsInterconnectAttachmentGroupRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc1\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x85\x01\"`/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xc2\x10\n\x17InterconnectAttachments\x12\xeb\x01\n\x0e\x41ggregatedList\x12\x45.google.cloud.compute.v1.AggregatedListInterconnectAttachmentsRequest\x1a=.google.cloud.compute.v1.InterconnectAttachmentAggregatedList\"S\xda\x41\x07project\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/aggregated/interconnectAttachments\x12\x92\x02\n\x06\x44\x65lete\x12<.google.cloud.compute.v1.DeleteInterconnectAttachmentRequest\x1a\".google.cloud.compute.v1.Operation\"\xa5\x01\xda\x41&project,region,interconnect_attachment\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x63*a/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnect_attachment}\x12\x86\x02\n\x03Get\x12\x39.google.cloud.compute.v1.GetInterconnectAttachmentRequest\x1a/.google.cloud.compute.v1.InterconnectAttachment\"\x92\x01\xda\x41&project,region,interconnect_attachment\x82\xd3\xe4\x93\x02\x63\x12\x61/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnect_attachment}\x12\xa3\x02\n\x06Insert\x12<.google.cloud.compute.v1.InsertInterconnectAttachmentRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x01\xda\x41/project,region,interconnect_attachment_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02k\"G/compute/v1/projects/{project}/regions/{region}/interconnectAttachments: interconnect_attachment_resource\x12\xda\x01\n\x04List\x12;.google.cloud.compute.v1.ListInterconnectAttachmentsRequest\x1a\x33.google.cloud.compute.v1.InterconnectAttachmentList\"`\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/regions/{region}/interconnectAttachments\x12\xd4\x02\n\x05Patch\x12;.google.cloud.compute.v1.PatchInterconnectAttachmentRequest\x1a\".google.cloud.compute.v1.Operation\"\xe9\x01\xda\x41Gproject,region,interconnect_attachment,interconnect_attachment_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x85\x01\x32\x61/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnect_attachment}: interconnect_attachment_resource\x12\xcc\x02\n\tSetLabels\x12?.google.cloud.compute.v1.SetLabelsInterconnectAttachmentRequest\x1a\".google.cloud.compute.v1.Operation\"\xd9\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x82\x01\"\\/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{resource}/setLabels:\"region_set_labels_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb8\x16\n\x12InterconnectGroups\x12\xf3\x02\n\rCreateMembers\x12>.google.cloud.compute.v1.CreateMembersInterconnectGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xfd\x01\xda\x41Nproject,interconnect_group,interconnect_groups_create_members_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x92\x01\"[/compute/v1/projects/{project}/global/interconnectGroups/{interconnect_group}/createMembers:3interconnect_groups_create_members_request_resource\x12\xed\x01\n\x06\x44\x65lete\x12\x37.google.cloud.compute.v1.DeleteInterconnectGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x85\x01\xda\x41\x1aproject,interconnect_group\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02O*M/compute/v1/projects/{project}/global/interconnectGroups/{interconnect_group}\x12\xdb\x01\n\x03Get\x12\x34.google.cloud.compute.v1.GetInterconnectGroupRequest\x1a*.google.cloud.compute.v1.InterconnectGroup\"r\xda\x41\x1aproject,interconnect_group\x82\xd3\xe4\x93\x02O\x12M/compute/v1/projects/{project}/global/interconnectGroups/{interconnect_group}\x12\xdb\x01\n\x0cGetIamPolicy\x12=.google.cloud.compute.v1.GetIamPolicyInterconnectGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"k\xda\x41\x10project,resource\x82\xd3\xe4\x93\x02R\x12P/compute/v1/projects/{project}/global/interconnectGroups/{resource}/getIamPolicy\x12\xb0\x02\n\x14GetOperationalStatus\x12\x45.google.cloud.compute.v1.GetOperationalStatusInterconnectGroupRequest\x1aG.google.cloud.compute.v1.InterconnectGroupsGetOperationalStatusResponse\"\x87\x01\xda\x41\x1aproject,interconnect_group\x82\xd3\xe4\x93\x02\x64\x12\x62/compute/v1/projects/{project}/global/interconnectGroups/{interconnect_group}/getOperationalStatus\x12\xfe\x01\n\x06Insert\x12\x37.google.cloud.compute.v1.InsertInterconnectGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x96\x01\xda\x41#project,interconnect_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02W\"8/compute/v1/projects/{project}/global/interconnectGroups:\x1binterconnect_group_resource\x12\xc3\x01\n\x04List\x12\x36.google.cloud.compute.v1.ListInterconnectGroupsRequest\x1a\x37.google.cloud.compute.v1.InterconnectGroupsListResponse\"J\xda\x41\x07project\x82\xd3\xe4\x93\x02:\x12\x38/compute/v1/projects/{project}/global/interconnectGroups\x12\xa4\x02\n\x05Patch\x12\x36.google.cloud.compute.v1.PatchInterconnectGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xbe\x01\xda\x41\x36project,interconnect_group,interconnect_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02l2M/compute/v1/projects/{project}/global/interconnectGroups/{interconnect_group}:\x1binterconnect_group_resource\x12\xa3\x02\n\x0cSetIamPolicy\x12=.google.cloud.compute.v1.SetIamPolicyInterconnectGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xb2\x01\xda\x41\x33project,resource,global_set_policy_request_resource\x82\xd3\xe4\x93\x02v\"P/compute/v1/projects/{project}/global/interconnectGroups/{resource}/setIamPolicy:\"global_set_policy_request_resource\x12\xc4\x02\n\x12TestIamPermissions\x12\x43.google.cloud.compute.v1.TestIamPermissionsInterconnectGroupRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb6\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02{\"V/compute/v1/projects/{project}/global/interconnectGroups/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xf1\x04\n\x15InterconnectLocations\x12\xea\x01\n\x03Get\x12\x37.google.cloud.compute.v1.GetInterconnectLocationRequest\x1a-.google.cloud.compute.v1.InterconnectLocation\"{\xda\x41\x1dproject,interconnect_location\x82\xd3\xe4\x93\x02U\x12S/compute/v1/projects/{project}/global/interconnectLocations/{interconnect_location}\x12\xc3\x01\n\x04List\x12\x39.google.cloud.compute.v1.ListInterconnectLocationsRequest\x1a\x31.google.cloud.compute.v1.InterconnectLocationList\"M\xda\x41\x07project\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/global/interconnectLocations\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xaa\x05\n\x1bInterconnectRemoteLocations\x12\x8b\x02\n\x03Get\x12=.google.cloud.compute.v1.GetInterconnectRemoteLocationRequest\x1a\x33.google.cloud.compute.v1.InterconnectRemoteLocation\"\x8f\x01\xda\x41$project,interconnect_remote_location\x82\xd3\xe4\x93\x02\x62\x12`/compute/v1/projects/{project}/global/interconnectRemoteLocations/{interconnect_remote_location}\x12\xd5\x01\n\x04List\x12?.google.cloud.compute.v1.ListInterconnectRemoteLocationsRequest\x1a\x37.google.cloud.compute.v1.InterconnectRemoteLocationList\"S\xda\x41\x07project\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/global/interconnectRemoteLocations\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xe8\x0f\n\rInterconnects\x12\xd6\x01\n\x06\x44\x65lete\x12\x32.google.cloud.compute.v1.DeleteInterconnectRequest\x1a\".google.cloud.compute.v1.Operation\"t\xda\x41\x14project,interconnect\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x44*B/compute/v1/projects/{project}/global/interconnects/{interconnect}\x12\xc0\x01\n\x03Get\x12/.google.cloud.compute.v1.GetInterconnectRequest\x1a%.google.cloud.compute.v1.Interconnect\"a\xda\x41\x14project,interconnect\x82\xd3\xe4\x93\x02\x44\x12\x42/compute/v1/projects/{project}/global/interconnects/{interconnect}\x12\xfc\x01\n\x0eGetDiagnostics\x12:.google.cloud.compute.v1.GetDiagnosticsInterconnectRequest\x1a<.google.cloud.compute.v1.InterconnectsGetDiagnosticsResponse\"p\xda\x41\x14project,interconnect\x82\xd3\xe4\x93\x02S\x12Q/compute/v1/projects/{project}/global/interconnects/{interconnect}/getDiagnostics\x12\x80\x02\n\x0fGetMacsecConfig\x12;.google.cloud.compute.v1.GetMacsecConfigInterconnectRequest\x1a=.google.cloud.compute.v1.InterconnectsGetMacsecConfigResponse\"q\xda\x41\x14project,interconnect\x82\xd3\xe4\x93\x02T\x12R/compute/v1/projects/{project}/global/interconnects/{interconnect}/getMacsecConfig\x12\xe8\x01\n\x06Insert\x12\x32.google.cloud.compute.v1.InsertInterconnectRequest\x1a\".google.cloud.compute.v1.Operation\"\x85\x01\xda\x41\x1dproject,interconnect_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02L\"3/compute/v1/projects/{project}/global/interconnects:\x15interconnect_resource\x12\xab\x01\n\x04List\x12\x31.google.cloud.compute.v1.ListInterconnectsRequest\x1a).google.cloud.compute.v1.InterconnectList\"E\xda\x41\x07project\x82\xd3\xe4\x93\x02\x35\x12\x33/compute/v1/projects/{project}/global/interconnects\x12\x82\x02\n\x05Patch\x12\x31.google.cloud.compute.v1.PatchInterconnectRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41*project,interconnect,interconnect_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02[2B/compute/v1/projects/{project}/global/interconnects/{interconnect}:\x15interconnect_resource\x12\xa6\x02\n\tSetLabels\x12\x35.google.cloud.compute.v1.SetLabelsInterconnectRequest\x1a\".google.cloud.compute.v1.Operation\"\xbd\x01\xda\x41\x33project,resource,global_set_labels_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02n\"H/compute/v1/projects/{project}/global/interconnects/{resource}/setLabels:\"global_set_labels_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb0\x05\n\x0cLicenseCodes\x12\xbd\x01\n\x03Get\x12..google.cloud.compute.v1.GetLicenseCodeRequest\x1a$.google.cloud.compute.v1.LicenseCode\"`\xda\x41\x14project,license_code\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/global/licenseCodes/{license_code}\x12\xb8\x02\n\x12TestIamPermissions\x12=.google.cloud.compute.v1.TestIamPermissionsLicenseCodeRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb0\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02u\"P/compute/v1/projects/{project}/global/licenseCodes/{resource}/testIamPermissions:!test_permissions_request_resource\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xe3\x0e\n\x08Licenses\x12\xc2\x01\n\x06\x44\x65lete\x12-.google.cloud.compute.v1.DeleteLicenseRequest\x1a\".google.cloud.compute.v1.Operation\"e\xda\x41\x0fproject,license\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02:*8/compute/v1/projects/{project}/global/licenses/{license}\x12\xa7\x01\n\x03Get\x12*.google.cloud.compute.v1.GetLicenseRequest\x1a .google.cloud.compute.v1.License\"R\xda\x41\x0fproject,license\x82\xd3\xe4\x93\x02:\x12\x38/compute/v1/projects/{project}/global/licenses/{license}\x12\xc7\x01\n\x0cGetIamPolicy\x12\x33.google.cloud.compute.v1.GetIamPolicyLicenseRequest\x1a\x1f.google.cloud.compute.v1.Policy\"a\xda\x41\x10project,resource\x82\xd3\xe4\x93\x02H\x12\x46/compute/v1/projects/{project}/global/licenses/{resource}/getIamPolicy\x12\xd3\x01\n\x06Insert\x12-.google.cloud.compute.v1.InsertLicenseRequest\x1a\".google.cloud.compute.v1.Operation\"v\xda\x41\x18project,license_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x42\"./compute/v1/projects/{project}/global/licenses:\x10license_resource\x12\xa5\x01\n\x04List\x12,.google.cloud.compute.v1.ListLicensesRequest\x1a-.google.cloud.compute.v1.LicensesListResponse\"@\xda\x41\x07project\x82\xd3\xe4\x93\x02\x30\x12./compute/v1/projects/{project}/global/licenses\x12\x8f\x02\n\x0cSetIamPolicy\x12\x33.google.cloud.compute.v1.SetIamPolicyLicenseRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xa8\x01\xda\x41\x33project,resource,global_set_policy_request_resource\x82\xd3\xe4\x93\x02l\"F/compute/v1/projects/{project}/global/licenses/{resource}/setIamPolicy:\"global_set_policy_request_resource\x12\xb0\x02\n\x12TestIamPermissions\x12\x39.google.cloud.compute.v1.TestIamPermissionsLicenseRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xac\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02q\"L/compute/v1/projects/{project}/global/licenses/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xe6\x01\n\x06Update\x12-.google.cloud.compute.v1.UpdateLicenseRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x01\xda\x41 project,license,license_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02L28/compute/v1/projects/{project}/global/licenses/{license}:\x10license_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x94\x10\n\rMachineImages\x12\xd8\x01\n\x06\x44\x65lete\x12\x32.google.cloud.compute.v1.DeleteMachineImageRequest\x1a\".google.cloud.compute.v1.Operation\"v\xda\x41\x15project,machine_image\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x45*C/compute/v1/projects/{project}/global/machineImages/{machine_image}\x12\xc2\x01\n\x03Get\x12/.google.cloud.compute.v1.GetMachineImageRequest\x1a%.google.cloud.compute.v1.MachineImage\"c\xda\x41\x15project,machine_image\x82\xd3\xe4\x93\x02\x45\x12\x43/compute/v1/projects/{project}/global/machineImages/{machine_image}\x12\xd1\x01\n\x0cGetIamPolicy\x12\x38.google.cloud.compute.v1.GetIamPolicyMachineImageRequest\x1a\x1f.google.cloud.compute.v1.Policy\"f\xda\x41\x10project,resource\x82\xd3\xe4\x93\x02M\x12K/compute/v1/projects/{project}/global/machineImages/{resource}/getIamPolicy\x12\xea\x01\n\x06Insert\x12\x32.google.cloud.compute.v1.InsertMachineImageRequest\x1a\".google.cloud.compute.v1.Operation\"\x87\x01\xda\x41\x1eproject,machine_image_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02M\"3/compute/v1/projects/{project}/global/machineImages:\x16machine_image_resource\x12\xab\x01\n\x04List\x12\x31.google.cloud.compute.v1.ListMachineImagesRequest\x1a).google.cloud.compute.v1.MachineImageList\"E\xda\x41\x07project\x82\xd3\xe4\x93\x02\x35\x12\x33/compute/v1/projects/{project}/global/machineImages\x12\x99\x02\n\x0cSetIamPolicy\x12\x38.google.cloud.compute.v1.SetIamPolicyMachineImageRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xad\x01\xda\x41\x33project,resource,global_set_policy_request_resource\x82\xd3\xe4\x93\x02q\"K/compute/v1/projects/{project}/global/machineImages/{resource}/setIamPolicy:\"global_set_policy_request_resource\x12\xa6\x02\n\tSetLabels\x12\x35.google.cloud.compute.v1.SetLabelsMachineImageRequest\x1a\".google.cloud.compute.v1.Operation\"\xbd\x01\xda\x41\x33project,resource,global_set_labels_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02n\"H/compute/v1/projects/{project}/global/machineImages/{resource}/setLabels:\"global_set_labels_request_resource\x12\xba\x02\n\x12TestIamPermissions\x12>.google.cloud.compute.v1.TestIamPermissionsMachineImageRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb1\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02v\"Q/compute/v1/projects/{project}/global/machineImages/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x83\x06\n\x0cMachineTypes\x12\xca\x01\n\x0e\x41ggregatedList\x12:.google.cloud.compute.v1.AggregatedListMachineTypesRequest\x1a\x32.google.cloud.compute.v1.MachineTypeAggregatedList\"H\xda\x41\x07project\x82\xd3\xe4\x93\x02\x38\x12\x36/compute/v1/projects/{project}/aggregated/machineTypes\x12\xc8\x01\n\x03Get\x12..google.cloud.compute.v1.GetMachineTypeRequest\x1a$.google.cloud.compute.v1.MachineType\"k\xda\x41\x19project,zone,machine_type\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/zones/{zone}/machineTypes/{machine_type}\x12\xb3\x01\n\x04List\x12\x30.google.cloud.compute.v1.ListMachineTypesRequest\x1a(.google.cloud.compute.v1.MachineTypeList\"O\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02:\x12\x38/compute/v1/projects/{project}/zones/{zone}/machineTypes\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xf0\x13\n\x12NetworkAttachments\x12\xdc\x01\n\x0e\x41ggregatedList\x12@.google.cloud.compute.v1.AggregatedListNetworkAttachmentsRequest\x1a\x38.google.cloud.compute.v1.NetworkAttachmentAggregatedList\"N\xda\x41\x07project\x82\xd3\xe4\x93\x02>\x12.google.cloud.compute.v1.PatchRuleNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xc4\x01\xda\x41\x35project,firewall_policy,firewall_policy_rule_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02s\"R/compute/v1/projects/{project}/global/firewallPolicies/{firewall_policy}/patchRule:\x1d\x66irewall_policy_rule_resource\x12\x91\x02\n\x11RemoveAssociation\x12\x46.google.cloud.compute.v1.RemoveAssociationNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x8f\x01\xda\x41\x17project,firewall_policy\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\\\"Z/compute/v1/projects/{project}/global/firewallPolicies/{firewall_policy}/removeAssociation\x12\xa9\x02\n\x19RemovePacketMirroringRule\x12N.google.cloud.compute.v1.RemovePacketMirroringRuleNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x97\x01\xda\x41\x17project,firewall_policy\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x64\"b/compute/v1/projects/{project}/global/firewallPolicies/{firewall_policy}/removePacketMirroringRule\x12\xfc\x01\n\nRemoveRule\x12?.google.cloud.compute.v1.RemoveRuleNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x01\xda\x41\x17project,firewall_policy\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02U\"S/compute/v1/projects/{project}/global/firewallPolicies/{firewall_policy}/removeRule\x12\xa5\x02\n\x0cSetIamPolicy\x12\x41.google.cloud.compute.v1.SetIamPolicyNetworkFirewallPolicyRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xb0\x01\xda\x41\x33project,resource,global_set_policy_request_resource\x82\xd3\xe4\x93\x02t\"N/compute/v1/projects/{project}/global/firewallPolicies/{resource}/setIamPolicy:\"global_set_policy_request_resource\x12\xc6\x02\n\x12TestIamPermissions\x12G.google.cloud.compute.v1.TestIamPermissionsNetworkFirewallPolicyRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb4\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02y\"T/compute/v1/projects/{project}/global/firewallPolicies/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xc4\x04\n\x0fNetworkProfiles\x12\xcc\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetNetworkProfileRequest\x1a\'.google.cloud.compute.v1.NetworkProfile\"i\xda\x41\x17project,network_profile\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/global/networkProfiles/{network_profile}\x12\xba\x01\n\x04List\x12\x33.google.cloud.compute.v1.ListNetworkProfilesRequest\x1a\x34.google.cloud.compute.v1.NetworkProfilesListResponse\"G\xda\x41\x07project\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/global/networkProfiles\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x92\x18\n\x08Networks\x12\xa3\x02\n\nAddPeering\x12\x31.google.cloud.compute.v1.AddPeeringNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"\xbd\x01\xda\x41\x35project,network,networks_add_peering_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02l\"C/compute/v1/projects/{project}/global/networks/{network}/addPeering:%networks_add_peering_request_resource\x12\xc2\x01\n\x06\x44\x65lete\x12-.google.cloud.compute.v1.DeleteNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"e\xda\x41\x0fproject,network\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02:*8/compute/v1/projects/{project}/global/networks/{network}\x12\xa7\x01\n\x03Get\x12*.google.cloud.compute.v1.GetNetworkRequest\x1a .google.cloud.compute.v1.Network\"R\xda\x41\x0fproject,network\x82\xd3\xe4\x93\x02:\x12\x38/compute/v1/projects/{project}/global/networks/{network}\x12\xff\x01\n\x15GetEffectiveFirewalls\x12<.google.cloud.compute.v1.GetEffectiveFirewallsNetworkRequest\x1a>.google.cloud.compute.v1.NetworksGetEffectiveFirewallsResponse\"h\xda\x41\x0fproject,network\x82\xd3\xe4\x93\x02P\x12N/compute/v1/projects/{project}/global/networks/{network}/getEffectiveFirewalls\x12\xd3\x01\n\x06Insert\x12-.google.cloud.compute.v1.InsertNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"v\xda\x41\x18project,network_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x42\"./compute/v1/projects/{project}/global/networks:\x10network_resource\x12\x9c\x01\n\x04List\x12,.google.cloud.compute.v1.ListNetworksRequest\x1a$.google.cloud.compute.v1.NetworkList\"@\xda\x41\x07project\x82\xd3\xe4\x93\x02\x30\x12./compute/v1/projects/{project}/global/networks\x12\xe9\x01\n\x11ListPeeringRoutes\x12\x39.google.cloud.compute.v1.ListPeeringRoutesNetworksRequest\x1a\x33.google.cloud.compute.v1.ExchangedPeeringRoutesList\"d\xda\x41\x0fproject,network\x82\xd3\xe4\x93\x02L\x12J/compute/v1/projects/{project}/global/networks/{network}/listPeeringRoutes\x12\xe4\x01\n\x05Patch\x12,.google.cloud.compute.v1.PatchNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x01\xda\x41 project,network,network_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02L28/compute/v1/projects/{project}/global/networks/{network}:\x10network_resource\x12\xb2\x02\n\rRemovePeering\x12\x34.google.cloud.compute.v1.RemovePeeringNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"\xc6\x01\xda\x41\x38project,network,networks_remove_peering_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02r\"F/compute/v1/projects/{project}/global/networks/{network}/removePeering:(networks_remove_peering_request_resource\x12\xd8\x02\n\x14RequestRemovePeering\x12;.google.cloud.compute.v1.RequestRemovePeeringNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"\xde\x01\xda\x41@project,network,networks_request_remove_peering_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x81\x01\"M/compute/v1/projects/{project}/global/networks/{network}/requestRemovePeering:0networks_request_remove_peering_request_resource\x12\xed\x01\n\x12SwitchToCustomMode\x12\x39.google.cloud.compute.v1.SwitchToCustomModeNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"x\xda\x41\x0fproject,network\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02M\"K/compute/v1/projects/{project}/global/networks/{network}/switchToCustomMode\x12\xb2\x02\n\rUpdatePeering\x12\x34.google.cloud.compute.v1.UpdatePeeringNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"\xc6\x01\xda\x41\x38project,network,networks_update_peering_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02r2F/compute/v1/projects/{project}/global/networks/{network}/updatePeering:(networks_update_peering_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xeb \n\nNodeGroups\x12\xb2\x02\n\x08\x41\x64\x64Nodes\x12\x31.google.cloud.compute.v1.AddNodesNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xce\x01\xda\x41>project,zone,node_group,node_groups_add_nodes_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02v\"L/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/addNodes:&node_groups_add_nodes_request_resource\x12\xc4\x01\n\x0e\x41ggregatedList\x12\x38.google.cloud.compute.v1.AggregatedListNodeGroupsRequest\x1a\x30.google.cloud.compute.v1.NodeGroupAggregatedList\"F\xda\x41\x07project\x82\xd3\xe4\x93\x02\x36\x12\x34/compute/v1/projects/{project}/aggregated/nodeGroups\x12\xd5\x01\n\x06\x44\x65lete\x12/.google.cloud.compute.v1.DeleteNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"v\xda\x41\x17project,zone,node_group\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x45*C/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}\x12\xc1\x02\n\x0b\x44\x65leteNodes\x12\x34.google.cloud.compute.v1.DeleteNodesNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xd7\x01\xda\x41\x41project,zone,node_group,node_groups_delete_nodes_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02|\"O/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/deleteNodes:)node_groups_delete_nodes_request_resource\x12\xbe\x01\n\x03Get\x12,.google.cloud.compute.v1.GetNodeGroupRequest\x1a\".google.cloud.compute.v1.NodeGroup\"e\xda\x41\x17project,zone,node_group\x82\xd3\xe4\x93\x02\x45\x12\x43/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}\x12\xd6\x01\n\x0cGetIamPolicy\x12\x35.google.cloud.compute.v1.GetIamPolicyNodeGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"n\xda\x41\x15project,zone,resource\x82\xd3\xe4\x93\x02P\x12N/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy\x12\xfa\x01\n\x06Insert\x12/.google.cloud.compute.v1.InsertNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x9a\x01\xda\x41\x33project,zone,initial_node_count,node_group_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02M\"6/compute/v1/projects/{project}/zones/{zone}/nodeGroups:\x13node_group_resource\x12\xad\x01\n\x04List\x12..google.cloud.compute.v1.ListNodeGroupsRequest\x1a&.google.cloud.compute.v1.NodeGroupList\"M\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02\x38\x12\x36/compute/v1/projects/{project}/zones/{zone}/nodeGroups\x12\xdf\x01\n\tListNodes\x12\x33.google.cloud.compute.v1.ListNodesNodeGroupsRequest\x1a,.google.cloud.compute.v1.NodeGroupsListNodes\"o\xda\x41\x17project,zone,node_group\x82\xd3\xe4\x93\x02O\"M/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/listNodes\x12\xfd\x01\n\x05Patch\x12..google.cloud.compute.v1.PatchNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x01\xda\x41+project,zone,node_group,node_group_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02Z2C/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}:\x13node_group_resource\x12\xe5\x02\n\x12PerformMaintenance\x12;.google.cloud.compute.v1.PerformMaintenanceNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xed\x01\xda\x41Hproject,zone,node_group,node_groups_perform_maintenance_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x8a\x01\"V/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/performMaintenance:0node_groups_perform_maintenance_request_resource\x12\x9a\x02\n\x0cSetIamPolicy\x12\x35.google.cloud.compute.v1.SetIamPolicyNodeGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xb1\x01\xda\x41\x36project,zone,resource,zone_set_policy_request_resource\x82\xd3\xe4\x93\x02r\"N/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy: zone_set_policy_request_resource\x12\xd8\x02\n\x0fSetNodeTemplate\x12\x38.google.cloud.compute.v1.SetNodeTemplateNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xe6\x01\xda\x41\x46project,zone,node_group,node_groups_set_node_template_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x85\x01\"S/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/setNodeTemplate:.node_groups_set_node_template_request_resource\x12\x85\x03\n\x18SimulateMaintenanceEvent\x12\x41.google.cloud.compute.v1.SimulateMaintenanceEventNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x81\x02\xda\x41Oproject,zone,node_group,node_groups_simulate_maintenance_event_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x97\x01\"\\/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/simulateMaintenanceEvent:7node_groups_simulate_maintenance_event_request_resource\x12\xbf\x02\n\x12TestIamPermissions\x12;.google.cloud.compute.v1.TestIamPermissionsNodeGroupRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb9\x01\xda\x41\x37project,zone,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02y\"T/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb4\x10\n\rNodeTemplates\x12\xcd\x01\n\x0e\x41ggregatedList\x12;.google.cloud.compute.v1.AggregatedListNodeTemplatesRequest\x1a\x33.google.cloud.compute.v1.NodeTemplateAggregatedList\"I\xda\x41\x07project\x82\xd3\xe4\x93\x02\x39\x12\x37/compute/v1/projects/{project}/aggregated/nodeTemplates\x12\xea\x01\n\x06\x44\x65lete\x12\x32.google.cloud.compute.v1.DeleteNodeTemplateRequest\x1a\".google.cloud.compute.v1.Operation\"\x87\x01\xda\x41\x1cproject,region,node_template\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02O*M/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{node_template}\x12\xd3\x01\n\x03Get\x12/.google.cloud.compute.v1.GetNodeTemplateRequest\x1a%.google.cloud.compute.v1.NodeTemplate\"t\xda\x41\x1cproject,region,node_template\x82\xd3\xe4\x93\x02O\x12M/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{node_template}\x12\xe2\x01\n\x0cGetIamPolicy\x12\x38.google.cloud.compute.v1.GetIamPolicyNodeTemplateRequest\x1a\x1f.google.cloud.compute.v1.Policy\"w\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02W\x12U/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy\x12\xfb\x01\n\x06Insert\x12\x32.google.cloud.compute.v1.InsertNodeTemplateRequest\x1a\".google.cloud.compute.v1.Operation\"\x98\x01\xda\x41%project,region,node_template_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02W\"=/compute/v1/projects/{project}/regions/{region}/nodeTemplates:\x16node_template_resource\x12\xbc\x01\n\x04List\x12\x31.google.cloud.compute.v1.ListNodeTemplatesRequest\x1a).google.cloud.compute.v1.NodeTemplateList\"V\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02?\x12=/compute/v1/projects/{project}/regions/{region}/nodeTemplates\x12\xaa\x02\n\x0cSetIamPolicy\x12\x38.google.cloud.compute.v1.SetIamPolicyNodeTemplateRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xbe\x01\xda\x41:project,region,resource,region_set_policy_request_resource\x82\xd3\xe4\x93\x02{\"U/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy:\"region_set_policy_request_resource\x12\xcc\x02\n\x12TestIamPermissions\x12>.google.cloud.compute.v1.TestIamPermissionsNodeTemplateRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc3\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x80\x01\"[/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xdf\x05\n\tNodeTypes\x12\xc1\x01\n\x0e\x41ggregatedList\x12\x37.google.cloud.compute.v1.AggregatedListNodeTypesRequest\x1a/.google.cloud.compute.v1.NodeTypeAggregatedList\"E\xda\x41\x07project\x82\xd3\xe4\x93\x02\x35\x12\x33/compute/v1/projects/{project}/aggregated/nodeTypes\x12\xb9\x01\n\x03Get\x12+.google.cloud.compute.v1.GetNodeTypeRequest\x1a!.google.cloud.compute.v1.NodeType\"b\xda\x41\x16project,zone,node_type\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/zones/{zone}/nodeTypes/{node_type}\x12\xaa\x01\n\x04List\x12-.google.cloud.compute.v1.ListNodeTypesRequest\x1a%.google.cloud.compute.v1.NodeTypeList\"L\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/zones/{zone}/nodeTypes\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd3!\n\x1cOrganizationSecurityPolicies\x12\xd3\x02\n\x0e\x41\x64\x64\x41ssociation\x12H.google.cloud.compute.v1.AddAssociationOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xd2\x01\xda\x41\x34security_policy,security_policy_association_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02v\"N/compute/v1/locations/global/securityPolicies/{security_policy}/addAssociation:$security_policy_association_resource\x12\xb0\x02\n\x07\x41\x64\x64Rule\x12\x41.google.cloud.compute.v1.AddRuleOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xbd\x01\xda\x41-security_policy,security_policy_rule_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02h\"G/compute/v1/locations/global/securityPolicies/{security_policy}/addRule:\x1dsecurity_policy_rule_resource\x12\xf9\x01\n\tCopyRules\x12\x43.google.cloud.compute.v1.CopyRulesOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x82\x01\xda\x41\x0fsecurity_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02K\"I/compute/v1/locations/global/securityPolicies/{security_policy}/copyRules\x12\xe8\x01\n\x06\x44\x65lete\x12@.google.cloud.compute.v1.DeleteOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"x\xda\x41\x0fsecurity_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02\x41*?/compute/v1/locations/global/securityPolicies/{security_policy}\x12\xc8\x01\n\x03Get\x12=.google.cloud.compute.v1.GetOrganizationSecurityPolicyRequest\x1a\'.google.cloud.compute.v1.SecurityPolicy\"Y\xda\x41\x0fsecurity_policy\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/locations/global/securityPolicies/{security_policy}\x12\xf8\x01\n\x0eGetAssociation\x12H.google.cloud.compute.v1.GetAssociationOrganizationSecurityPolicyRequest\x1a\x32.google.cloud.compute.v1.SecurityPolicyAssociation\"h\xda\x41\x0fsecurity_policy\x82\xd3\xe4\x93\x02P\x12N/compute/v1/locations/global/securityPolicies/{security_policy}/getAssociation\x12\xdc\x01\n\x07GetRule\x12\x41.google.cloud.compute.v1.GetRuleOrganizationSecurityPolicyRequest\x1a+.google.cloud.compute.v1.SecurityPolicyRule\"a\xda\x41\x0fsecurity_policy\x82\xd3\xe4\x93\x02I\x12G/compute/v1/locations/global/securityPolicies/{security_policy}/getRule\x12\xfa\x01\n\x06Insert\x12@.google.cloud.compute.v1.InsertOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x89\x01\xda\x41\x18security_policy_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02I\"-/compute/v1/locations/global/securityPolicies:\x18security_policy_resource\x12\xaf\x01\n\x04List\x12@.google.cloud.compute.v1.ListOrganizationSecurityPoliciesRequest\x1a+.google.cloud.compute.v1.SecurityPolicyList\"8\xda\x41\x00\x82\xd3\xe4\x93\x02/\x12-/compute/v1/locations/global/securityPolicies\x12\xf8\x01\n\x10ListAssociations\x12J.google.cloud.compute.v1.ListAssociationsOrganizationSecurityPolicyRequest\x1aM.google.cloud.compute.v1.OrganizationSecurityPoliciesListAssociationsResponse\"I\xda\x41\x00\x82\xd3\xe4\x93\x02@\x12>/compute/v1/locations/global/securityPolicies/listAssociations\x12\xaa\x02\n\x1fListPreconfiguredExpressionSets\x12[.google.cloud.compute.v1.ListPreconfiguredExpressionSetsOrganizationSecurityPoliciesRequest\x1aP.google.cloud.compute.v1.SecurityPoliciesListPreconfiguredExpressionSetsResponse\"X\xda\x41\x00\x82\xd3\xe4\x93\x02O\x12M/compute/v1/locations/global/securityPolicies/listPreconfiguredExpressionSets\x12\xe9\x01\n\x04Move\x12>.google.cloud.compute.v1.MoveOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"}\xda\x41\x0fsecurity_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02\x46\"D/compute/v1/locations/global/securityPolicies/{security_policy}/move\x12\x9a\x02\n\x05Patch\x12?.google.cloud.compute.v1.PatchOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x01\xda\x41(security_policy,security_policy_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02[2?/compute/v1/locations/global/securityPolicies/{security_policy}:\x18security_policy_resource\x12\xb6\x02\n\tPatchRule\x12\x43.google.cloud.compute.v1.PatchRuleOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xbf\x01\xda\x41-security_policy,security_policy_rule_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02j\"I/compute/v1/locations/global/securityPolicies/{security_policy}/patchRule:\x1dsecurity_policy_rule_resource\x12\x91\x02\n\x11RemoveAssociation\x12K.google.cloud.compute.v1.RemoveAssociationOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x8a\x01\xda\x41\x0fsecurity_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02S\"Q/compute/v1/locations/global/securityPolicies/{security_policy}/removeAssociation\x12\xfc\x01\n\nRemoveRule\x12\x44.google.cloud.compute.v1.RemoveRuleOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x83\x01\xda\x41\x0fsecurity_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02L\"J/compute/v1/locations/global/securityPolicies/{security_policy}/removeRule\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x90\x0f\n\x10PacketMirrorings\x12\xd6\x01\n\x0e\x41ggregatedList\x12>.google.cloud.compute.v1.AggregatedListPacketMirroringsRequest\x1a\x36.google.cloud.compute.v1.PacketMirroringAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/packetMirrorings\x12\xf6\x01\n\x06\x44\x65lete\x12\x35.google.cloud.compute.v1.DeletePacketMirroringRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\x1fproject,region,packet_mirroring\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02U*S/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{packet_mirroring}\x12\xe2\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetPacketMirroringRequest\x1a(.google.cloud.compute.v1.PacketMirroring\"}\xda\x41\x1fproject,region,packet_mirroring\x82\xd3\xe4\x93\x02U\x12S/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{packet_mirroring}\x12\x87\x02\n\x06Insert\x12\x35.google.cloud.compute.v1.InsertPacketMirroringRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41(project,region,packet_mirroring_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02]\"@/compute/v1/projects/{project}/regions/{region}/packetMirrorings:\x19packet_mirroring_resource\x12\xc5\x01\n\x04List\x12\x34.google.cloud.compute.v1.ListPacketMirroringsRequest\x1a,.google.cloud.compute.v1.PacketMirroringList\"Y\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/regions/{region}/packetMirrorings\x12\xa9\x02\n\x05Patch\x12\x34.google.cloud.compute.v1.PatchPacketMirroringRequest\x1a\".google.cloud.compute.v1.Operation\"\xc5\x01\xda\x41\x39project,region,packet_mirroring,packet_mirroring_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02p2S/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{packet_mirroring}:\x19packet_mirroring_resource\x12\xd2\x02\n\x12TestIamPermissions\x12\x41.google.cloud.compute.v1.TestIamPermissionsPacketMirroringRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc6\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x83\x01\"^/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x9f\x06\n\x0fPreviewFeatures\x12\xcc\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetPreviewFeatureRequest\x1a\'.google.cloud.compute.v1.PreviewFeature\"i\xda\x41\x17project,preview_feature\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/global/previewFeatures/{preview_feature}\x12\xb1\x01\n\x04List\x12\x33.google.cloud.compute.v1.ListPreviewFeaturesRequest\x1a+.google.cloud.compute.v1.PreviewFeatureList\"G\xda\x41\x07project\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/global/previewFeatures\x12\x94\x02\n\x06Update\x12\x34.google.cloud.compute.v1.UpdatePreviewFeatureRequest\x1a\".google.cloud.compute.v1.Operation\"\xaf\x01\xda\x41\x30project,preview_feature,preview_feature_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x63\x32G/compute/v1/projects/{project}/global/previewFeatures/{preview_feature}:\x18preview_feature_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xab\x1b\n\x08Projects\x12\xbf\x01\n\x0e\x44isableXpnHost\x12\x35.google.cloud.compute.v1.DisableXpnHostProjectRequest\x1a\".google.cloud.compute.v1.Operation\"R\xda\x41\x07project\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02/\"-/compute/v1/projects/{project}/disableXpnHost\x12\xab\x02\n\x12\x44isableXpnResource\x12\x39.google.cloud.compute.v1.DisableXpnResourceProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\xb5\x01\xda\x41\x36project,projects_disable_xpn_resource_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x63\"1/compute/v1/projects/{project}/disableXpnResource:.projects_disable_xpn_resource_request_resource\x12\xbc\x01\n\rEnableXpnHost\x12\x34.google.cloud.compute.v1.EnableXpnHostProjectRequest\x1a\".google.cloud.compute.v1.Operation\"Q\xda\x41\x07project\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02.\",/compute/v1/projects/{project}/enableXpnHost\x12\xa6\x02\n\x11\x45nableXpnResource\x12\x38.google.cloud.compute.v1.EnableXpnResourceProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\xb2\x01\xda\x41\x35project,projects_enable_xpn_resource_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x61\"0/compute/v1/projects/{project}/enableXpnResource:-projects_enable_xpn_resource_request_resource\x12\x85\x01\n\x03Get\x12*.google.cloud.compute.v1.GetProjectRequest\x1a .google.cloud.compute.v1.Project\"0\xda\x41\x07project\x82\xd3\xe4\x93\x02 \x12\x1e/compute/v1/projects/{project}\x12\x9e\x01\n\nGetXpnHost\x12\x31.google.cloud.compute.v1.GetXpnHostProjectRequest\x1a .google.cloud.compute.v1.Project\";\xda\x41\x07project\x82\xd3\xe4\x93\x02+\x12)/compute/v1/projects/{project}/getXpnHost\x12\xbe\x01\n\x0fGetXpnResources\x12\x37.google.cloud.compute.v1.GetXpnResourcesProjectsRequest\x1a\x30.google.cloud.compute.v1.ProjectsGetXpnResources\"@\xda\x41\x07project\x82\xd3\xe4\x93\x02\x30\x12./compute/v1/projects/{project}/getXpnResources\x12\xfd\x01\n\x0cListXpnHosts\x12\x34.google.cloud.compute.v1.ListXpnHostsProjectsRequest\x1a$.google.cloud.compute.v1.XpnHostList\"\x90\x01\xda\x41\x30project,projects_list_xpn_hosts_request_resource\x82\xd3\xe4\x93\x02W\"+/compute/v1/projects/{project}/listXpnHosts:(projects_list_xpn_hosts_request_resource\x12\xe5\x01\n\x08MoveDisk\x12/.google.cloud.compute.v1.MoveDiskProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\x83\x01\xda\x41\"project,disk_move_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x45\"\'/compute/v1/projects/{project}/moveDisk:\x1a\x64isk_move_request_resource\x12\xf9\x01\n\x0cMoveInstance\x12\x33.google.cloud.compute.v1.MoveInstanceProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\x8f\x01\xda\x41&project,instance_move_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02M\"+/compute/v1/projects/{project}/moveInstance:\x1einstance_move_request_resource\x12\xa8\x02\n\x11SetCloudArmorTier\x12\x38.google.cloud.compute.v1.SetCloudArmorTierProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\xb4\x01\xda\x41\x36project,projects_set_cloud_armor_tier_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x62\"0/compute/v1/projects/{project}/setCloudArmorTier:.projects_set_cloud_armor_tier_request_resource\x12\x86\x02\n\x19SetCommonInstanceMetadata\x12@.google.cloud.compute.v1.SetCommonInstanceMetadataProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\x82\x01\xda\x41\x19project,metadata_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02M\"8/compute/v1/projects/{project}/setCommonInstanceMetadata:\x11metadata_resource\x12\xbc\x02\n\x15SetDefaultNetworkTier\x12<.google.cloud.compute.v1.SetDefaultNetworkTierProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\xc0\x01\xda\x41:project,projects_set_default_network_tier_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02j\"4/compute/v1/projects/{project}/setDefaultNetworkTier:2projects_set_default_network_tier_request_resource\x12\x91\x02\n\x14SetUsageExportBucket\x12;.google.cloud.compute.v1.SetUsageExportBucketProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\x97\x01\xda\x41&project,usage_export_location_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02U\"3/compute/v1/projects/{project}/setUsageExportBucket:\x1eusage_export_location_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xee\x0f\n\x18PublicAdvertisedPrefixes\x12\x92\x02\n\x08\x41nnounce\x12?.google.cloud.compute.v1.AnnouncePublicAdvertisedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xa0\x01\xda\x41 project,public_advertised_prefix\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x64\"b/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}/announce\x12\x85\x02\n\x06\x44\x65lete\x12=.google.cloud.compute.v1.DeletePublicAdvertisedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\x97\x01\xda\x41 project,public_advertised_prefix\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02[*Y/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}\x12\xf9\x01\n\x03Get\x12:.google.cloud.compute.v1.GetPublicAdvertisedPrefixeRequest\x1a/.google.cloud.compute.v1.PublicAdvertisedPrefix\"\x84\x01\xda\x41 project,public_advertised_prefix\x82\xd3\xe4\x93\x02[\x12Y/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}\x12\x96\x02\n\x06Insert\x12=.google.cloud.compute.v1.InsertPublicAdvertisedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xa8\x01\xda\x41)project,public_advertised_prefix_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x63\">/compute/v1/projects/{project}/global/publicAdvertisedPrefixes:!public_advertised_prefix_resource\x12\xcb\x01\n\x04List\x12<.google.cloud.compute.v1.ListPublicAdvertisedPrefixesRequest\x1a\x33.google.cloud.compute.v1.PublicAdvertisedPrefixList\"P\xda\x41\x07project\x82\xd3\xe4\x93\x02@\x12>/compute/v1/projects/{project}/global/publicAdvertisedPrefixes\x12\xc8\x02\n\x05Patch\x12<.google.cloud.compute.v1.PatchPublicAdvertisedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xdc\x01\xda\x41\x42project,public_advertised_prefix,public_advertised_prefix_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02~2Y/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}:!public_advertised_prefix_resource\x12\x92\x02\n\x08Withdraw\x12?.google.cloud.compute.v1.WithdrawPublicAdvertisedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xa0\x01\xda\x41 project,public_advertised_prefix\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x64\"b/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}/withdraw\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb4\x12\n\x17PublicDelegatedPrefixes\x12\xea\x01\n\x0e\x41ggregatedList\x12\x45.google.cloud.compute.v1.AggregatedListPublicDelegatedPrefixesRequest\x1a<.google.cloud.compute.v1.PublicDelegatedPrefixAggregatedList\"S\xda\x41\x07project\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/aggregated/publicDelegatedPrefixes\x12\x9f\x02\n\x08\x41nnounce\x12>.google.cloud.compute.v1.AnnouncePublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xae\x01\xda\x41&project,region,public_delegated_prefix\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02l\"j/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}/announce\x12\x92\x02\n\x06\x44\x65lete\x12<.google.cloud.compute.v1.DeletePublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xa5\x01\xda\x41&project,region,public_delegated_prefix\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x63*a/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}\x12\x85\x02\n\x03Get\x12\x39.google.cloud.compute.v1.GetPublicDelegatedPrefixeRequest\x1a..google.cloud.compute.v1.PublicDelegatedPrefix\"\x92\x01\xda\x41&project,region,public_delegated_prefix\x82\xd3\xe4\x93\x02\x63\x12\x61/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}\x12\xa3\x02\n\x06Insert\x12<.google.cloud.compute.v1.InsertPublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x01\xda\x41/project,region,public_delegated_prefix_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02k\"G/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes: public_delegated_prefix_resource\x12\xd9\x01\n\x04List\x12;.google.cloud.compute.v1.ListPublicDelegatedPrefixesRequest\x1a\x32.google.cloud.compute.v1.PublicDelegatedPrefixList\"`\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes\x12\xd4\x02\n\x05Patch\x12;.google.cloud.compute.v1.PatchPublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xe9\x01\xda\x41Gproject,region,public_delegated_prefix,public_delegated_prefix_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x85\x01\x32\x61/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}: public_delegated_prefix_resource\x12\x9f\x02\n\x08Withdraw\x12>.google.cloud.compute.v1.WithdrawPublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xae\x01\xda\x41&project,region,public_delegated_prefix\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02l\"j/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}/withdraw\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xc0\x0e\n\x11RegionAutoscalers\x12\xe5\x01\n\x06\x44\x65lete\x12\x36.google.cloud.compute.v1.DeleteRegionAutoscalerRequest\x1a\".google.cloud.compute.v1.Operation\"\x7f\xda\x41\x19project,region,autoscaler\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02J*H/compute/v1/projects/{project}/regions/{region}/autoscalers/{autoscaler}\x12\xcd\x01\n\x03Get\x12\x33.google.cloud.compute.v1.GetRegionAutoscalerRequest\x1a#.google.cloud.compute.v1.Autoscaler\"l\xda\x41\x19project,region,autoscaler\x82\xd3\xe4\x93\x02J\x12H/compute/v1/projects/{project}/regions/{region}/autoscalers/{autoscaler}\x12\xf7\x01\n\x06Insert\x12\x36.google.cloud.compute.v1.InsertRegionAutoscalerRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\"project,region,autoscaler_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02R\";/compute/v1/projects/{project}/regions/{region}/autoscalers:\x13\x61utoscaler_resource\x12\xc2\x01\n\x04List\x12\x35.google.cloud.compute.v1.ListRegionAutoscalersRequest\x1a-.google.cloud.compute.v1.RegionAutoscalerList\"T\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/regions/{region}/autoscalers\x12\xf5\x01\n\x05Patch\x12\x35.google.cloud.compute.v1.PatchRegionAutoscalerRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\"project,region,autoscaler_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02R2;/compute/v1/projects/{project}/regions/{region}/autoscalers:\x13\x61utoscaler_resource\x12\xcd\x02\n\x12TestIamPermissions\x12\x42.google.cloud.compute.v1.TestIamPermissionsRegionAutoscalerRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc0\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02~\"Y/compute/v1/projects/{project}/regions/{region}/autoscalers/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xf7\x01\n\x06Update\x12\x36.google.cloud.compute.v1.UpdateRegionAutoscalerRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\"project,region,autoscaler_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02R\x1a;/compute/v1/projects/{project}/regions/{region}/autoscalers:\x13\x61utoscaler_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xbd\x1b\n\x15RegionBackendServices\x12\xf8\x01\n\x06\x44\x65lete\x12:.google.cloud.compute.v1.DeleteRegionBackendServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\x8d\x01\xda\x41\x1eproject,region,backend_service\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S*Q/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}\x12\xe3\x01\n\x03Get\x12\x37.google.cloud.compute.v1.GetRegionBackendServiceRequest\x1a\'.google.cloud.compute.v1.BackendService\"z\xda\x41\x1eproject,region,backend_service\x82\xd3\xe4\x93\x02S\x12Q/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}\x12\xcb\x02\n\tGetHealth\x12=.google.cloud.compute.v1.GetHealthRegionBackendServiceRequest\x1a\x32.google.cloud.compute.v1.BackendServiceGroupHealth\"\xca\x01\xda\x41@project,region,backend_service,resource_group_reference_resource\x82\xd3\xe4\x93\x02\x80\x01\"[/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}/getHealth:!resource_group_reference_resource\x12\xec\x01\n\x0cGetIamPolicy\x12@.google.cloud.compute.v1.GetIamPolicyRegionBackendServiceRequest\x1a\x1f.google.cloud.compute.v1.Policy\"y\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02Y\x12W/compute/v1/projects/{project}/regions/{region}/backendServices/{resource}/getIamPolicy\x12\x89\x02\n\x06Insert\x12:.google.cloud.compute.v1.InsertRegionBackendServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\x9e\x01\xda\x41\'project,region,backend_service_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02[\"?/compute/v1/projects/{project}/regions/{region}/backendServices:\x18\x62\x61\x63kend_service_resource\x12\xc8\x01\n\x04List\x12\x39.google.cloud.compute.v1.ListRegionBackendServicesRequest\x1a+.google.cloud.compute.v1.BackendServiceList\"X\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/projects/{project}/regions/{region}/backendServices\x12\xe5\x01\n\nListUsable\x12?.google.cloud.compute.v1.ListUsableRegionBackendServicesRequest\x1a\x31.google.cloud.compute.v1.BackendServiceListUsable\"c\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02L\x12J/compute/v1/projects/{project}/regions/{region}/backendServices/listUsable\x12\xa9\x02\n\x05Patch\x12\x39.google.cloud.compute.v1.PatchRegionBackendServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\xc0\x01\xda\x41\x37project,region,backend_service,backend_service_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02m2Q/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}:\x18\x62\x61\x63kend_service_resource\x12\xb4\x02\n\x0cSetIamPolicy\x12@.google.cloud.compute.v1.SetIamPolicyRegionBackendServiceRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xc0\x01\xda\x41:project,region,resource,region_set_policy_request_resource\x82\xd3\xe4\x93\x02}\"W/compute/v1/projects/{project}/regions/{region}/backendServices/{resource}/setIamPolicy:\"region_set_policy_request_resource\x12\xe8\x02\n\x11SetSecurityPolicy\x12\x45.google.cloud.compute.v1.SetSecurityPolicyRegionBackendServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe7\x01\xda\x41\x41project,region,backend_service,security_policy_reference_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x89\x01\"c/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}/setSecurityPolicy:\"security_policy_reference_resource\x12\xd6\x02\n\x12TestIamPermissions\x12\x46.google.cloud.compute.v1.TestIamPermissionsRegionBackendServiceRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc5\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x82\x01\"]/compute/v1/projects/{project}/regions/{region}/backendServices/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xab\x02\n\x06Update\x12:.google.cloud.compute.v1.UpdateRegionBackendServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\xc0\x01\xda\x41\x37project,region,backend_service,backend_service_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02m\x1aQ/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}:\x18\x62\x61\x63kend_service_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xf2\t\n\x11RegionCommitments\x12\xcd\x01\n\x0e\x41ggregatedList\x12?.google.cloud.compute.v1.AggregatedListRegionCommitmentsRequest\x1a\x31.google.cloud.compute.v1.CommitmentAggregatedList\"G\xda\x41\x07project\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/aggregated/commitments\x12\xcd\x01\n\x03Get\x12\x33.google.cloud.compute.v1.GetRegionCommitmentRequest\x1a#.google.cloud.compute.v1.Commitment\"l\xda\x41\x19project,region,commitment\x82\xd3\xe4\x93\x02J\x12H/compute/v1/projects/{project}/regions/{region}/commitments/{commitment}\x12\xf7\x01\n\x06Insert\x12\x36.google.cloud.compute.v1.InsertRegionCommitmentRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\"project,region,commitment_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02R\";/compute/v1/projects/{project}/regions/{region}/commitments:\x13\x63ommitment_resource\x12\xbc\x01\n\x04List\x12\x35.google.cloud.compute.v1.ListRegionCommitmentsRequest\x1a\'.google.cloud.compute.v1.CommitmentList\"T\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/regions/{region}/commitments\x12\x8f\x02\n\x06Update\x12\x36.google.cloud.compute.v1.UpdateRegionCommitmentRequest\x1a\".google.cloud.compute.v1.Operation\"\xa8\x01\xda\x41-project,region,commitment,commitment_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02_2H/compute/v1/projects/{project}/regions/{region}/commitments/{commitment}:\x13\x63ommitment_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd8\x10\n\x1bRegionCompositeHealthChecks\x12\xeb\x01\n\x0e\x41ggregatedList\x12I.google.cloud.compute.v1.AggregatedListRegionCompositeHealthChecksRequest\x1a;.google.cloud.compute.v1.CompositeHealthCheckAggregatedList\"Q\xda\x41\x07project\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/projects/{project}/aggregated/compositeHealthChecks\x12\x92\x02\n\x06\x44\x65lete\x12@.google.cloud.compute.v1.DeleteRegionCompositeHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41%project,region,composite_health_check\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02`*^/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{composite_health_check}\x12\x84\x02\n\x03Get\x12=.google.cloud.compute.v1.GetRegionCompositeHealthCheckRequest\x1a-.google.cloud.compute.v1.CompositeHealthCheck\"\x8e\x01\xda\x41%project,region,composite_health_check\x82\xd3\xe4\x93\x02`\x12^/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{composite_health_check}\x12\xa3\x02\n\x06Insert\x12@.google.cloud.compute.v1.InsertRegionCompositeHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\xb2\x01\xda\x41.project,region,composite_health_check_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02h\"E/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks:\x1f\x63omposite_health_check_resource\x12\xda\x01\n\x04List\x12?.google.cloud.compute.v1.ListRegionCompositeHealthChecksRequest\x1a\x31.google.cloud.compute.v1.CompositeHealthCheckList\"^\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02G\x12\x45/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks\x12\xd2\x02\n\x05Patch\x12?.google.cloud.compute.v1.PatchRegionCompositeHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\xe3\x01\xda\x41\x45project,region,composite_health_check,composite_health_check_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x81\x01\x32^/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{composite_health_check}:\x1f\x63omposite_health_check_resource\x12\xe2\x02\n\x12TestIamPermissions\x12L.google.cloud.compute.v1.TestIamPermissionsRegionCompositeHealthCheckRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xcb\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x88\x01\"c/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xbf\x04\n\x0fRegionDiskTypes\x12\xc5\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetRegionDiskTypeRequest\x1a!.google.cloud.compute.v1.DiskType\"h\xda\x41\x18project,region,disk_type\x82\xd3\xe4\x93\x02G\x12\x45/compute/v1/projects/{project}/regions/{region}/diskTypes/{disk_type}\x12\xbc\x01\n\x04List\x12\x33.google.cloud.compute.v1.ListRegionDiskTypesRequest\x1a+.google.cloud.compute.v1.RegionDiskTypeList\"R\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02;\x12\x39/compute/v1/projects/{project}/regions/{region}/diskTypes\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x8f&\n\x0bRegionDisks\x12\xe6\x02\n\x13\x41\x64\x64ResourcePolicies\x12=.google.cloud.compute.v1.AddResourcePoliciesRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\xeb\x01\xda\x41Gproject,region,disk,region_disks_add_resource_policies_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x87\x01\"P/compute/v1/projects/{project}/regions/{region}/disks/{disk}/addResourcePolicies:3region_disks_add_resource_policies_request_resource\x12\x9c\x02\n\nBulkInsert\x12\x34.google.cloud.compute.v1.BulkInsertRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\xb3\x01\xda\x41\x31project,region,bulk_insert_disk_resource_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x66\"@/compute/v1/projects/{project}/regions/{region}/disks/bulkInsert:\"bulk_insert_disk_resource_resource\x12\x92\x02\n\x0e\x43reateSnapshot\x12\x38.google.cloud.compute.v1.CreateSnapshotRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41%project,region,disk,snapshot_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02`\"K/compute/v1/projects/{project}/regions/{region}/disks/{disk}/createSnapshot:\x11snapshot_resource\x12\xcd\x01\n\x06\x44\x65lete\x12\x30.google.cloud.compute.v1.DeleteRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"m\xda\x41\x13project,region,disk\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02>*\x12.google.cloud.compute.v1.StopAsyncReplicationRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\x82\x01\xda\x41\x13project,region,disk\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S\"Q/compute/v1/projects/{project}/regions/{region}/disks/{disk}/stopAsyncReplication\x12\xee\x02\n\x19StopGroupAsyncReplication\x12\x43.google.cloud.compute.v1.StopGroupAsyncReplicationRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\xe7\x01\xda\x41\x43project,region,disks_stop_group_async_replication_resource_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x87\x01\"O/compute/v1/projects/{project}/regions/{region}/disks/stopGroupAsyncReplication:4disks_stop_group_async_replication_resource_resource\x12\xc1\x02\n\x12TestIamPermissions\x12<.google.cloud.compute.v1.TestIamPermissionsRegionDiskRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xba\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02x\"S/compute/v1/projects/{project}/regions/{region}/disks/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xeb\x01\n\x06Update\x12\x30.google.cloud.compute.v1.UpdateRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\x8a\x01\xda\x41!project,region,disk,disk_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02M2.google.cloud.compute.v1.HealthAggregationPolicyAggregatedList\"U\xda\x41\x07project\x82\xd3\xe4\x93\x02\x45\x12\x43/compute/v1/projects/{project}/aggregated/healthAggregationPolicies\x12\x9f\x02\n\x06\x44\x65lete\x12\x43.google.cloud.compute.v1.DeleteRegionHealthAggregationPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x01\xda\x41(project,region,health_aggregation_policy\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02g*e/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{health_aggregation_policy}\x12\x94\x02\n\x03Get\x12@.google.cloud.compute.v1.GetRegionHealthAggregationPolicyRequest\x1a\x30.google.cloud.compute.v1.HealthAggregationPolicy\"\x98\x01\xda\x41(project,region,health_aggregation_policy\x82\xd3\xe4\x93\x02g\x12\x65/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{health_aggregation_policy}\x12\xb0\x02\n\x06Insert\x12\x43.google.cloud.compute.v1.InsertRegionHealthAggregationPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xbc\x01\xda\x41\x31project,region,health_aggregation_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02o\"I/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies:\"health_aggregation_policy_resource\x12\xe5\x01\n\x04List\x12\x43.google.cloud.compute.v1.ListRegionHealthAggregationPoliciesRequest\x1a\x34.google.cloud.compute.v1.HealthAggregationPolicyList\"b\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02K\x12I/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies\x12\xe5\x02\n\x05Patch\x12\x42.google.cloud.compute.v1.PatchRegionHealthAggregationPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xf3\x01\xda\x41Kproject,region,health_aggregation_policy,health_aggregation_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x8b\x01\x32\x65/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{health_aggregation_policy}:\"health_aggregation_policy_resource\x12\xe9\x02\n\x12TestIamPermissions\x12O.google.cloud.compute.v1.TestIamPermissionsRegionHealthAggregationPolicyRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xcf\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x8c\x01\"g/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xa0\x10\n\x19RegionHealthCheckServices\x12\xe5\x01\n\x0e\x41ggregatedList\x12G.google.cloud.compute.v1.AggregatedListRegionHealthCheckServicesRequest\x1a\x39.google.cloud.compute.v1.HealthCheckServiceAggregatedList\"O\xda\x41\x07project\x82\xd3\xe4\x93\x02?\x12=/compute/v1/projects/{project}/aggregated/healthCheckServices\x12\x8a\x02\n\x06\x44\x65lete\x12>.google.cloud.compute.v1.DeleteRegionHealthCheckServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\x9b\x01\xda\x41#project,region,health_check_service\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\\*Z/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{health_check_service}\x12\xfa\x01\n\x03Get\x12;.google.cloud.compute.v1.GetRegionHealthCheckServiceRequest\x1a+.google.cloud.compute.v1.HealthCheckService\"\x88\x01\xda\x41#project,region,health_check_service\x82\xd3\xe4\x93\x02\\\x12Z/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{health_check_service}\x12\x9b\x02\n\x06Insert\x12>.google.cloud.compute.v1.InsertRegionHealthCheckServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\xac\x01\xda\x41,project,region,health_check_service_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x64\"C/compute/v1/projects/{project}/regions/{region}/healthCheckServices:\x1dhealth_check_service_resource\x12\xd5\x01\n\x04List\x12=.google.cloud.compute.v1.ListRegionHealthCheckServicesRequest\x1a\x30.google.cloud.compute.v1.HealthCheckServicesList\"\\\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x45\x12\x43/compute/v1/projects/{project}/regions/{region}/healthCheckServices\x12\xc5\x02\n\x05Patch\x12=.google.cloud.compute.v1.PatchRegionHealthCheckServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\xd8\x01\xda\x41\x41project,region,health_check_service,health_check_service_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02{2Z/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{health_check_service}:\x1dhealth_check_service_resource\x12\xde\x02\n\x12TestIamPermissions\x12J.google.cloud.compute.v1.TestIamPermissionsRegionHealthCheckServiceRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc9\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x86\x01\"a/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x98\x0f\n\x12RegionHealthChecks\x12\xec\x01\n\x06\x44\x65lete\x12\x37.google.cloud.compute.v1.DeleteRegionHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\x84\x01\xda\x41\x1bproject,region,health_check\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02M*K/compute/v1/projects/{project}/regions/{region}/healthChecks/{health_check}\x12\xd4\x01\n\x03Get\x12\x34.google.cloud.compute.v1.GetRegionHealthCheckRequest\x1a$.google.cloud.compute.v1.HealthCheck\"q\xda\x41\x1bproject,region,health_check\x82\xd3\xe4\x93\x02M\x12K/compute/v1/projects/{project}/regions/{region}/healthChecks/{health_check}\x12\xfd\x01\n\x06Insert\x12\x37.google.cloud.compute.v1.InsertRegionHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\x95\x01\xda\x41$project,region,health_check_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02U\"\x12region_instance_group_managers_stop_instances_request_resource\x12\xbd\x03\n\x10SuspendInstances\x12J.google.cloud.compute.v1.SuspendInstancesRegionInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xb8\x02\xda\x41gproject,region,instance_group_manager,region_instance_group_managers_suspend_instances_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\xb4\x01\"o/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/suspendInstances:Aregion_instance_group_managers_suspend_instances_request_resource\x12\xd5\x03\n\x18UpdatePerInstanceConfigs\x12R.google.cloud.compute.v1.UpdatePerInstanceConfigsRegionInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xc0\x02\xda\x41gproject,region,instance_group_manager,region_instance_group_manager_update_instance_config_req_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\xbc\x01\"w/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/updatePerInstanceConfigs:Aregion_instance_group_manager_update_instance_config_req_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x9e\r\n\x14RegionInstanceGroups\x12\xde\x01\n\x03Get\x12\x36.google.cloud.compute.v1.GetRegionInstanceGroupRequest\x1a&.google.cloud.compute.v1.InstanceGroup\"w\xda\x41\x1dproject,region,instance_group\x82\xd3\xe4\x93\x02Q\x12O/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instance_group}\x12\xcb\x01\n\x04List\x12\x38.google.cloud.compute.v1.ListRegionInstanceGroupsRequest\x1a\x30.google.cloud.compute.v1.RegionInstanceGroupList\"W\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02@\x12>/compute/v1/projects/{project}/regions/{region}/instanceGroups\x12\x86\x03\n\rListInstances\x12\x41.google.cloud.compute.v1.ListInstancesRegionInstanceGroupsRequest\x1a:.google.cloud.compute.v1.RegionInstanceGroupsListInstances\"\xf5\x01\xda\x41Tproject,region,instance_group,region_instance_groups_list_instances_request_resource\x82\xd3\xe4\x93\x02\x97\x01\"]/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instance_group}/listInstances:6region_instance_groups_list_instances_request_resource\x12\x82\x03\n\rSetNamedPorts\x12@.google.cloud.compute.v1.SetNamedPortsRegionInstanceGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x8a\x02\xda\x41Uproject,region,instance_group,region_instance_groups_set_named_ports_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x98\x01\"]/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instance_group}/setNamedPorts:7region_instance_groups_set_named_ports_request_resource\x12\xd4\x02\n\x12TestIamPermissions\x12\x45.google.cloud.compute.v1.TestIamPermissionsRegionInstanceGroupRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc4\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x81\x01\"\\/compute/v1/projects/{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xe6\x08\n\x17RegionInstanceTemplates\x12\x80\x02\n\x06\x44\x65lete\x12<.google.cloud.compute.v1.DeleteRegionInstanceTemplateRequest\x1a\".google.cloud.compute.v1.Operation\"\x93\x01\xda\x41 project,region,instance_template\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02W*U/compute/v1/projects/{project}/regions/{region}/instanceTemplates/{instance_template}\x12\xee\x01\n\x03Get\x12\x39.google.cloud.compute.v1.GetRegionInstanceTemplateRequest\x1a).google.cloud.compute.v1.InstanceTemplate\"\x80\x01\xda\x41 project,region,instance_template\x82\xd3\xe4\x93\x02W\x12U/compute/v1/projects/{project}/regions/{region}/instanceTemplates/{instance_template}\x12\x91\x02\n\x06Insert\x12<.google.cloud.compute.v1.InsertRegionInstanceTemplateRequest\x1a\".google.cloud.compute.v1.Operation\"\xa4\x01\xda\x41)project,region,instance_template_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02_\"A/compute/v1/projects/{project}/regions/{region}/instanceTemplates:\x1ainstance_template_resource\x12\xce\x01\n\x04List\x12;.google.cloud.compute.v1.ListRegionInstanceTemplatesRequest\x1a-.google.cloud.compute.v1.InstanceTemplateList\"Z\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/regions/{region}/instanceTemplates\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb4\x03\n\x0fRegionInstances\x12\xac\x02\n\nBulkInsert\x12\x38.google.cloud.compute.v1.BulkInsertRegionInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xbf\x01\xda\x41\x35project,region,bulk_insert_instance_resource_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02n\"D/compute/v1/projects/{project}/regions/{region}/instances/bulkInsert:&bulk_insert_instance_resource_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x9f\x12\n\x16RegionInstantSnapshots\x12\xfc\x01\n\x06\x44\x65lete\x12;.google.cloud.compute.v1.DeleteRegionInstantSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\x1fproject,region,instant_snapshot\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02U*S/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{instant_snapshot}\x12\xe8\x01\n\x03Get\x12\x38.google.cloud.compute.v1.GetRegionInstantSnapshotRequest\x1a(.google.cloud.compute.v1.InstantSnapshot\"}\xda\x41\x1fproject,region,instant_snapshot\x82\xd3\xe4\x93\x02U\x12S/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{instant_snapshot}\x12\xee\x01\n\x0cGetIamPolicy\x12\x41.google.cloud.compute.v1.GetIamPolicyRegionInstantSnapshotRequest\x1a\x1f.google.cloud.compute.v1.Policy\"z\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02Z\x12X/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/getIamPolicy\x12\x8d\x02\n\x06Insert\x12;.google.cloud.compute.v1.InsertRegionInstantSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41(project,region,instant_snapshot_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02]\"@/compute/v1/projects/{project}/regions/{region}/instantSnapshots:\x19instant_snapshot_resource\x12\xcb\x01\n\x04List\x12:.google.cloud.compute.v1.ListRegionInstantSnapshotsRequest\x1a,.google.cloud.compute.v1.InstantSnapshotList\"Y\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/regions/{region}/instantSnapshots\x12\xb6\x02\n\x0cSetIamPolicy\x12\x41.google.cloud.compute.v1.SetIamPolicyRegionInstantSnapshotRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xc1\x01\xda\x41:project,region,resource,region_set_policy_request_resource\x82\xd3\xe4\x93\x02~\"X/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/setIamPolicy:\"region_set_policy_request_resource\x12\xc3\x02\n\tSetLabels\x12>.google.cloud.compute.v1.SetLabelsRegionInstantSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\xd1\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02{\"U/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/setLabels:\"region_set_labels_request_resource\x12\xd8\x02\n\x12TestIamPermissions\x12G.google.cloud.compute.v1.TestIamPermissionsRegionInstantSnapshotRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc6\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x83\x01\"^/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xa4\x13\n\x1bRegionNetworkEndpointGroups\x12\xcd\x03\n\x16\x41ttachNetworkEndpoints\x12P.google.cloud.compute.v1.AttachNetworkEndpointsRegionNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xbc\x02\xda\x41\x66project,region,network_endpoint_group,region_network_endpoint_groups_attach_endpoints_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\xb9\x01\"u/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}/attachNetworkEndpoints:@region_network_endpoint_groups_attach_endpoints_request_resource\x12\x92\x02\n\x06\x44\x65lete\x12@.google.cloud.compute.v1.DeleteRegionNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41%project,region,network_endpoint_group\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02`*^/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}\x12\xcd\x03\n\x16\x44\x65tachNetworkEndpoints\x12P.google.cloud.compute.v1.DetachNetworkEndpointsRegionNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xbc\x02\xda\x41\x66project,region,network_endpoint_group,region_network_endpoint_groups_detach_endpoints_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\xb9\x01\"u/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}/detachNetworkEndpoints:@region_network_endpoint_groups_detach_endpoints_request_resource\x12\x84\x02\n\x03Get\x12=.google.cloud.compute.v1.GetRegionNetworkEndpointGroupRequest\x1a-.google.cloud.compute.v1.NetworkEndpointGroup\"\x8e\x01\xda\x41%project,region,network_endpoint_group\x82\xd3\xe4\x93\x02`\x12^/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}\x12\xa3\x02\n\x06Insert\x12@.google.cloud.compute.v1.InsertRegionNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xb2\x01\xda\x41.project,region,network_endpoint_group_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02h\"E/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups:\x1fnetwork_endpoint_group_resource\x12\xda\x01\n\x04List\x12?.google.cloud.compute.v1.ListRegionNetworkEndpointGroupsRequest\x1a\x31.google.cloud.compute.v1.NetworkEndpointGroupList\"^\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02G\x12\x45/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups\x12\xd1\x02\n\x14ListNetworkEndpoints\x12O.google.cloud.compute.v1.ListNetworkEndpointsRegionNetworkEndpointGroupsRequest\x1a\x42.google.cloud.compute.v1.NetworkEndpointGroupsListNetworkEndpoints\"\xa3\x01\xda\x41%project,region,network_endpoint_group\x82\xd3\xe4\x93\x02u\"s/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}/listNetworkEndpoints\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xf2\'\n\x1dRegionNetworkFirewallPolicies\x12\xeb\x02\n\x0e\x41\x64\x64\x41ssociation\x12I.google.cloud.compute.v1.AddAssociationRegionNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xe9\x01\xda\x41\x43project,region,firewall_policy,firewall_policy_association_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x89\x01\"a/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewall_policy}/addAssociation:$firewall_policy_association_resource\x12\xc7\x02\n\x07\x41\x64\x64Rule\x12\x42.google.cloud.compute.v1.AddRuleRegionNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xd3\x01\xda\x41.google.cloud.compute.v1.GetRegionNetworkFirewallPolicyRequest\x1a\'.google.cloud.compute.v1.FirewallPolicy\"{\xda\x41\x1eproject,region,firewall_policy\x82\xd3\xe4\x93\x02T\x12R/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewall_policy}\x12\x9c\x02\n\x0eGetAssociation\x12I.google.cloud.compute.v1.GetAssociationRegionNetworkFirewallPolicyRequest\x1a\x32.google.cloud.compute.v1.FirewallPolicyAssociation\"\x8a\x01\xda\x41\x1eproject,region,firewall_policy\x82\xd3\xe4\x93\x02\x63\x12\x61/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewall_policy}/getAssociation\x12\xb7\x02\n\x15GetEffectiveFirewalls\x12P.google.cloud.compute.v1.GetEffectiveFirewallsRegionNetworkFirewallPolicyRequest\x1aS.google.cloud.compute.v1.RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse\"w\xda\x41\x16project,region,network\x82\xd3\xe4\x93\x02X\x12V/compute/v1/projects/{project}/regions/{region}/firewallPolicies/getEffectiveFirewalls\x12\xf4\x01\n\x0cGetIamPolicy\x12G.google.cloud.compute.v1.GetIamPolicyRegionNetworkFirewallPolicyRequest\x1a\x1f.google.cloud.compute.v1.Policy\"z\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02Z\x12X/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{resource}/getIamPolicy\x12\x80\x02\n\x07GetRule\x12\x42.google.cloud.compute.v1.GetRuleRegionNetworkFirewallPolicyRequest\x1a+.google.cloud.compute.v1.FirewallPolicyRule\"\x83\x01\xda\x41\x1eproject,region,firewall_policy\x82\xd3\xe4\x93\x02\\\x12Z/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewall_policy}/getRule\x12\x91\x02\n\x06Insert\x12\x41.google.cloud.compute.v1.InsertRegionNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x01\xda\x41\'project,region,firewall_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\\\"@/compute/v1/projects/{project}/regions/{region}/firewallPolicies:\x18\x66irewall_policy_resource\x12\xd1\x01\n\x04List\x12\x41.google.cloud.compute.v1.ListRegionNetworkFirewallPoliciesRequest\x1a+.google.cloud.compute.v1.FirewallPolicyList\"Y\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/regions/{region}/firewallPolicies\x12\xb1\x02\n\x05Patch\x12@.google.cloud.compute.v1.PatchRegionNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xc1\x01\xda\x41\x37project,region,firewall_policy,firewall_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02n2R/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewall_policy}:\x18\x66irewall_policy_resource\x12\xcd\x02\n\tPatchRule\x12\x44.google.cloud.compute.v1.PatchRuleRegionNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xd5\x01\xda\x41.google.cloud.compute.v1.RemoveRuleRegionSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x99\x01\xda\x41\x1eproject,region,security_policy\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02_\"]/compute/v1/projects/{project}/regions/{region}/securityPolicies/{security_policy}/removeRule\x12\xc2\x02\n\tSetLabels\x12=.google.cloud.compute.v1.SetLabelsRegionSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xd1\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02{\"U/compute/v1/projects/{project}/regions/{region}/securityPolicies/{resource}/setLabels:\"region_set_labels_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xc3\x08\n\x15RegionSslCertificates\x12\xf8\x01\n\x06\x44\x65lete\x12:.google.cloud.compute.v1.DeleteRegionSslCertificateRequest\x1a\".google.cloud.compute.v1.Operation\"\x8d\x01\xda\x41\x1eproject,region,ssl_certificate\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S*Q/compute/v1/projects/{project}/regions/{region}/sslCertificates/{ssl_certificate}\x12\xe3\x01\n\x03Get\x12\x37.google.cloud.compute.v1.GetRegionSslCertificateRequest\x1a\'.google.cloud.compute.v1.SslCertificate\"z\xda\x41\x1eproject,region,ssl_certificate\x82\xd3\xe4\x93\x02S\x12Q/compute/v1/projects/{project}/regions/{region}/sslCertificates/{ssl_certificate}\x12\x89\x02\n\x06Insert\x12:.google.cloud.compute.v1.InsertRegionSslCertificateRequest\x1a\".google.cloud.compute.v1.Operation\"\x9e\x01\xda\x41\'project,region,ssl_certificate_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02[\"?/compute/v1/projects/{project}/regions/{region}/sslCertificates:\x18ssl_certificate_resource\x12\xc8\x01\n\x04List\x12\x39.google.cloud.compute.v1.ListRegionSslCertificatesRequest\x1a+.google.cloud.compute.v1.SslCertificateList\"X\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/projects/{project}/regions/{region}/sslCertificates\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x95\x0c\n\x11RegionSslPolicies\x12\xe4\x01\n\x06\x44\x65lete\x12\x35.google.cloud.compute.v1.DeleteRegionSslPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x7f\xda\x41\x19project,region,ssl_policy\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02J*H/compute/v1/projects/{project}/regions/{region}/sslPolicies/{ssl_policy}\x12\xcb\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetRegionSslPolicyRequest\x1a\".google.cloud.compute.v1.SslPolicy\"l\xda\x41\x19project,region,ssl_policy\x82\xd3\xe4\x93\x02J\x12H/compute/v1/projects/{project}/regions/{region}/sslPolicies/{ssl_policy}\x12\xf6\x01\n\x06Insert\x12\x35.google.cloud.compute.v1.InsertRegionSslPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\"project,region,ssl_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02R\";/compute/v1/projects/{project}/regions/{region}/sslPolicies:\x13ssl_policy_resource\x12\xbd\x01\n\x04List\x12\x35.google.cloud.compute.v1.ListRegionSslPoliciesRequest\x1a(.google.cloud.compute.v1.SslPoliciesList\"T\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/regions/{region}/sslPolicies\x12\x8e\x02\n\x15ListAvailableFeatures\x12\x46.google.cloud.compute.v1.ListAvailableFeaturesRegionSslPoliciesRequest\x1a\x41.google.cloud.compute.v1.SslPoliciesListAvailableFeaturesResponse\"j\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02S\x12Q/compute/v1/projects/{project}/regions/{region}/sslPolicies/listAvailableFeatures\x12\x8c\x02\n\x05Patch\x12\x34.google.cloud.compute.v1.PatchRegionSslPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xa8\x01\xda\x41-project,region,ssl_policy,ssl_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02_2H/compute/v1/projects/{project}/regions/{region}/sslPolicies/{ssl_policy}:\x13ssl_policy_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xaa\x0b\n\x17RegionTargetHttpProxies\x12\xff\x01\n\x06\x44\x65lete\x12;.google.cloud.compute.v1.DeleteRegionTargetHttpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\x93\x01\xda\x41 project,region,target_http_proxy\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02W*U/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{target_http_proxy}\x12\xec\x01\n\x03Get\x12\x38.google.cloud.compute.v1.GetRegionTargetHttpProxyRequest\x1a(.google.cloud.compute.v1.TargetHttpProxy\"\x80\x01\xda\x41 project,region,target_http_proxy\x82\xd3\xe4\x93\x02W\x12U/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{target_http_proxy}\x12\x90\x02\n\x06Insert\x12;.google.cloud.compute.v1.InsertRegionTargetHttpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xa4\x01\xda\x41)project,region,target_http_proxy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02_\"A/compute/v1/projects/{project}/regions/{region}/targetHttpProxies:\x1atarget_http_proxy_resource\x12\xcd\x01\n\x04List\x12;.google.cloud.compute.v1.ListRegionTargetHttpProxiesRequest\x1a,.google.cloud.compute.v1.TargetHttpProxyList\"Z\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/regions/{region}/targetHttpProxies\x12\xc6\x02\n\tSetUrlMap\x12>.google.cloud.compute.v1.SetUrlMapRegionTargetHttpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xd4\x01\xda\x41;project,region,target_http_proxy,url_map_reference_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02}\"_/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{target_http_proxy}/setUrlMap:\x1aurl_map_reference_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb3\x11\n\x18RegionTargetHttpsProxies\x12\x83\x02\n\x06\x44\x65lete\x12<.google.cloud.compute.v1.DeleteRegionTargetHttpsProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\x96\x01\xda\x41!project,region,target_https_proxy\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02Y*W/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}\x12\xf1\x01\n\x03Get\x12\x39.google.cloud.compute.v1.GetRegionTargetHttpsProxyRequest\x1a).google.cloud.compute.v1.TargetHttpsProxy\"\x83\x01\xda\x41!project,region,target_https_proxy\x82\xd3\xe4\x93\x02Y\x12W/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}\x12\x94\x02\n\x06Insert\x12<.google.cloud.compute.v1.InsertRegionTargetHttpsProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xa7\x01\xda\x41*project,region,target_https_proxy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x61\"B/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies:\x1btarget_https_proxy_resource\x12\xd0\x01\n\x04List\x12<.google.cloud.compute.v1.ListRegionTargetHttpsProxiesRequest\x1a-.google.cloud.compute.v1.TargetHttpsProxyList\"[\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x44\x12\x42/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies\x12\xba\x02\n\x05Patch\x12;.google.cloud.compute.v1.PatchRegionTargetHttpsProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xcf\x01\xda\x41=project,region,target_https_proxy,target_https_proxy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02v2W/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}:\x1btarget_https_proxy_resource\x12\xb4\x03\n\x12SetSslCertificates\x12H.google.cloud.compute.v1.SetSslCertificatesRegionTargetHttpsProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xaf\x02\xda\x41\x63project,region,target_https_proxy,region_target_https_proxies_set_ssl_certificates_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\xaf\x01\"j/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}/setSslCertificates:Aregion_target_https_proxies_set_ssl_certificates_request_resource\x12\xca\x02\n\tSetUrlMap\x12?.google.cloud.compute.v1.SetUrlMapRegionTargetHttpsProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xd7\x01\xda\x41.google.cloud.compute.v1.AggregatedListResourcePoliciesRequest\x1a\x35.google.cloud.compute.v1.ResourcePolicyAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/resourcePolicies\x12\xf3\x01\n\x06\x44\x65lete\x12\x34.google.cloud.compute.v1.DeleteResourcePolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x8e\x01\xda\x41\x1eproject,region,resource_policy\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02T*R/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource_policy}\x12\xde\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetResourcePolicyRequest\x1a\'.google.cloud.compute.v1.ResourcePolicy\"{\xda\x41\x1eproject,region,resource_policy\x82\xd3\xe4\x93\x02T\x12R/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource_policy}\x12\xe7\x01\n\x0cGetIamPolicy\x12:.google.cloud.compute.v1.GetIamPolicyResourcePolicyRequest\x1a\x1f.google.cloud.compute.v1.Policy\"z\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02Z\x12X/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/getIamPolicy\x12\x84\x02\n\x06Insert\x12\x34.google.cloud.compute.v1.InsertResourcePolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x01\xda\x41\'project,region,resource_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\\\"@/compute/v1/projects/{project}/regions/{region}/resourcePolicies:\x18resource_policy_resource\x12\xc4\x01\n\x04List\x12\x34.google.cloud.compute.v1.ListResourcePoliciesRequest\x1a+.google.cloud.compute.v1.ResourcePolicyList\"Y\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/regions/{region}/resourcePolicies\x12\xa4\x02\n\x05Patch\x12\x33.google.cloud.compute.v1.PatchResourcePolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xc1\x01\xda\x41\x37project,region,resource_policy,resource_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02n2R/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource_policy}:\x18resource_policy_resource\x12\xaf\x02\n\x0cSetIamPolicy\x12:.google.cloud.compute.v1.SetIamPolicyResourcePolicyRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xc1\x01\xda\x41:project,region,resource,region_set_policy_request_resource\x82\xd3\xe4\x93\x02~\"X/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/setIamPolicy:\"region_set_policy_request_resource\x12\xd1\x02\n\x12TestIamPermissions\x12@.google.cloud.compute.v1.TestIamPermissionsResourcePolicyRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc6\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x83\x01\"^/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x8e \n\x07Routers\x12\xbb\x01\n\x0e\x41ggregatedList\x12\x35.google.cloud.compute.v1.AggregatedListRoutersRequest\x1a-.google.cloud.compute.v1.RouterAggregatedList\"C\xda\x41\x07project\x82\xd3\xe4\x93\x02\x33\x12\x31/compute/v1/projects/{project}/aggregated/routers\x12\xcf\x01\n\x06\x44\x65lete\x12,.google.cloud.compute.v1.DeleteRouterRequest\x1a\".google.cloud.compute.v1.Operation\"s\xda\x41\x15project,region,router\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x42*@/compute/v1/projects/{project}/regions/{region}/routers/{router}\x12\xf8\x01\n\x11\x44\x65leteRoutePolicy\x12\x37.google.cloud.compute.v1.DeleteRoutePolicyRouterRequest\x1a\".google.cloud.compute.v1.Operation\"\x85\x01\xda\x41\x15project,region,router\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02T\"R/compute/v1/projects/{project}/regions/{region}/routers/{router}/deleteRoutePolicy\x12\xb3\x01\n\x03Get\x12).google.cloud.compute.v1.GetRouterRequest\x1a\x1f.google.cloud.compute.v1.Router\"`\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/regions/{region}/routers/{router}\x12\xdd\x01\n\x0cGetNatIpInfo\x12\x32.google.cloud.compute.v1.GetNatIpInfoRouterRequest\x1a*.google.cloud.compute.v1.NatIpInfoResponse\"m\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02O\x12M/compute/v1/projects/{project}/regions/{region}/routers/{router}/getNatIpInfo\x12\xf5\x01\n\x11GetNatMappingInfo\x12\x38.google.cloud.compute.v1.GetNatMappingInfoRoutersRequest\x1a\x32.google.cloud.compute.v1.VmEndpointNatMappingsList\"r\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02T\x12R/compute/v1/projects/{project}/regions/{region}/routers/{router}/getNatMappingInfo\x12\xef\x01\n\x0eGetRoutePolicy\x12\x34.google.cloud.compute.v1.GetRoutePolicyRouterRequest\x1a\x36.google.cloud.compute.v1.RoutersGetRoutePolicyResponse\"o\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02Q\x12O/compute/v1/projects/{project}/regions/{region}/routers/{router}/getRoutePolicy\x12\xe9\x01\n\x0fGetRouterStatus\x12\x35.google.cloud.compute.v1.GetRouterStatusRouterRequest\x1a-.google.cloud.compute.v1.RouterStatusResponse\"p\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02R\x12P/compute/v1/projects/{project}/regions/{region}/routers/{router}/getRouterStatus\x12\xe1\x01\n\x06Insert\x12,.google.cloud.compute.v1.InsertRouterRequest\x1a\".google.cloud.compute.v1.Operation\"\x84\x01\xda\x41\x1eproject,region,router_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02J\"7/compute/v1/projects/{project}/regions/{region}/routers:\x0frouter_resource\x12\xaa\x01\n\x04List\x12+.google.cloud.compute.v1.ListRoutersRequest\x1a#.google.cloud.compute.v1.RouterList\"P\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x39\x12\x37/compute/v1/projects/{project}/regions/{region}/routers\x12\xe4\x01\n\rListBgpRoutes\x12\x34.google.cloud.compute.v1.ListBgpRoutesRoutersRequest\x1a-.google.cloud.compute.v1.RoutersListBgpRoutes\"n\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02P\x12N/compute/v1/projects/{project}/regions/{region}/routers/{router}/listBgpRoutes\x12\xf4\x01\n\x11ListRoutePolicies\x12\x38.google.cloud.compute.v1.ListRoutePoliciesRoutersRequest\x1a\x31.google.cloud.compute.v1.RoutersListRoutePolicies\"r\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02T\x12R/compute/v1/projects/{project}/regions/{region}/routers/{router}/listRoutePolicies\x12\xef\x01\n\x05Patch\x12+.google.cloud.compute.v1.PatchRouterRequest\x1a\".google.cloud.compute.v1.Operation\"\x94\x01\xda\x41%project,region,router,router_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S2@/compute/v1/projects/{project}/regions/{region}/routers/{router}:\x0frouter_resource\x12\xa2\x02\n\x10PatchRoutePolicy\x12\x36.google.cloud.compute.v1.PatchRoutePolicyRouterRequest\x1a\".google.cloud.compute.v1.Operation\"\xb1\x01\xda\x41+project,region,router,route_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02j\"Q/compute/v1/projects/{project}/regions/{region}/routers/{router}/patchRoutePolicy:\x15route_policy_resource\x12\xf5\x01\n\x07Preview\x12-.google.cloud.compute.v1.PreviewRouterRequest\x1a/.google.cloud.compute.v1.RoutersPreviewResponse\"\x89\x01\xda\x41%project,region,router,router_resource\x82\xd3\xe4\x93\x02[\"H/compute/v1/projects/{project}/regions/{region}/routers/{router}/preview:\x0frouter_resource\x12\xf1\x01\n\x06Update\x12,.google.cloud.compute.v1.UpdateRouterRequest\x1a\".google.cloud.compute.v1.Operation\"\x94\x01\xda\x41%project,region,router,router_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S\x1a@/compute/v1/projects/{project}/regions/{region}/routers/{router}:\x0frouter_resource\x12\xa5\x02\n\x11UpdateRoutePolicy\x12\x37.google.cloud.compute.v1.UpdateRoutePolicyRouterRequest\x1a\".google.cloud.compute.v1.Operation\"\xb2\x01\xda\x41+project,region,router,route_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02k\"R/compute/v1/projects/{project}/regions/{region}/routers/{router}/updateRoutePolicy:\x15route_policy_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xef\x08\n\x06Routes\x12\xba\x01\n\x06\x44\x65lete\x12+.google.cloud.compute.v1.DeleteRouteRequest\x1a\".google.cloud.compute.v1.Operation\"_\xda\x41\rproject,route\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x36*4/compute/v1/projects/{project}/global/routes/{route}\x12\x9d\x01\n\x03Get\x12(.google.cloud.compute.v1.GetRouteRequest\x1a\x1e.google.cloud.compute.v1.Route\"L\xda\x41\rproject,route\x82\xd3\xe4\x93\x02\x36\x12\x34/compute/v1/projects/{project}/global/routes/{route}\x12\xcb\x01\n\x06Insert\x12+.google.cloud.compute.v1.InsertRouteRequest\x1a\".google.cloud.compute.v1.Operation\"p\xda\x41\x16project,route_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02>\",/compute/v1/projects/{project}/global/routes:\x0eroute_resource\x12\x96\x01\n\x04List\x12*.google.cloud.compute.v1.ListRoutesRequest\x1a\".google.cloud.compute.v1.RouteList\">\xda\x41\x07project\x82\xd3\xe4\x93\x02.\x12,/compute/v1/projects/{project}/global/routes\x12\xac\x02\n\x12TestIamPermissions\x12\x37.google.cloud.compute.v1.TestIamPermissionsRouteRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xaa\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02o\"J/compute/v1/projects/{project}/global/routes/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xef\x18\n\x10SecurityPolicies\x12\xa9\x02\n\x07\x41\x64\x64Rule\x12\x35.google.cloud.compute.v1.AddRuleSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xc2\x01\xda\x41\x35project,security_policy,security_policy_rule_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02q\"P/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/addRule:\x1dsecurity_policy_rule_resource\x12\xd7\x01\n\x0e\x41ggregatedList\x12>.google.cloud.compute.v1.AggregatedListSecurityPoliciesRequest\x1a\x37.google.cloud.compute.v1.SecurityPoliciesAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/securityPolicies\x12\xe1\x01\n\x06\x44\x65lete\x12\x34.google.cloud.compute.v1.DeleteSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"}\xda\x41\x17project,security_policy\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02J*H/compute/v1/projects/{project}/global/securityPolicies/{security_policy}\x12\xcd\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetSecurityPolicyRequest\x1a\'.google.cloud.compute.v1.SecurityPolicy\"j\xda\x41\x17project,security_policy\x82\xd3\xe4\x93\x02J\x12H/compute/v1/projects/{project}/global/securityPolicies/{security_policy}\x12\xe1\x01\n\x07GetRule\x12\x35.google.cloud.compute.v1.GetRuleSecurityPolicyRequest\x1a+.google.cloud.compute.v1.SecurityPolicyRule\"r\xda\x41\x17project,security_policy\x82\xd3\xe4\x93\x02R\x12P/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/getRule\x12\xf3\x01\n\x06Insert\x12\x34.google.cloud.compute.v1.InsertSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x8e\x01\xda\x41 project,security_policy_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02R\"6/compute/v1/projects/{project}/global/securityPolicies:\x18security_policy_resource\x12\xb3\x01\n\x04List\x12\x34.google.cloud.compute.v1.ListSecurityPoliciesRequest\x1a+.google.cloud.compute.v1.SecurityPolicyList\"H\xda\x41\x07project\x82\xd3\xe4\x93\x02\x38\x12\x36/compute/v1/projects/{project}/global/securityPolicies\x12\xae\x02\n\x1fListPreconfiguredExpressionSets\x12O.google.cloud.compute.v1.ListPreconfiguredExpressionSetsSecurityPoliciesRequest\x1aP.google.cloud.compute.v1.SecurityPoliciesListPreconfiguredExpressionSetsResponse\"h\xda\x41\x07project\x82\xd3\xe4\x93\x02X\x12V/compute/v1/projects/{project}/global/securityPolicies/listPreconfiguredExpressionSets\x12\x93\x02\n\x05Patch\x12\x33.google.cloud.compute.v1.PatchSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xb0\x01\xda\x41\x30project,security_policy,security_policy_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x64\x32H/compute/v1/projects/{project}/global/securityPolicies/{security_policy}:\x18security_policy_resource\x12\xaf\x02\n\tPatchRule\x12\x37.google.cloud.compute.v1.PatchRuleSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xc4\x01\xda\x41\x35project,security_policy,security_policy_rule_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02s\"R/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/patchRule:\x1dsecurity_policy_rule_resource\x12\xf5\x01\n\nRemoveRule\x12\x38.google.cloud.compute.v1.RemoveRuleSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x01\xda\x41\x17project,security_policy\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02U\"S/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/removeRule\x12\xab\x02\n\tSetLabels\x12\x37.google.cloud.compute.v1.SetLabelsSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xc0\x01\xda\x41\x33project,resource,global_set_labels_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02q\"K/compute/v1/projects/{project}/global/securityPolicies/{resource}/setLabels:\"global_set_labels_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xf0\x13\n\x12ServiceAttachments\x12\xdc\x01\n\x0e\x41ggregatedList\x12@.google.cloud.compute.v1.AggregatedListServiceAttachmentsRequest\x1a\x38.google.cloud.compute.v1.ServiceAttachmentAggregatedList\"N\xda\x41\x07project\x82\xd3\xe4\x93\x02>\x12/compute/v1/projects/{project}/global/sslPolicies/{ssl_policy}\x12\xb4\x01\n\x03Get\x12,.google.cloud.compute.v1.GetSslPolicyRequest\x1a\".google.cloud.compute.v1.SslPolicy\"[\xda\x41\x12project,ssl_policy\x82\xd3\xe4\x93\x02@\x12>/compute/v1/projects/{project}/global/sslPolicies/{ssl_policy}\x12\xde\x01\n\x06Insert\x12/.google.cloud.compute.v1.InsertSslPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x7f\xda\x41\x1bproject,ssl_policy_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02H\"1/compute/v1/projects/{project}/global/sslPolicies:\x13ssl_policy_resource\x12\xa6\x01\n\x04List\x12/.google.cloud.compute.v1.ListSslPoliciesRequest\x1a(.google.cloud.compute.v1.SslPoliciesList\"C\xda\x41\x07project\x82\xd3\xe4\x93\x02\x33\x12\x31/compute/v1/projects/{project}/global/sslPolicies\x12\xf7\x01\n\x15ListAvailableFeatures\x12@.google.cloud.compute.v1.ListAvailableFeaturesSslPoliciesRequest\x1a\x41.google.cloud.compute.v1.SslPoliciesListAvailableFeaturesResponse\"Y\xda\x41\x07project\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/global/sslPolicies/listAvailableFeatures\x12\xf5\x01\n\x05Patch\x12..google.cloud.compute.v1.PatchSslPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x97\x01\xda\x41&project,ssl_policy,ssl_policy_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02U2>/compute/v1/projects/{project}/global/sslPolicies/{ssl_policy}:\x13ssl_policy_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb5\x06\n\x10StoragePoolTypes\x12\xd6\x01\n\x0e\x41ggregatedList\x12>.google.cloud.compute.v1.AggregatedListStoragePoolTypesRequest\x1a\x36.google.cloud.compute.v1.StoragePoolTypeAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/storagePoolTypes\x12\xde\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetStoragePoolTypeRequest\x1a(.google.cloud.compute.v1.StoragePoolType\"y\xda\x41\x1eproject,zone,storage_pool_type\x82\xd3\xe4\x93\x02R\x12P/compute/v1/projects/{project}/zones/{zone}/storagePoolTypes/{storage_pool_type}\x12\xbf\x01\n\x04List\x12\x34.google.cloud.compute.v1.ListStoragePoolTypesRequest\x1a,.google.cloud.compute.v1.StoragePoolTypeList\"S\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02>\x12\x12.google.cloud.compute.v1.AggregatedListTargetTcpProxiesRequest\x1a\x35.google.cloud.compute.v1.TargetTcpProxyAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/targetTcpProxies\x12\xe3\x01\n\x06\x44\x65lete\x12\x34.google.cloud.compute.v1.DeleteTargetTcpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\x7f\xda\x41\x18project,target_tcp_proxy\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02K*I/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}\x12\xcf\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetTargetTcpProxyRequest\x1a\'.google.cloud.compute.v1.TargetTcpProxy\"l\xda\x41\x18project,target_tcp_proxy\x82\xd3\xe4\x93\x02K\x12I/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}\x12\xf5\x01\n\x06Insert\x12\x34.google.cloud.compute.v1.InsertTargetTcpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41!project,target_tcp_proxy_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02S\"6/compute/v1/projects/{project}/global/targetTcpProxies:\x19target_tcp_proxy_resource\x12\xb3\x01\n\x04List\x12\x34.google.cloud.compute.v1.ListTargetTcpProxiesRequest\x1a+.google.cloud.compute.v1.TargetTcpProxyList\"H\xda\x41\x07project\x82\xd3\xe4\x93\x02\x38\x12\x36/compute/v1/projects/{project}/global/targetTcpProxies\x12\xfe\x02\n\x11SetBackendService\x12?.google.cloud.compute.v1.SetBackendServiceTargetTcpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\x83\x02\xda\x41Pproject,target_tcp_proxy,target_tcp_proxies_set_backend_service_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x96\x01\"[/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}/setBackendService:7target_tcp_proxies_set_backend_service_request_resource\x12\xef\x02\n\x0eSetProxyHeader\x12<.google.cloud.compute.v1.SetProxyHeaderTargetTcpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xfa\x01\xda\x41Mproject,target_tcp_proxy,target_tcp_proxies_set_proxy_header_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x90\x01\"X/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}/setProxyHeader:4target_tcp_proxies_set_proxy_header_request_resource\x12\xbf\x02\n\x12TestIamPermissions\x12@.google.cloud.compute.v1.TestIamPermissionsTargetTcpProxyRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb4\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02y\"T/compute/v1/projects/{project}/global/targetTcpProxies/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xec\x0c\n\x11TargetVpnGateways\x12\xd9\x01\n\x0e\x41ggregatedList\x12?.google.cloud.compute.v1.AggregatedListTargetVpnGatewaysRequest\x1a\x37.google.cloud.compute.v1.TargetVpnGatewayAggregatedList\"M\xda\x41\x07project\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/aggregated/targetVpnGateways\x12\xfc\x01\n\x06\x44\x65lete\x12\x36.google.cloud.compute.v1.DeleteTargetVpnGatewayRequest\x1a\".google.cloud.compute.v1.Operation\"\x95\x01\xda\x41!project,region,target_vpn_gateway\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02X*V/compute/v1/projects/{project}/regions/{region}/targetVpnGateways/{target_vpn_gateway}\x12\xea\x01\n\x03Get\x12\x33.google.cloud.compute.v1.GetTargetVpnGatewayRequest\x1a).google.cloud.compute.v1.TargetVpnGateway\"\x82\x01\xda\x41!project,region,target_vpn_gateway\x82\xd3\xe4\x93\x02X\x12V/compute/v1/projects/{project}/regions/{region}/targetVpnGateways/{target_vpn_gateway}\x12\x8d\x02\n\x06Insert\x12\x36.google.cloud.compute.v1.InsertTargetVpnGatewayRequest\x1a\".google.cloud.compute.v1.Operation\"\xa6\x01\xda\x41*project,region,target_vpn_gateway_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02`\"A/compute/v1/projects/{project}/regions/{region}/targetVpnGateways:\x1btarget_vpn_gateway_resource\x12\xc8\x01\n\x04List\x12\x35.google.cloud.compute.v1.ListTargetVpnGatewaysRequest\x1a-.google.cloud.compute.v1.TargetVpnGatewayList\"Z\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/regions/{region}/targetVpnGateways\x12\xbf\x02\n\tSetLabels\x12\x39.google.cloud.compute.v1.SetLabelsTargetVpnGatewayRequest\x1a\".google.cloud.compute.v1.Operation\"\xd2\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02|\"V/compute/v1/projects/{project}/regions/{region}/targetVpnGateways/{resource}/setLabels:\"region_set_labels_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xcf\x12\n\x07UrlMaps\x12\xbc\x01\n\x0e\x41ggregatedList\x12\x35.google.cloud.compute.v1.AggregatedListUrlMapsRequest\x1a..google.cloud.compute.v1.UrlMapsAggregatedList\"C\xda\x41\x07project\x82\xd3\xe4\x93\x02\x33\x12\x31/compute/v1/projects/{project}/aggregated/urlMaps\x12\xc0\x01\n\x06\x44\x65lete\x12,.google.cloud.compute.v1.DeleteUrlMapRequest\x1a\".google.cloud.compute.v1.Operation\"d\xda\x41\x0fproject,url_map\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x39*7/compute/v1/projects/{project}/global/urlMaps/{url_map}\x12\xa4\x01\n\x03Get\x12).google.cloud.compute.v1.GetUrlMapRequest\x1a\x1f.google.cloud.compute.v1.UrlMap\"Q\xda\x41\x0fproject,url_map\x82\xd3\xe4\x93\x02\x39\x12\x37/compute/v1/projects/{project}/global/urlMaps/{url_map}\x12\xd1\x01\n\x06Insert\x12,.google.cloud.compute.v1.InsertUrlMapRequest\x1a\".google.cloud.compute.v1.Operation\"u\xda\x41\x18project,url_map_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x41\"-/compute/v1/projects/{project}/global/urlMaps:\x10url_map_resource\x12\xa6\x02\n\x0fInvalidateCache\x12\x35.google.cloud.compute.v1.InvalidateCacheUrlMapRequest\x1a\".google.cloud.compute.v1.Operation\"\xb7\x01\xda\x41\x30project,url_map,cache_invalidation_rule_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02k\"G/compute/v1/projects/{project}/global/urlMaps/{url_map}/invalidateCache: cache_invalidation_rule_resource\x12\x99\x01\n\x04List\x12+.google.cloud.compute.v1.ListUrlMapsRequest\x1a#.google.cloud.compute.v1.UrlMapList\"?\xda\x41\x07project\x82\xd3\xe4\x93\x02/\x12-/compute/v1/projects/{project}/global/urlMaps\x12\xe2\x01\n\x05Patch\x12+.google.cloud.compute.v1.PatchUrlMapRequest\x1a\".google.cloud.compute.v1.Operation\"\x87\x01\xda\x41 project,url_map,url_map_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02K27/compute/v1/projects/{project}/global/urlMaps/{url_map}:\x10url_map_resource\x12\xae\x02\n\x12TestIamPermissions\x12\x38.google.cloud.compute.v1.TestIamPermissionsUrlMapRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xab\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02p\"K/compute/v1/projects/{project}/global/urlMaps/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xe4\x01\n\x06Update\x12,.google.cloud.compute.v1.UpdateUrlMapRequest\x1a\".google.cloud.compute.v1.Operation\"\x87\x01\xda\x41 project,url_map,url_map_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02K\x1a\x37/compute/v1/projects/{project}/global/urlMaps/{url_map}:\x10url_map_resource\x12\x90\x02\n\x08Validate\x12..google.cloud.compute.v1.ValidateUrlMapRequest\x1a\x30.google.cloud.compute.v1.UrlMapsValidateResponse\"\xa1\x01\xda\x41\x32project,url_map,url_maps_validate_request_resource\x82\xd3\xe4\x93\x02\x66\"@/compute/v1/projects/{project}/global/urlMaps/{url_map}/validate:\"url_maps_validate_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x9f\x10\n\x0bVpnGateways\x12\xc7\x01\n\x0e\x41ggregatedList\x12\x39.google.cloud.compute.v1.AggregatedListVpnGatewaysRequest\x1a\x31.google.cloud.compute.v1.VpnGatewayAggregatedList\"G\xda\x41\x07project\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/aggregated/vpnGateways\x12\xe2\x01\n\x06\x44\x65lete\x12\x30.google.cloud.compute.v1.DeleteVpnGatewayRequest\x1a\".google.cloud.compute.v1.Operation\"\x81\x01\xda\x41\x1aproject,region,vpn_gateway\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02K*I/compute/v1/projects/{project}/regions/{region}/vpnGateways/{vpn_gateway}\x12\xc9\x01\n\x03Get\x12-.google.cloud.compute.v1.GetVpnGatewayRequest\x1a#.google.cloud.compute.v1.VpnGateway\"n\xda\x41\x1aproject,region,vpn_gateway\x82\xd3\xe4\x93\x02K\x12I/compute/v1/projects/{project}/regions/{region}/vpnGateways/{vpn_gateway}\x12\xf1\x01\n\tGetStatus\x12\x33.google.cloud.compute.v1.GetStatusVpnGatewayRequest\x1a\x35.google.cloud.compute.v1.VpnGatewaysGetStatusResponse\"x\xda\x41\x1aproject,region,vpn_gateway\x82\xd3\xe4\x93\x02U\x12S/compute/v1/projects/{project}/regions/{region}/vpnGateways/{vpn_gateway}/getStatus\x12\xf3\x01\n\x06Insert\x12\x30.google.cloud.compute.v1.InsertVpnGatewayRequest\x1a\".google.cloud.compute.v1.Operation\"\x92\x01\xda\x41#project,region,vpn_gateway_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S\";/compute/v1/projects/{project}/regions/{region}/vpnGateways:\x14vpn_gateway_resource\x12\xb6\x01\n\x04List\x12/.google.cloud.compute.v1.ListVpnGatewaysRequest\x1a\'.google.cloud.compute.v1.VpnGatewayList\"T\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/regions/{region}/vpnGateways\x12\xb3\x02\n\tSetLabels\x12\x33.google.cloud.compute.v1.SetLabelsVpnGatewayRequest\x1a\".google.cloud.compute.v1.Operation\"\xcc\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02v\"P/compute/v1/projects/{project}/regions/{region}/vpnGateways/{resource}/setLabels:\"region_set_labels_request_resource\x12\xc7\x02\n\x12TestIamPermissions\x12<.google.cloud.compute.v1.TestIamPermissionsVpnGatewayRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc0\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02~\"Y/compute/v1/projects/{project}/regions/{region}/vpnGateways/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xca\x0b\n\nVpnTunnels\x12\xc4\x01\n\x0e\x41ggregatedList\x12\x38.google.cloud.compute.v1.AggregatedListVpnTunnelsRequest\x1a\x30.google.cloud.compute.v1.VpnTunnelAggregatedList\"F\xda\x41\x07project\x82\xd3\xe4\x93\x02\x36\x12\x34/compute/v1/projects/{project}/aggregated/vpnTunnels\x12\xdd\x01\n\x06\x44\x65lete\x12/.google.cloud.compute.v1.DeleteVpnTunnelRequest\x1a\".google.cloud.compute.v1.Operation\"~\xda\x41\x19project,region,vpn_tunnel\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02I*G/compute/v1/projects/{project}/regions/{region}/vpnTunnels/{vpn_tunnel}\x12\xc4\x01\n\x03Get\x12,.google.cloud.compute.v1.GetVpnTunnelRequest\x1a\".google.cloud.compute.v1.VpnTunnel\"k\xda\x41\x19project,region,vpn_tunnel\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/regions/{region}/vpnTunnels/{vpn_tunnel}\x12\xef\x01\n\x06Insert\x12/.google.cloud.compute.v1.InsertVpnTunnelRequest\x1a\".google.cloud.compute.v1.Operation\"\x8f\x01\xda\x41\"project,region,vpn_tunnel_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02Q\":/compute/v1/projects/{project}/regions/{region}/vpnTunnels:\x13vpn_tunnel_resource\x12\xb3\x01\n\x04List\x12..google.cloud.compute.v1.ListVpnTunnelsRequest\x1a&.google.cloud.compute.v1.VpnTunnelList\"S\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/regions/{region}/vpnTunnels\x12\xb1\x02\n\tSetLabels\x12\x32.google.cloud.compute.v1.SetLabelsVpnTunnelRequest\x1a\".google.cloud.compute.v1.Operation\"\xcb\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02u\"O/compute/v1/projects/{project}/regions/{region}/vpnTunnels/{resource}/setLabels:\"region_set_labels_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xa6\x0b\n\nWireGroups\x12\x87\x02\n\x06\x44\x65lete\x12/.google.cloud.compute.v1.DeleteWireGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xa7\x01\xda\x41%project,cross_site_network,wire_group\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x66*d/compute/v1/projects/{project}/global/crossSiteNetworks/{cross_site_network}/wireGroups/{wire_group}\x12\xee\x01\n\x03Get\x12,.google.cloud.compute.v1.GetWireGroupRequest\x1a\".google.cloud.compute.v1.WireGroup\"\x94\x01\xda\x41%project,cross_site_network,wire_group\x82\xd3\xe4\x93\x02\x66\x12\x64/compute/v1/projects/{project}/global/crossSiteNetworks/{cross_site_network}/wireGroups/{wire_group}\x12\x98\x02\n\x06Insert\x12/.google.cloud.compute.v1.InsertWireGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xb8\x01\xda\x41.project,cross_site_network,wire_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02n\"W/compute/v1/projects/{project}/global/crossSiteNetworks/{cross_site_network}/wireGroups:\x13wire_group_resource\x12\xdc\x01\n\x04List\x12..google.cloud.compute.v1.ListWireGroupsRequest\x1a&.google.cloud.compute.v1.WireGroupList\"|\xda\x41\x1aproject,cross_site_network\x82\xd3\xe4\x93\x02Y\x12W/compute/v1/projects/{project}/global/crossSiteNetworks/{cross_site_network}/wireGroups\x12\xae\x02\n\x05Patch\x12..google.cloud.compute.v1.PatchWireGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xd0\x01\xda\x41\x39project,cross_site_network,wire_group,wire_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02{2d/compute/v1/projects/{project}/global/crossSiteNetworks/{cross_site_network}/wireGroups/{wire_group}:\x13wire_group_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xa3\x07\n\x0eZoneOperations\x12\xd8\x01\n\x06\x44\x65lete\x12\x33.google.cloud.compute.v1.DeleteZoneOperationRequest\x1a\x34.google.cloud.compute.v1.DeleteZoneOperationResponse\"c\xda\x41\x16project,zone,operation\x82\xd3\xe4\x93\x02\x44*B/compute/v1/projects/{project}/zones/{zone}/operations/{operation}\x12\xc3\x01\n\x03Get\x12\x30.google.cloud.compute.v1.GetZoneOperationRequest\x1a\".google.cloud.compute.v1.Operation\"f\xda\x41\x16project,zone,operation\x90N\x01\x82\xd3\xe4\x93\x02\x44\x12\x42/compute/v1/projects/{project}/zones/{zone}/operations/{operation}\x12\xb1\x01\n\x04List\x12\x32.google.cloud.compute.v1.ListZoneOperationsRequest\x1a&.google.cloud.compute.v1.OperationList\"M\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02\x38\x12\x36/compute/v1/projects/{project}/zones/{zone}/operations\x12\xc7\x01\n\x04Wait\x12\x31.google.cloud.compute.v1.WaitZoneOperationRequest\x1a\".google.cloud.compute.v1.Operation\"h\xda\x41\x16project,zone,operation\x82\xd3\xe4\x93\x02I\"G/compute/v1/projects/{project}/zones/{zone}/operations/{operation}/wait\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd1\x03\n\x05Zones\x12\x91\x01\n\x03Get\x12\'.google.cloud.compute.v1.GetZoneRequest\x1a\x1d.google.cloud.compute.v1.Zone\"B\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02-\x12+/compute/v1/projects/{project}/zones/{zone}\x12\x8c\x01\n\x04List\x12).google.cloud.compute.v1.ListZonesRequest\x1a!.google.cloud.compute.v1.ZoneList\"6\xda\x41\x07project\x82\xd3\xe4\x93\x02&\x12$/compute/v1/projects/{project}/zones\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platformB\xa7\x01\n\x1b\x63om.google.cloud.compute.v1P\x01Z5cloud.google.com/go/compute/apiv1/computepb;computepb\xaa\x02\x17Google.Cloud.Compute.V1\xca\x02\x17Google\\Cloud\\Compute\\V1\xea\x02\x1aGoogle::Cloud::Compute::V1b\x06proto3" +descriptor_data = "\n%google/cloud/compute/v1/compute.proto\x12\x17google.cloud.compute.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a&google/cloud/extended_operations.proto\x1a\x19google/protobuf/any.proto\"\xda\x01\n\x0e\x41WSV4Signature\x12\x1b\n\naccess_key\x18\x84\xe2\xcc\xdf\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\raccess_key_id\x18\xb6\xe4\xd9\x8b\x01 \x01(\tH\x01\x88\x01\x01\x12\"\n\x12\x61\x63\x63\x65ss_key_version\x18\x9d\xe1\xa2& \x01(\tH\x02\x88\x01\x01\x12\x1d\n\rorigin_region\x18\xad\xfc\xc0~ \x01(\tH\x03\x88\x01\x01\x42\r\n\x0b_access_keyB\x10\n\x0e_access_key_idB\x15\n\x13_access_key_versionB\x10\n\x0e_origin_region\"\xd5\x02\n+AbandonInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x92\x01\n:instance_group_managers_abandon_instances_request_resource\x18\xf8\xf9\x83\x99\x01 \x01(\x0b\x32\x45.google.cloud.compute.v1.InstanceGroupManagersAbandonInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xec\x02\n1AbandonInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9f\x01\nAregion_instance_group_managers_abandon_instances_request_resource\x18\xa3\xd2\xf7\xe8\x01 \x01(\x0b\x32K.google.cloud.compute.v1.RegionInstanceGroupManagersAbandonInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x84\x01\n\x11\x41\x63\x63\x65leratorConfig\x12\"\n\x11\x61\x63\x63\x65lerator_count\x18\xbb\xb4\xdf\xf0\x01 \x01(\x05H\x00\x88\x01\x01\x12 \n\x10\x61\x63\x63\x65lerator_type\x18\x8e\xe1\xe8\x41 \x01(\tH\x01\x88\x01\x01\x42\x14\n\x12_accelerator_countB\x13\n\x11_accelerator_type\"\x8d\x01\n\x19\x41\x63\x63\x65leratorTopologiesInfo\x12p\n\x1a\x61\x63\x63\x65lerator_topology_infos\x18\x89\xa0\xd2h \x03(\x0b\x32I.google.cloud.compute.v1.AcceleratorTopologiesInfoAcceleratorTopologyInfo\"\xf7\x01\n0AcceleratorTopologiesInfoAcceleratorTopologyInfo\x12%\n\x14\x61\x63\x63\x65lerator_topology\x18\xc3\xb3\xd2\xb9\x01 \x01(\tH\x00\x88\x01\x01\x12\x82\x01\n\x18info_per_topology_states\x18\x9f\xf3\xd0W \x03(\x0b\x32].google.cloud.compute.v1.AcceleratorTopologiesInfoAcceleratorTopologyInfoInfoPerTopologyStateB\x17\n\x15_accelerator_topology\"\x92\x02\nDAcceleratorTopologiesInfoAcceleratorTopologyInfoInfoPerTopologyState\x12\x15\n\x05\x63ount\x18\x8f\xa2\x9d- \x01(\x05H\x00\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x01\x88\x01\x01\"\x87\x01\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x11\n\tAVAILABLE\x10\xa9\xb5\xe6\xd2\x01\x12\x10\n\x08\x44\x45GRADED\x10\xae\xa6\xa0\xbd\x01\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x12!\n\x1aTOPOLOGY_STATE_UNSPECIFIED\x10\xf9\xcc\xe6Y\x12\x11\n\tUNHEALTHY\x10\xc4\xb9\xad\xdc\x01\x42\x08\n\x06_countB\x08\n\x06_state\"\xbd\x03\n\x0f\x41\x63\x63\x65leratorType\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12*\n\x1amaximum_cards_per_instance\x18\xd2\xfa\xe5} \x01(\x05H\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x08\x88\x01\x01\x42\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x1d\n\x1b_maximum_cards_per_instanceB\x07\n\x05_nameB\x0c\n\n_self_linkB\x07\n\x05_zone\"\xce\x03\n\x1d\x41\x63\x63\x65leratorTypeAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12S\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x41.google.cloud.compute.v1.AcceleratorTypeAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.AcceleratorTypesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xaf\x02\n\x13\x41\x63\x63\x65leratorTypeList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.AcceleratorType\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xac\x01\n\x1a\x41\x63\x63\x65leratorTypesScopedList\x12G\n\x11\x61\x63\x63\x65lerator_types\x18\xa5\xc3\xaf\xf8\x01 \x03(\x0b\x32(.google.cloud.compute.v1.AcceleratorType\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x98\x01\n\x0c\x41\x63\x63\x65lerators\x12(\n\x17guest_accelerator_count\x18\x94\xd7\xb8\xe4\x01 \x01(\x05H\x00\x88\x01\x01\x12\'\n\x16guest_accelerator_type\x18\x95\xa0\xdf\x8b\x01 \x01(\tH\x01\x88\x01\x01\x42\x1a\n\x18_guest_accelerator_countB\x19\n\x17_guest_accelerator_type\"\xc6\x05\n\x0c\x41\x63\x63\x65ssConfig\x12\x1e\n\rexternal_ipv6\x18\xdb\xd3\x81\xfe\x01 \x01(\tH\x00\x88\x01\x01\x12,\n\x1b\x65xternal_ipv6_prefix_length\x18\xcf\xfb\xfc\xca\x01 \x01(\x05H\x01\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07nat_i_p\x18\xfc\xeb\x8b\x38 \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x0cnetwork_tier\x18\xd3\xba\xdb\xf6\x01 \x01(\tH\x05\x88\x01\x01\x12\'\n\x16public_ptr_domain_name\x18\xff\xd6\xfb\x96\x01 \x01(\tH\x06\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\x07\x88\x01\x01\x12\x1f\n\x0eset_public_ptr\x18\x95\xc0\xe6\xf9\x01 \x01(\x08H\x08\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\t\x88\x01\x01\"\x8f\x01\n\x0bNetworkTier\x12\x1a\n\x16UNDEFINED_NETWORK_TIER\x10\x00\x12\x16\n\x0e\x46IXED_STANDARD\x10\xc8\x9e\x85\x94\x01\x12\x0f\n\x07PREMIUM\x10\xb7\xb4\xc1\xbe\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x12)\n!STANDARD_OVERRIDES_FIXED_STANDARD\x10\xc2\x87\x91\xde\x01\"E\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x12\n\x0b\x44IRECT_IPV6\x10\x9d\xb1\x8c\x02\x12\x15\n\x0eONE_TO_ONE_NAT\x10\xdd\xba\x8c(B\x10\n\x0e_external_ipv6B\x1e\n\x1c_external_ipv6_prefix_lengthB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_nat_i_pB\x0f\n\r_network_tierB\x19\n\x17_public_ptr_domain_nameB\x12\n\x10_security_policyB\x11\n\x0f_set_public_ptrB\x07\n\x05_type\"\x99\x02\n\x1e\x41\x64\x64\x41\x63\x63\x65ssConfigInstanceRequest\x12N\n\x16\x61\x63\x63\x65ss_config_resource\x18\x90\xff\xf6\xb8\x01 \x01(\x0b\x32%.google.cloud.compute.v1.AccessConfigB\x03\xe0\x41\x02\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11network_interface\x18\xe8\xc0\x9d\xae\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xab\x02\n#AddAssociationFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12h\n$firewall_policy_association_resource\x18\xba\xb8\xe1{ \x01(\x0b\x32\x32.google.cloud.compute.v1.FirewallPolicyAssociationB\x03\xe0\x41\x02\x12,\n\x1creplace_existing_association\x18\xf8\xb0\xf5\x63 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x1f\n\x1d_replace_existing_associationB\r\n\x0b_request_id\"\xd5\x02\n*AddAssociationNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12h\n$firewall_policy_association_resource\x18\xba\xb8\xe1{ \x01(\x0b\x32\x32.google.cloud.compute.v1.FirewallPolicyAssociationB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12,\n\x1creplace_existing_association\x18\xf8\xb0\xf5\x63 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x1f\n\x1d_replace_existing_associationB\r\n\x0b_request_id\"\xb6\x02\n/AddAssociationOrganizationSecurityPolicyRequest\x12,\n\x1creplace_existing_association\x18\xf8\xb0\xf5\x63 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12h\n$security_policy_association_resource\x18\xfa\xec\xcd\x05 \x01(\x0b\x32\x32.google.cloud.compute.v1.SecurityPolicyAssociationB\x03\xe0\x41\x02\x42\x1f\n\x1d_replace_existing_associationB\r\n\x0b_request_id\"\xfc\x02\n0AddAssociationRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12h\n$firewall_policy_association_resource\x18\xba\xb8\xe1{ \x01(\x0b\x32\x32.google.cloud.compute.v1.FirewallPolicyAssociationB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12,\n\x1creplace_existing_association\x18\xf8\xb0\xf5\x63 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x1f\n\x1d_replace_existing_associationB\r\n\x0b_request_id\"\xa9\x02\n\x1f\x41\x64\x64HealthCheckTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x12z\n.target_pools_add_health_check_request_resource\x18\xa4\xba\xc5\x80\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.TargetPoolsAddHealthCheckRequestB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x9f\x02\n\x1c\x41\x64\x64InstanceTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x12s\n*target_pools_add_instance_request_resource\x18\xf4\xd3\xbb\xcc\x01 \x01(\x0b\x32\x36.google.cloud.compute.v1.TargetPoolsAddInstanceRequestB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xaa\x02\n AddInstancesInstanceGroupRequest\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12{\n.instance_groups_add_instances_request_resource\x18\xde\xba\xac\xd8\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InstanceGroupsAddInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x81\x02\n\"AddNetworkInterfaceInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12V\n\x1anetwork_interface_resource\x18\x85\x94\xae\x9b\x01 \x01(\x0b\x32).google.cloud.compute.v1.NetworkInterfaceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x8e\x02\n\x18\x41\x64\x64NodesNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12j\n&node_groups_add_nodes_request_resource\x18\xb8\xd6\xcb> \x01(\x0b\x32\x32.google.cloud.compute.v1.NodeGroupsAddNodesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xdf\x02\n2AddPacketMirroringRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x1d\n\x0cmax_priority\x18\x9f\xac\x97\x9d\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1c\n\x0cmin_priority\x18\xf1\x81\xb4\x7f \x01(\x05H\x01\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x02\x88\x01\x01\x42\x0f\n\r_max_priorityB\x0f\n\r_min_priorityB\r\n\x0b_request_id\"\xed\x01\n\x18\x41\x64\x64PeeringNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12j\n%networks_add_peering_request_resource\x18\xb5\x8d\xb3\xb9\x01 \x01(\x0b\x32\x32.google.cloud.compute.v1.NetworksAddPeeringRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9a\x02\n\x1e\x41\x64\x64ResourcePoliciesDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12w\n,disks_add_resource_policies_request_resource\x18\xa3\xf8\xde\xec\x01 \x01(\x0b\x32\x38.google.cloud.compute.v1.DisksAddResourcePoliciesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xaa\x02\n\"AddResourcePoliciesInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x7f\n0instances_add_resource_policies_request_resource\x18\x9b\xd6\xab\xe9\x01 \x01(\x0b\x32<.google.cloud.compute.v1.InstancesAddResourcePoliciesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xb2\x02\n$AddResourcePoliciesRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x84\x01\n3region_disks_add_resource_policies_request_resource\x18\x8e\xff\xc1\x87\x01 \x01(\x0b\x32>.google.cloud.compute.v1.RegionDisksAddResourcePoliciesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc7\x01\n\x1c\x41\x64\x64RuleFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd0\x02\n#AddRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x1d\n\x0cmax_priority\x18\x9f\xac\x97\x9d\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1c\n\x0cmin_priority\x18\xf1\x81\xb4\x7f \x01(\x05H\x01\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x02\x88\x01\x01\x42\x0f\n\r_max_priorityB\x0f\n\r_min_priorityB\r\n\x0b_request_id\"\xd3\x01\n(AddRuleOrganizationSecurityPolicyRequest\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dsecurity_policy_rule_resource\x18\xc3\xba\x82\xc0\x01 \x01(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRuleB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf7\x02\n)AddRuleRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x1d\n\x0cmax_priority\x18\x9f\xac\x97\x9d\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1c\n\x0cmin_priority\x18\xf1\x81\xb4\x7f \x01(\x05H\x01\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x02\x88\x01\x01\x42\x0f\n\r_max_priorityB\x0f\n\r_min_priorityB\r\n\x0b_request_id\"\x97\x02\n\"AddRuleRegionSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dsecurity_policy_rule_resource\x18\xc3\xba\x82\xc0\x01 \x01(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRuleB\x03\xe0\x41\x02\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x00\x88\x01\x01\x42\x10\n\x0e_validate_only\"\xf0\x01\n\x1c\x41\x64\x64RuleSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dsecurity_policy_rule_resource\x18\xc3\xba\x82\xc0\x01 \x01(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRuleB\x03\xe0\x41\x02\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x00\x88\x01\x01\x42\x10\n\x0e_validate_only\"\xe4\x01\n#AddSignedUrlKeyBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12O\n\x17signed_url_key_resource\x18\x81\xa3\x9b\xda\x01 \x01(\x0b\x32%.google.cloud.compute.v1.SignedUrlKeyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe7\x01\n$AddSignedUrlKeyBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12O\n\x17signed_url_key_resource\x18\x81\xa3\x9b\xda\x01 \x01(\x0b\x32%.google.cloud.compute.v1.SignedUrlKeyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x97\r\n\x07\x41\x64\x64ress\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0c\x61\x64\x64ress_type\x18\xa5\x89\x84~ \x01(\tH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x1d\n\rip_collection\x18\xb6\x91\xa8T \x01(\tH\x05\x88\x01\x01\x12\x1b\n\nip_version\x18\xc0\xf3\xd2\x8c\x01 \x01(\tH\x06\x88\x01\x01\x12\"\n\x12ipv6_endpoint_type\x18\xcc\xfe\xbe. \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\t\x88\x01\x01\x12@\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32,.google.cloud.compute.v1.Address.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\n\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x0b\x88\x01\x01\x12\x1d\n\x0cnetwork_tier\x18\xd3\xba\xdb\xf6\x01 \x01(\tH\x0c\x88\x01\x01\x12\x1e\n\rprefix_length\x18\xb3\xba\xa3\xd8\x01 \x01(\x05H\r\x88\x01\x01\x12\x18\n\x07purpose\x18\x9e\xfa\xef\x96\x01 \x01(\tH\x0e\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0f\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x10\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x11\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\x12\x88\x01\x01\x12\x10\n\x05users\x18\x88\x9c\x9a\x35 \x03(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"e\n\x0b\x41\x64\x64ressType\x12\x1a\n\x16UNDEFINED_ADDRESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\x12\x17\n\x10UNSPECIFIED_TYPE\x10\xe2\xee\xdb\x19\"[\n\tIpVersion\x12\x18\n\x14UNDEFINED_IP_VERSION\x10\x00\x12\x0b\n\x04IPV4\x10\x85\xcc\x89\x01\x12\x0b\n\x04IPV6\x10\x87\xcc\x89\x01\x12\x1a\n\x13UNSPECIFIED_VERSION\x10\x90\xcf\xb5\n\"K\n\x10Ipv6EndpointType\x12 \n\x1cUNDEFINED_IPV6_ENDPOINT_TYPE\x10\x00\x12\x0c\n\x05NETLB\x10\xb3\x97\xaf#\x12\x07\n\x02VM\x10\xb7\x15\"\x8f\x01\n\x0bNetworkTier\x12\x1a\n\x16UNDEFINED_NETWORK_TIER\x10\x00\x12\x16\n\x0e\x46IXED_STANDARD\x10\xc8\x9e\x85\x94\x01\x12\x0f\n\x07PREMIUM\x10\xb7\xb4\xc1\xbe\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x12)\n!STANDARD_OVERRIDES_FIXED_STANDARD\x10\xc2\x87\x91\xde\x01\"\xe2\x01\n\x07Purpose\x12\x15\n\x11UNDEFINED_PURPOSE\x10\x00\x12\x14\n\x0c\x44NS_RESOLVER\x10\xfc\xdc\x83\xe3\x01\x12\x13\n\x0cGCE_ENDPOINT\x10\xab\xc4\xf5m\x12\x1a\n\x12IPSEC_INTERCONNECT\x10\x83\xd2\xaa\xa2\x01\x12\x0f\n\x08NAT_AUTO\x10\xad\xb4\x85N\x12\x1e\n\x17PRIVATE_SERVICE_CONNECT\x10\xc4\xf4\xf9\x16\x12\x12\n\nSERVERLESS\x10\xdc\xc6\xfd\x80\x01\x12\x1f\n\x17SHARED_LOADBALANCER_VIP\x10\xd4\xd3\xb3\x8c\x01\x12\x13\n\x0bVPC_PEERING\x10\xaa\xf3\x8e\xbf\x01\"R\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\r\n\x06IN_USE\x10\xcd\xce\xa5\x08\x12\x10\n\x08RESERVED\x10\xa8\xf6\x8d\xce\x01\x12\x11\n\tRESERVING\x10\xd9\xf4\xaf\xf5\x01\x42\n\n\x08_addressB\x0f\n\r_address_typeB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x10\n\x0e_ip_collectionB\r\n\x0b_ip_versionB\x15\n\x13_ipv6_endpoint_typeB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\n\n\x08_networkB\x0f\n\r_network_tierB\x10\n\x0e_prefix_lengthB\n\n\x08_purposeB\t\n\x07_regionB\x0c\n\n_self_linkB\t\n\x07_statusB\r\n\x0b_subnetwork\"\xb7\x03\n\x15\x41\x64\x64ressAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12K\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x39.google.cloud.compute.v1.AddressAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aZ\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12;\n\x05value\x18\x02 \x01(\x0b\x32,.google.cloud.compute.v1.AddressesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x9f\x02\n\x0b\x41\x64\x64ressList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x32\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32 .google.cloud.compute.v1.Address\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x95\x01\n\x13\x41\x64\x64ressesScopedList\x12\x37\n\taddresses\x18\xa2\xf7\x81\xa1\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Address\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xcd\x04\n\x17\x41\x64vancedMachineFeatures\x12,\n\x1c\x65nable_nested_virtualization\x18\x85\xcb\xf7\x07 \x01(\x08H\x00\x88\x01\x01\x12\'\n\x16\x65nable_uefi_networking\x18\xa4\xb1\xbf\x9f\x01 \x01(\x08H\x01\x88\x01\x01\x12,\n\x1bperformance_monitoring_unit\x18\x8c\xc2\xb9\xfe\x01 \x01(\tH\x02\x88\x01\x01\x12!\n\x10threads_per_core\x18\xd7\xda\x91\xa8\x01 \x01(\x05H\x03\x88\x01\x01\x12\x1b\n\nturbo_mode\x18\xa4\x8e\xba\xce\x01 \x01(\tH\x04\x88\x01\x01\x12\"\n\x12visible_core_count\x18\xdc\xf4\x8f\\ \x01(\x05H\x05\x88\x01\x01\"\xb1\x01\n\x19PerformanceMonitoringUnit\x12)\n%UNDEFINED_PERFORMANCE_MONITORING_UNIT\x10\x00\x12\x14\n\rARCHITECTURAL\x10\xdd\xb1\xfbI\x12\x10\n\x08\x45NHANCED\x10\xf6\x86\xb2\xe3\x01\x12/\n\'PERFORMANCE_MONITORING_UNIT_UNSPECIFIED\x10\xc4\xf8\xd4\xcc\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x42\x1f\n\x1d_enable_nested_virtualizationB\x19\n\x17_enable_uefi_networkingB\x1e\n\x1c_performance_monitoring_unitB\x13\n\x11_threads_per_coreB\r\n\x0b_turbo_modeB\x15\n\x13_visible_core_count\"\xa7\x03\n%AggregatedListAcceleratorTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa0\x03\n\x1e\x41ggregatedListAddressesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa2\x03\n AggregatedListAutoscalersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa5\x03\n#AggregatedListBackendBucketsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa6\x03\n$AggregatedListBackendServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa0\x03\n\x1e\x41ggregatedListDiskTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\x9c\x03\n\x1a\x41ggregatedListDisksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa6\x03\n$AggregatedListForwardingRulesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa9\x03\n\'AggregatedListFutureReservationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListGlobalOperationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa3\x03\n!AggregatedListHealthChecksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xac\x03\n*AggregatedListInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa5\x03\n#AggregatedListInstanceGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa8\x03\n&AggregatedListInstanceTemplatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa0\x03\n\x1e\x41ggregatedListInstancesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListInstantSnapshotsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xae\x03\n,AggregatedListInterconnectAttachmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa3\x03\n!AggregatedListMachineTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa9\x03\n\'AggregatedListNetworkAttachmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xb2\x03\n0AggregatedListNetworkEdgeSecurityServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xac\x03\n*AggregatedListNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xae\x03\n,AggregatedListNetworkFirewallPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa1\x03\n\x1f\x41ggregatedListNodeGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa4\x03\n\"AggregatedListNodeTemplatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa0\x03\n\x1e\x41ggregatedListNodeTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListPacketMirroringsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xae\x03\n,AggregatedListPublicDelegatedPrefixesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa8\x03\n&AggregatedListRegionCommitmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xb2\x03\n0AggregatedListRegionCompositeHealthChecksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xb6\x03\n4AggregatedListRegionHealthAggregationPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xb0\x03\n.AggregatedListRegionHealthCheckServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xaa\x03\n(AggregatedListRegionHealthSourcesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xb2\x03\n0AggregatedListRegionNotificationEndpointsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa3\x03\n!AggregatedListReservationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListResourcePoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\x9e\x03\n\x1c\x41ggregatedListRoutersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListSecurityPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa9\x03\n\'AggregatedListServiceAttachmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa6\x03\n$AggregatedListSslCertificatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa2\x03\n AggregatedListSslPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListStoragePoolTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa3\x03\n!AggregatedListStoragePoolsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\x8b\x04\n AggregatedListSubnetworksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x12\x15\n\x05views\x18\xee\xb4\xc0\x35 \x01(\tH\x07\x88\x01\x01\"F\n\x05Views\x12\x13\n\x0fUNDEFINED_VIEWS\x10\x00\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\x12\x18\n\x10WITH_UTILIZATION\x10\x89\xa0\xaf\xf0\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_numberB\x08\n\x06_views\"\xa8\x03\n&AggregatedListTargetHttpProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa9\x03\n\'AggregatedListTargetHttpsProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa6\x03\n$AggregatedListTargetInstancesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa2\x03\n AggregatedListTargetPoolsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa7\x03\n%AggregatedListTargetTcpProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa8\x03\n&AggregatedListTargetVpnGatewaysRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\x9e\x03\n\x1c\x41ggregatedListUrlMapsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa2\x03\n AggregatedListVpnGatewaysRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\xa1\x03\n\x1f\x41ggregatedListVpnTunnelsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12include_all_scopes\x18\xf4\xe1\xcc\xba\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\'\n\x16service_project_number\x18\xf9\xab\x85\x97\x01 \x01(\x03H\x06\x88\x01\x01\x42\t\n\x07_filterB\x15\n\x13_include_all_scopesB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x19\n\x17_service_project_number\"\x81\x01\n\x0c\x41liasIpRange\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x00\x88\x01\x01\x12&\n\x15subnetwork_range_name\x18\xbe\xb2\x81\xb9\x01 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_ip_cidr_rangeB\x18\n\x16_subnetwork_range_name\"\xbf\x06\n\x1e\x41llocationAggregateReservation\x12i\n\x10in_use_resources\x18\xd3\xf7\x83\xc3\x01 \x03(\x0b\x32K.google.cloud.compute.v1.AllocationAggregateReservationReservedResourceInfo\x12j\n\x12reserved_resources\x18\xce\xe3\xd5\x65 \x03(\x0b\x32K.google.cloud.compute.v1.AllocationAggregateReservationReservedResourceInfo\x12\x19\n\tvm_family\x18\xec\xbb\xce; \x01(\tH\x00\x88\x01\x01\x12\x1e\n\rworkload_type\x18\x82\xfe\xb0\x82\x01 \x01(\tH\x01\x88\x01\x01\"\x8a\x03\n\x08VmFamily\x12\x17\n\x13UNDEFINED_VM_FAMILY\x10\x00\x12%\n\x1eVM_FAMILY_CLOUD_TPU_DEVICE_CT3\x10\xfc\x8d\xb7\x14\x12+\n$VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L\x10\xe3\x82\xc1\x33\x12/\n(VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP\x10\xf3\xd6\xf5\x08\x12/\n\'VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT6E\x10\x95\xc9\x9c\xbe\x01\x12*\n\"VM_FAMILY_CLOUD_TPU_POD_SLICE_CT3P\x10\xb8\xd1\xda\xf6\x01\x12*\n\"VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P\x10\xd7\xd1\xda\xf6\x01\x12*\n\"VM_FAMILY_CLOUD_TPU_POD_SLICE_CT5P\x10\xf6\xd1\xda\xf6\x01\x12+\n#VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X\x10\xd0\xd2\xb2\xe7\x01\"^\n\x0cWorkloadType\x12\x1b\n\x17UNDEFINED_WORKLOAD_TYPE\x10\x00\x12\x0c\n\x05\x42\x41TCH\x10\x9a\xbe\x83\x1e\x12\x0e\n\x07SERVING\x10\xec\xa7\xbd\x08\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x0c\n\n_vm_familyB\x10\n\x0e_workload_type\"\xba\x01\n2AllocationAggregateReservationReservedResourceInfo\x12t\n\x0b\x61\x63\x63\x65lerator\x18\xeb\xc4\xab\xca\x01 \x01(\x0b\x32V.google.cloud.compute.v1.AllocationAggregateReservationReservedResourceInfoAcceleratorH\x00\x88\x01\x01\x42\x0e\n\x0c_accelerator\"\xb0\x01\n=AllocationAggregateReservationReservedResourceInfoAccelerator\x12\"\n\x11\x61\x63\x63\x65lerator_count\x18\xbb\xb4\xdf\xf0\x01 \x01(\x05H\x00\x88\x01\x01\x12 \n\x10\x61\x63\x63\x65lerator_type\x18\x8e\xe1\xe8\x41 \x01(\tH\x01\x88\x01\x01\x42\x14\n\x12_accelerator_countB\x13\n\x11_accelerator_type\"\xe8\x01\n\"AllocationReservationSharingPolicy\x12#\n\x12service_share_type\x18\xe4\x8e\xab\xf5\x01 \x01(\tH\x00\x88\x01\x01\"\x85\x01\n\x10ServiceShareType\x12 \n\x1cUNDEFINED_SERVICE_SHARE_TYPE\x10\x00\x12\x11\n\tALLOW_ALL\x10\xeb\xb6\xe0\xe2\x01\x12\x14\n\x0c\x44ISALLOW_ALL\x10\xbd\xdd\xba\x84\x01\x12&\n\x1eSERVICE_SHARE_TYPE_UNSPECIFIED\x10\xfc\xa5\x88\x85\x01\x42\x15\n\x13_service_share_type\"\xcb\x03\n\x18\x41llocationResourceStatus\x12X\n\x0bhealth_info\x18\xb1\xe9\x98p \x01(\x0b\x32;.google.cloud.compute.v1.AllocationResourceStatusHealthInfoH\x00\x88\x01\x01\x12\'\n\x17reservation_block_count\x18\xea\xd5\x95M \x01(\x05H\x01\x88\x01\x01\x12W\n\x17reservation_maintenance\x18\xa0\x86\xb5\xa2\x01 \x01(\x0b\x32-.google.cloud.compute.v1.GroupMaintenanceInfoH\x02\x88\x01\x01\x12o\n\x17specific_sku_allocation\x18\xef\xff\xc8] \x01(\x0b\x32\x46.google.cloud.compute.v1.AllocationResourceStatusSpecificSKUAllocationH\x03\x88\x01\x01\x42\x0e\n\x0c_health_infoB\x1a\n\x18_reservation_block_countB\x1a\n\x18_reservation_maintenanceB\x1a\n\x18_specific_sku_allocation\"\xc6\x02\n\"AllocationResourceStatusHealthInfo\x12%\n\x14\x64\x65graded_block_count\x18\xcc\x8e\x91\xf5\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1e\n\rhealth_status\x18\xb5\xd6\xba\xb5\x01 \x01(\tH\x01\x88\x01\x01\x12#\n\x13healthy_block_count\x18\xbb\xfe\xd0j \x01(\x05H\x02\x88\x01\x01\"q\n\x0cHealthStatus\x12\x1b\n\x17UNDEFINED_HEALTH_STATUS\x10\x00\x12\x10\n\x08\x44\x45GRADED\x10\xae\xa6\xa0\xbd\x01\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12!\n\x19HEALTH_STATUS_UNSPECIFIED\x10\x8d\x82\xfa\xe5\x01\x42\x17\n\x15_degraded_block_countB\x10\n\x0e_health_statusB\x16\n\x14_healthy_block_count\"\xa5\x02\n-AllocationResourceStatusSpecificSKUAllocation\x12+\n\x1bsource_instance_template_id\x18\xfa\xef\x82\x35 \x01(\tH\x00\x88\x01\x01\x12r\n\x0cutilizations\x18\x91\xad\xf6\xbf\x01 \x03(\x0b\x32X.google.cloud.compute.v1.AllocationResourceStatusSpecificSKUAllocation.UtilizationsEntry\x1a\x33\n\x11UtilizationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x03:\x02\x38\x01\x42\x1e\n\x1c_source_instance_template_id\"\xe2\x01\nFAllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x00\x88\x01\x01\x12\x1a\n\tinterface\x18\xb9\xda\xd5\xef\x01 \x01(\tH\x01\x88\x01\x01\">\n\tInterface\x12\x17\n\x13UNDEFINED_INTERFACE\x10\x00\x12\x0b\n\x04NVME\x10\xe0\x82\x93\x01\x12\x0b\n\x04SCSI\x10\xa6\x81\x9b\x01\x42\x0f\n\r_disk_size_gbB\x0c\n\n_interface\"\x97\x03\n9AllocationSpecificSKUAllocationReservedInstanceProperties\x12J\n\x12guest_accelerators\x18\xef\xcc\x87\xdd\x01 \x03(\x0b\x32*.google.cloud.compute.v1.AcceleratorConfig\x12v\n\nlocal_ssds\x18\xc3\x8e\xd3m \x03(\x0b\x32_.google.cloud.compute.v1.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk\x12\x1e\n\rlocation_hint\x18\xd1\x81\x92\xa7\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x01\x88\x01\x01\x12 \n\x10min_cpu_platform\x18\xf7\x9b\xeas \x01(\tH\x02\x88\x01\x01\x42\x10\n\x0e_location_hintB\x0f\n\r_machine_typeB\x13\n\x11_min_cpu_platform\"\xfe\x02\n AllocationSpecificSKUReservation\x12\x1e\n\rassured_count\x18\xcd\xf8\x8a\x86\x01 \x01(\x03H\x00\x88\x01\x01\x12\x15\n\x05\x63ount\x18\x8f\xa2\x9d- \x01(\x03H\x01\x88\x01\x01\x12\x1d\n\x0cin_use_count\x18\xbd\xab\xa6\xeb\x01 \x01(\x03H\x02\x88\x01\x01\x12w\n\x13instance_properties\x18\x9d\x9e\xd8\x66 \x01(\x0b\x32R.google.cloud.compute.v1.AllocationSpecificSKUAllocationReservedInstancePropertiesH\x03\x88\x01\x01\x12)\n\x18source_instance_template\x18\xc0\xc3\xc1\x9e\x01 \x01(\tH\x04\x88\x01\x01\x42\x10\n\x0e_assured_countB\x08\n\x06_countB\x0f\n\r_in_use_countB\x16\n\x14_instance_propertiesB\x1b\n\x19_source_instance_template\"K\n\x07\x41llowed\x12\x1d\n\x0cI_p_protocol\x18\xbd\xf6\xde\xe8\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x05ports\x18\x92\xf0\xf9\x32 \x03(\tB\x0f\n\r_I_p_protocol\"\xa0\x01\n&AnnouncePublicAdvertisedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12(\n\x18public_advertised_prefix\x18\x9e\xf7\xc9\x30 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbf\x01\n%AnnouncePublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa8\x02\n2ApplyUpdatesToInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x89\x01\n6instance_group_managers_apply_updates_request_resource\x18\xd3\xf6\xce{ \x01(\x0b\x32\x41.google.cloud.compute.v1.InstanceGroupManagersApplyUpdatesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zone\"\xbf\x02\n8ApplyUpdatesToInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x96\x01\n=region_instance_group_managers_apply_updates_request_resource\x18\xfe\xe9\xad$ \x01(\x0b\x32G.google.cloud.compute.v1.RegionInstanceGroupManagersApplyUpdatesRequestB\x03\xe0\x41\x02\"\x9e\x02\n\x19\x41ttachDiskInstanceRequest\x12M\n\x16\x61ttached_disk_resource\x18\x95\x92\x9a+ \x01(\x0b\x32%.google.cloud.compute.v1.AttachedDiskB\x03\xe0\x41\x02\x12\x1c\n\x0c\x66orce_attach\x18\x99\xa4\x89\x44 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x0f\n\r_force_attachB\r\n\x0b_request_id\"\xcf\x02\n7AttachNetworkEndpointsGlobalNetworkEndpointGroupRequest\x12\x9c\x01\n@global_network_endpoint_groups_attach_endpoints_request_resource\x18\xeb\xa1\xd1\x0e \x01(\x0b\x32J.google.cloud.compute.v1.GlobalNetworkEndpointGroupsAttachEndpointsRequestB\x03\xe0\x41\x02\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd8\x02\n1AttachNetworkEndpointsNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x8e\x01\n9network_endpoint_groups_attach_endpoints_request_resource\x18\x87\xb5 \x01(\x0b\x32\x44.google.cloud.compute.v1.NetworkEndpointGroupsAttachEndpointsRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf1\x02\n7AttachNetworkEndpointsRegionNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9d\x01\n@region_network_endpoint_groups_attach_endpoints_request_resource\x18\xfc\xf9\xdd\x9f\x01 \x01(\x0b\x32J.google.cloud.compute.v1.RegionNetworkEndpointGroupsAttachEndpointsRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xdc\n\n\x0c\x41ttachedDisk\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\x08H\x01\x88\x01\x01\x12\x14\n\x04\x62oot\x18\xf2\xf5\xb8\x01 \x01(\x08H\x02\x88\x01\x01\x12\x1b\n\x0b\x64\x65vice_name\x18\xd4\xb5\x9a \x01(\tH\x03\x88\x01\x01\x12T\n\x13\x64isk_encryption_key\x18\x85\xed\xc4\x81\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x04\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x05\x88\x01\x01\x12\x1c\n\x0c\x66orce_attach\x18\x99\xa4\x89\x44 \x01(\x08H\x06\x88\x01\x01\x12\x45\n\x11guest_os_features\x18\xd1\xe0\xe7% \x03(\x0b\x32\'.google.cloud.compute.v1.GuestOsFeature\x12\x15\n\x05index\x18\xd2\xd1\xec/ \x01(\x05H\x07\x88\x01\x01\x12X\n\x11initialize_params\x18\x95\x92\xb8\x08 \x01(\x0b\x32\x35.google.cloud.compute.v1.AttachedDiskInitializeParamsH\x08\x88\x01\x01\x12\x1a\n\tinterface\x18\xb9\xda\xd5\xef\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\n\x88\x01\x01\x12\x14\n\x08licenses\x18\xd2\x88\x80\xa1\x01 \x03(\t\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x0b\x88\x01\x01\x12\x1c\n\x0bsaved_state\x18\xd9\xa9\xa1\xc4\x01 \x01(\tH\x0c\x88\x01\x01\x12\\\n\x1fshielded_instance_initial_state\x18\x83\xc4\xdc[ \x01(\x0b\x32+.google.cloud.compute.v1.InitialStateConfigH\r\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\x0e\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x0f\x88\x01\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\">\n\tInterface\x12\x17\n\x13UNDEFINED_INTERFACE\x10\x00\x12\x0b\n\x04NVME\x10\xe0\x82\x93\x01\x12\x0b\n\x04SCSI\x10\xa6\x81\x9b\x01\"?\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\x10\n\tREAD_ONLY\x10\xb5\x99\xec+\x12\x11\n\nREAD_WRITE\x10\xd6\x97\xe4R\"_\n\nSavedState\x12\x19\n\x15UNDEFINED_SAVED_STATE\x10\x00\x12$\n\x1c\x44ISK_SAVED_STATE_UNSPECIFIED\x10\xcf\xbf\xca\xba\x01\x12\x10\n\tPRESERVED\x10\xf8\xd6\x98y\"?\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x12\n\nPERSISTENT\x10\x97\xf5\xd5\xdb\x01\x12\x0f\n\x07SCRATCH\x10\xda\xfd\xf0\xec\x01\x42\x0f\n\r_architectureB\x0e\n\x0c_auto_deleteB\x07\n\x05_bootB\x0e\n\x0c_device_nameB\x16\n\x14_disk_encryption_keyB\x0f\n\r_disk_size_gbB\x0f\n\r_force_attachB\x08\n\x06_indexB\x14\n\x12_initialize_paramsB\x0c\n\n_interfaceB\x07\n\x05_kindB\x07\n\x05_modeB\x0e\n\x0c_saved_stateB\"\n _shielded_instance_initial_stateB\t\n\x07_sourceB\x07\n\x05_type\"\x8f\x0c\n\x1c\x41ttachedDiskInitializeParams\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x19\n\tdisk_name\x18\xed\xbf\xa0, \x01(\tH\x02\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x03\x88\x01\x01\x12\x19\n\tdisk_type\x18\x9c\xe9\xac, \x01(\tH\x04\x88\x01\x01\x12+\n\x1b\x65nable_confidential_compute\x18\xbc\xeb\xd9\x30 \x01(\x08H\x05\x88\x01\x01\x12U\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x41.google.cloud.compute.v1.AttachedDiskInitializeParams.LabelsEntry\x12\x14\n\x08licenses\x18\xd2\x88\x80\xa1\x01 \x03(\t\x12 \n\x10on_update_action\x18\x8c\xd8\xc4` \x01(\tH\x06\x88\x01\x01\x12 \n\x10provisioned_iops\x18\xd4\xbd\x87Y \x01(\x03H\x07\x88\x01\x01\x12\'\n\x16provisioned_throughput\x18\x95\xbe\x88\xfb\x01 \x01(\x03H\x08\x88\x01\x01\x12\x18\n\rreplica_zones\x18\x80\xb8\x8c\x17 \x03(\t\x12q\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32N.google.cloud.compute.v1.AttachedDiskInitializeParams.ResourceManagerTagsEntry\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\x12\x1c\n\x0csource_image\x18\xb7\xe8\x86\x18 \x01(\tH\t\x88\x01\x01\x12\\\n\x1bsource_image_encryption_key\x18\xab\x91\xf5\xb5\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\n\x88\x01\x01\x12\x1f\n\x0fsource_snapshot\x18\xe8\x9a\x8e< \x01(\tH\x0b\x88\x01\x01\x12_\n\x1esource_snapshot_encryption_key\x18\xda\x8e\xe7\x90\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x0c\x88\x01\x01\x12\x1d\n\x0cstorage_pool\x18\xe0\xc6\xf1\xab\x01 \x01(\tH\r\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\"\x8a\x01\n\x0eOnUpdateAction\x12\x1e\n\x1aUNDEFINED_ON_UPDATE_ACTION\x10\x00\x12\x15\n\rRECREATE_DISK\x10\xed\x9d\xf6\xeb\x01\x12\'\n\x1fRECREATE_DISK_IF_SOURCE_CHANGED\x10\x80\x8a\xea\xbd\x01\x12\x18\n\x11USE_EXISTING_DISK\x10\xf9\xe5\xf9nB\x0f\n\r_architectureB\x0e\n\x0c_descriptionB\x0c\n\n_disk_nameB\x0f\n\r_disk_size_gbB\x0c\n\n_disk_typeB\x1e\n\x1c_enable_confidential_computeB\x13\n\x11_on_update_actionB\x13\n\x11_provisioned_iopsB\x19\n\x17_provisioned_throughputB\x0f\n\r_source_imageB\x1e\n\x1c_source_image_encryption_keyB\x12\n\x10_source_snapshotB!\n\x1f_source_snapshot_encryption_keyB\x0f\n\r_storage_pool\"\x98\x01\n\x0b\x41uditConfig\x12\x46\n\x11\x61udit_log_configs\x18\x92\xea\xf2\xe8\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.AuditLogConfig\x12\x1b\n\x10\x65xempted_members\x18\x98\xdd\xf5n \x03(\t\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_service\"\x94\x02\n\x0e\x41uditLogConfig\x12\x1b\n\x10\x65xempted_members\x18\x98\xdd\xf5n \x03(\t\x12\'\n\x17ignore_child_exemptions\x18\x9a\x8f\xb9! \x01(\x08H\x00\x88\x01\x01\x12\x19\n\x08log_type\x18\xd5\x9e\x9c\xc0\x01 \x01(\tH\x01\x88\x01\x01\"x\n\x07LogType\x12\x16\n\x12UNDEFINED_LOG_TYPE\x10\x00\x12\x11\n\nADMIN_READ\x10\xa6\xc9\xbe=\x12\x11\n\tDATA_READ\x10\x8b\xba\xc5\x91\x01\x12\x12\n\nDATA_WRITE\x10\xea\x85\x9b\xa2\x01\x12\x1b\n\x14LOG_TYPE_UNSPECIFIED\x10\xcd\xca\xd7IB\x1a\n\x18_ignore_child_exemptionsB\x0b\n\t_log_type\"\x9d\x07\n\nAutoscaler\x12N\n\x12\x61utoscaling_policy\x18\xd9\xe0\xeai \x01(\x0b\x32*.google.cloud.compute.v1.AutoscalingPolicyH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12 \n\x10recommended_size\x18\xe5\xf6\xfdz \x01(\x05H\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x63\n\x17scaling_schedule_status\x18\xe2\xab\x97\xde\x01 \x03(\x0b\x32>.google.cloud.compute.v1.Autoscaler.ScalingScheduleStatusEntry\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\t\x88\x01\x01\x12L\n\x0estatus_details\x18\xf5\xad\xa1\xad\x01 \x03(\x0b\x32\x30.google.cloud.compute.v1.AutoscalerStatusDetails\x12\x16\n\x06target\x18\x91\xe3\xf9[ \x01(\tH\n\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0b\x88\x01\x01\x1al\n\x1aScalingScheduleStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.ScalingScheduleStatus:\x02\x38\x01\"^\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0c\n\x05\x45RROR\x10\xe8\xb3\xcb\x1f\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x42\x15\n\x13_autoscaling_policyB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x13\n\x11_recommended_sizeB\t\n\x07_regionB\x0c\n\n_self_linkB\t\n\x07_statusB\t\n\x07_targetB\x07\n\x05_zone\"\xbf\x03\n\x18\x41utoscalerAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12N\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32<.google.cloud.compute.v1.AutoscalerAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\\\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.AutoscalersScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa5\x02\n\x0e\x41utoscalerList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x35\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32#.google.cloud.compute.v1.Autoscaler\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xcb\x06\n\x17\x41utoscalerStatusDetails\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x01\x88\x01\x01\"\xea\x05\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x1f\n\x17\x41LL_INSTANCES_UNHEALTHY\x10\xe5\x90\x8d\xc1\x01\x12%\n\x1e\x42\x41\x43KEND_SERVICE_DOES_NOT_EXIST\x10\x9a\x9a\xa3[\x12 \n\x1a\x43\x41PPED_AT_MAX_NUM_REPLICAS\x10\xd9\xd3\x1f\x12,\n$CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE\x10\xb3\xb4\xee\x9c\x01\x12\x1c\n\x15\x43USTOM_METRIC_INVALID\x10\xd6\xb9\xbd\x61\x12\x15\n\x0eMIN_EQUALS_MAX\x10\xf1\x99\xac\x01\x12(\n!MISSING_CUSTOM_METRIC_DATA_POINTS\x10\xde\xa9\x9f-\x12*\n\"MISSING_LOAD_BALANCING_DATA_POINTS\x10\xd2\xa8\x8f\xf3\x01\x12\x0f\n\x08MODE_OFF\x10\xb3\x91\xa4N\x12\x1a\n\x13MODE_ONLY_SCALE_OUT\x10\xe2\xb7\xea\x01\x12\x13\n\x0cMODE_ONLY_UP\x10\xf2\xda\x92\x30\x12$\n\x1dMORE_THAN_ONE_BACKEND_SERVICE\x10\xdd\xcb\xb8H\x12\"\n\x1aNOT_ENOUGH_QUOTA_AVAILABLE\x10\xbf\xaf\x9b\xc0\x01\x12 \n\x18REGION_RESOURCE_STOCKOUT\x10\xfe\xc9\x88\xfc\x01\x12$\n\x1dSCALING_TARGET_DOES_NOT_EXIST\x10\x9b\x93\xbd:\x12\x36\n/SCHEDULED_INSTANCES_GREATER_THAN_AUTOSCALER_MAX\x10\xc2\xeb\xfa\r\x12\x34\n,SCHEDULED_INSTANCES_LESS_THAN_AUTOSCALER_MIN\x10\xb5\xc6\xf5\xbd\x01\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\x12\x39\n1UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION\x10\xd1\x96\xe1\x9d\x01\x12\x1d\n\x16ZONE_RESOURCE_STOCKOUT\x10\xb6\xcf\x9d\x64\x42\n\n\x08_messageB\x07\n\x05_type\"\x9c\x01\n\x15\x41utoscalersScopedList\x12<\n\x0b\x61utoscalers\x18\xfc\xb8\x8c\xde\x01 \x03(\x0b\x32#.google.cloud.compute.v1.Autoscaler\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xe9\x07\n\x11\x41utoscalingPolicy\x12$\n\x14\x63ool_down_period_sec\x18\x9a\x87\xad\x33 \x01(\x05H\x00\x88\x01\x01\x12Z\n\x0f\x63pu_utilization\x18\x8b\xa4\xe3\xb5\x01 \x01(\x0b\x32\x38.google.cloud.compute.v1.AutoscalingPolicyCpuUtilizationH\x01\x88\x01\x01\x12h\n\x1a\x63ustom_metric_utilizations\x18\xf2\xfd\xf6> \x03(\x0b\x32\x41.google.cloud.compute.v1.AutoscalingPolicyCustomMetricUtilization\x12o\n\x1aload_balancing_utilization\x18\xe3\xd1\xf5\xcc\x01 \x01(\x0b\x32\x42.google.cloud.compute.v1.AutoscalingPolicyLoadBalancingUtilizationH\x02\x88\x01\x01\x12 \n\x10max_num_replicas\x18\xcf\x94\xdc\x1d \x01(\x05H\x03\x88\x01\x01\x12!\n\x10min_num_replicas\x18\xa1\xf8\xa1\xff\x01 \x01(\x05H\x04\x88\x01\x01\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x05\x88\x01\x01\x12[\n\x10scale_in_control\x18\xd8\xbc\xce\xfb\x01 \x01(\x0b\x32\x38.google.cloud.compute.v1.AutoscalingPolicyScaleInControlH\x06\x88\x01\x01\x12_\n\x11scaling_schedules\x18\x84\xf4\xbc\xa9\x01 \x03(\x0b\x32@.google.cloud.compute.v1.AutoscalingPolicy.ScalingSchedulesEntry\x1ar\n\x15ScalingSchedulesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12H\n\x05value\x18\x02 \x01(\x0b\x32\x39.google.cloud.compute.v1.AutoscalingPolicyScalingSchedule:\x02\x38\x01\"V\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\t\n\x03OFF\x10\xcf\xe2\x04\x12\x07\n\x02ON\x10\xdf\x13\x12\x15\n\x0eONLY_SCALE_OUT\x10\xc6\xf3\xe8H\x12\x0f\n\x07ONLY_UP\x10\x8e\xd0\xfc\xe3\x01\x42\x17\n\x15_cool_down_period_secB\x12\n\x10_cpu_utilizationB\x1d\n\x1b_load_balancing_utilizationB\x13\n\x11_max_num_replicasB\x13\n\x11_min_num_replicasB\x07\n\x05_modeB\x13\n\x11_scale_in_control\"\xf6\x01\n\x1f\x41utoscalingPolicyCpuUtilization\x12\"\n\x11predictive_method\x18\xc1\x97\x89\xba\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12utilization_target\x18\xce\xec\xf9\x66 \x01(\x01H\x01\x88\x01\x01\"^\n\x10PredictiveMethod\x12\x1f\n\x1bUNDEFINED_PREDICTIVE_METHOD\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x1c\n\x15OPTIMIZE_AVAILABILITY\x10\xfd\xe6\xc5\x05\x42\x14\n\x12_predictive_methodB\x15\n\x13_utilization_target\"\xbf\x03\n(AutoscalingPolicyCustomMetricUtilization\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x06metric\x18\xb0\xeb\x97\xfe\x01 \x01(\tH\x01\x88\x01\x01\x12+\n\x1asingle_instance_assignment\x18\xc0\xcc\xd8\xf0\x01 \x01(\x01H\x02\x88\x01\x01\x12\"\n\x12utilization_target\x18\xce\xec\xf9\x66 \x01(\x01H\x03\x88\x01\x01\x12(\n\x17utilization_target_type\x18\x8b\xa5\x9a\xa2\x01 \x01(\tH\x04\x88\x01\x01\"~\n\x15UtilizationTargetType\x12%\n!UNDEFINED_UTILIZATION_TARGET_TYPE\x10\x00\x12\x17\n\x10\x44\x45LTA_PER_MINUTE\x10\x9d\xbd\xd8)\x12\x17\n\x10\x44\x45LTA_PER_SECOND\x10\xfd\xf9\xd6y\x12\x0c\n\x05GAUGE\x10\xd9\xb1\x9d B\t\n\x07_filterB\t\n\x07_metricB\x1d\n\x1b_single_instance_assignmentB\x15\n\x13_utilization_targetB\x1a\n\x18_utilization_target_type\"f\n)AutoscalingPolicyLoadBalancingUtilization\x12\"\n\x12utilization_target\x18\xce\xec\xf9\x66 \x01(\x01H\x00\x88\x01\x01\x42\x15\n\x13_utilization_target\"\xc2\x01\n\x1f\x41utoscalingPolicyScaleInControl\x12O\n\x16max_scaled_in_replicas\x18\xeb\xd5\x95V \x01(\x0b\x32\'.google.cloud.compute.v1.FixedOrPercentH\x00\x88\x01\x01\x12\x1f\n\x0ftime_window_sec\x18\xb4\x80\xae\x11 \x01(\x05H\x01\x88\x01\x01\x42\x19\n\x17_max_scaled_in_replicasB\x12\n\x10_time_window_sec\"\xba\x02\n AutoscalingPolicyScalingSchedule\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x08\x64isabled\x18\xfc\xf4\x98\x81\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1c\n\x0c\x64uration_sec\x18\xa6\x9e\xa1\x65 \x01(\x05H\x02\x88\x01\x01\x12&\n\x15min_required_replicas\x18\xae\x9d\xa5\xae\x01 \x01(\x05H\x03\x88\x01\x01\x12\x19\n\x08schedule\x18\x97\xa5\x9a\xb3\x01 \x01(\tH\x04\x88\x01\x01\x12\x19\n\ttime_zone\x18\xde\x83\xc9\x11 \x01(\tH\x05\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0b\n\t_disabledB\x0f\n\r_duration_secB\x18\n\x16_min_required_replicasB\x0b\n\t_scheduleB\x0c\n\n_time_zone\"\xa8\x0c\n\x07\x42\x61\x63kend\x12\x1f\n\x0e\x62\x61lancing_mode\x18\x89\xcb\x96\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12 \n\x0f\x63\x61pacity_scaler\x18\x8d\xc7\xd4\x96\x01 \x01(\x02H\x01\x88\x01\x01\x12H\n\x0e\x63ustom_metrics\x18\xf5\xe3\xe3\xcc\x01 \x03(\x0b\x32,.google.cloud.compute.v1.BackendCustomMetric\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x08\x66\x61ilover\x18\xf2\xa9\x9d\x42 \x01(\x08H\x03\x88\x01\x01\x12\x15\n\x05group\x18\xff\xec\x83/ \x01(\tH\x04\x88\x01\x01\x12\x1f\n\x0fmax_connections\x18\xfa\xd5\xe1\x34 \x01(\x05H\x05\x88\x01\x01\x12,\n\x1cmax_connections_per_endpoint\x18\x9c\xe7\xb6g \x01(\x05H\x06\x88\x01\x01\x12,\n\x1cmax_connections_per_instance\x18\x9c\xd5\xf4\x31 \x01(\x05H\x07\x88\x01\x01\x12\'\n\x16max_in_flight_requests\x18\xd4\x84\xa7\x82\x01 \x01(\x05H\x08\x88\x01\x01\x12\x34\n#max_in_flight_requests_per_endpoint\x18\x82\xbd\xea\x92\x01 \x01(\x05H\t\x88\x01\x01\x12\x33\n#max_in_flight_requests_per_instance\x18\x82\xab\xa8] \x01(\x05H\n\x88\x01\x01\x12\x19\n\x08max_rate\x18\xdb\xbd\xc8\xc2\x01 \x01(\x05H\x0b\x88\x01\x01\x12%\n\x15max_rate_per_endpoint\x18\xdb\xaa\xf4= \x01(\x02H\x0c\x88\x01\x01\x12%\n\x15max_rate_per_instance\x18\xdb\x98\xb2\x08 \x01(\x02H\r\x88\x01\x01\x12\x1f\n\x0fmax_utilization\x18\xc7\xf7\xd4\x46 \x01(\x02H\x0e\x88\x01\x01\x12]\n\x12orchestration_info\x18\xec\xa7\xad\xd2\x01 \x01(\x0b\x32\x38.google.cloud.compute.v1.BackendBackendOrchestrationInfoH\x0f\x88\x01\x01\x12\x1a\n\npreference\x18\xdb\xf9\xf2G \x01(\tH\x10\x88\x01\x01\x12 \n\x10traffic_duration\x18\x96\x93\xc5\x05 \x01(\tH\x11\x88\x01\x01\"\x8b\x01\n\rBalancingMode\x12\x1c\n\x18UNDEFINED_BALANCING_MODE\x10\x00\x12\x11\n\nCONNECTION\x10\xde\xd5\xb9u\x12\x16\n\x0e\x43USTOM_METRICS\x10\xd5\xe3\x8d\x9e\x01\x12\x10\n\tIN_FLIGHT\x10\xca\x91\xcfZ\x12\x0b\n\x04RATE\x10\xe0\x89\x99\x01\x12\x12\n\x0bUTILIZATION\x10\x82\x84\xefJ\"i\n\nPreference\x12\x18\n\x14UNDEFINED_PREFERENCE\x10\x00\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\x12\x1e\n\x16PREFERENCE_UNSPECIFIED\x10\xb3\xeb\xce\xec\x01\x12\x11\n\tPREFERRED\x10\xe1\xb8\xdc\xc7\x01\"q\n\x0fTrafficDuration\x12\x1e\n\x1aUNDEFINED_TRAFFIC_DURATION\x10\x00\x12\x0b\n\x04LONG\x10\xfc\xfc\x8e\x01\x12\x0c\n\x05SHORT\x10\xdc\x98\xce%\x12#\n\x1cTRAFFIC_DURATION_UNSPECIFIED\x10\x8e\xcc\xba~B\x11\n\x0f_balancing_modeB\x12\n\x10_capacity_scalerB\x0e\n\x0c_descriptionB\x0b\n\t_failoverB\x08\n\x06_groupB\x12\n\x10_max_connectionsB\x1f\n\x1d_max_connections_per_endpointB\x1f\n\x1d_max_connections_per_instanceB\x19\n\x17_max_in_flight_requestsB&\n$_max_in_flight_requests_per_endpointB&\n$_max_in_flight_requests_per_instanceB\x0b\n\t_max_rateB\x18\n\x16_max_rate_per_endpointB\x18\n\x16_max_rate_per_instanceB\x12\n\x10_max_utilizationB\x15\n\x13_orchestration_infoB\r\n\x0b_preferenceB\x13\n\x11_traffic_duration\"P\n\x1f\x42\x61\x63kendBackendOrchestrationInfo\x12\x1c\n\x0cresource_uri\x18\xbb\x83\xf0H \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_resource_uri\"\x89\x08\n\rBackendBucket\x12\x1c\n\x0b\x62ucket_name\x18\xc0\x97\x9e\x87\x01 \x01(\tH\x00\x88\x01\x01\x12K\n\ncdn_policy\x18\x84\x8b\x84\x66 \x01(\x0b\x32/.google.cloud.compute.v1.BackendBucketCdnPolicyH\x01\x88\x01\x01\x12 \n\x10\x63ompression_mode\x18\xdc\x91\xc6- \x01(\tH\x02\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x03\x88\x01\x01\x12#\n\x17\x63ustom_response_headers\x18\x96\xc1\xe5\xb8\x01 \x03(\t\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12$\n\x14\x65\x64ge_security_policy\x18\x8f\xd9\xc8\x13 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\nenable_cdn\x18\xf1\xb6\xf5\x86\x01 \x01(\x08H\x06\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x07\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x08\x88\x01\x01\x12&\n\x15load_balancing_scheme\x18\xc4\x8c\xc2\xad\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\n\x88\x01\x01\x12\x44\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32,.google.cloud.compute.v1.BackendBucketParamsH\x0b\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0c\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\r\x88\x01\x01\x12\x41\n\x07used_by\x18\x99\xa0\xd2\xb9\x01 \x03(\x0b\x32,.google.cloud.compute.v1.BackendBucketUsedBy\"U\n\x0f\x43ompressionMode\x12\x1e\n\x1aUNDEFINED_COMPRESSION_MODE\x10\x00\x12\x10\n\tAUTOMATIC\x10\x8b\x84\xe9N\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\"m\n\x13LoadBalancingScheme\x12#\n\x1fUNDEFINED_LOAD_BALANCING_SCHEME\x10\x00\x12\x18\n\x10\x45XTERNAL_MANAGED\x10\x8b\xb6\x92\xf4\x01\x12\x17\n\x10INTERNAL_MANAGED\x10\xfd\xd7\xe7\x11\x42\x0e\n\x0c_bucket_nameB\r\n\x0b_cdn_policyB\x13\n\x11_compression_modeB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x17\n\x15_edge_security_policyB\r\n\x0b_enable_cdnB\x05\n\x03_idB\x07\n\x05_kindB\x18\n\x16_load_balancing_schemeB\x07\n\x05_nameB\t\n\x07_paramsB\t\n\x07_regionB\x0c\n\n_self_link\"\xaf\x03\n\x1b\x42\x61\x63kendBucketAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12Q\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32?.google.cloud.compute.v1.BackendBucketAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a_\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12@\n\x05value\x18\x02 \x01(\x0b\x32\x31.google.cloud.compute.v1.BackendBucketsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xca\x07\n\x16\x42\x61\x63kendBucketCdnPolicy\x12v\n\x1f\x62ypass_cache_on_request_headers\x18\xca\xbd\xeb\xe7\x01 \x03(\x0b\x32I.google.cloud.compute.v1.BackendBucketCdnPolicyBypassCacheOnRequestHeader\x12_\n\x10\x63\x61\x63he_key_policy\x18\xef\xd7\xf8K \x01(\x0b\x32=.google.cloud.compute.v1.BackendBucketCdnPolicyCacheKeyPolicyH\x00\x88\x01\x01\x12\x1a\n\ncache_mode\x18\xc0\xc8\xe2\r \x01(\tH\x01\x88\x01\x01\x12\x1a\n\nclient_ttl\x18\xf8\x8e\xec\r \x01(\x05H\x02\x88\x01\x01\x12\x1b\n\x0b\x64\x65\x66\x61ult_ttl\x18\xee\xfd\xe6/ \x01(\x05H\x03\x88\x01\x01\x12\x18\n\x07max_ttl\x18\x91\x89\xd5\x92\x01 \x01(\x05H\x04\x88\x01\x01\x12!\n\x10negative_caching\x18\xb5\xc3\xa2\xa0\x01 \x01(\x08H\x05\x88\x01\x01\x12h\n\x17negative_caching_policy\x18\xfc\xb5\x8aJ \x03(\x0b\x32\x44.google.cloud.compute.v1.BackendBucketCdnPolicyNegativeCachingPolicy\x12#\n\x12request_coalescing\x18\xd4\x84\x88\xfe\x01 \x01(\x08H\x06\x88\x01\x01\x12!\n\x11serve_while_stale\x18\xdb\xf7\xedp \x01(\x05H\x07\x88\x01\x01\x12-\n\x1csigned_url_cache_max_age_sec\x18\xc6\xa8\xb9\x80\x01 \x01(\x03H\x08\x88\x01\x01\x12 \n\x14signed_url_key_names\x18\xb5\xed\xa7\xb1\x01 \x03(\t\"\x8f\x01\n\tCacheMode\x12\x18\n\x14UNDEFINED_CACHE_MODE\x10\x00\x12\x18\n\x10\x43\x41\x43HE_ALL_STATIC\x10\xe9\x97\xa5\xa9\x01\x12\x17\n\x0f\x46ORCE_CACHE_ALL\x10\xb0\xdd\xe0\xe7\x01\x12\x1a\n\x12INVALID_CACHE_MODE\x10\xc8\xb7\xe8\xb5\x01\x12\x19\n\x12USE_ORIGIN_HEADERS\x10\xa5\x92\xb4\x1a\x42\x13\n\x11_cache_key_policyB\r\n\x0b_cache_modeB\r\n\x0b_client_ttlB\x0e\n\x0c_default_ttlB\n\n\x08_max_ttlB\x13\n\x11_negative_cachingB\x15\n\x13_request_coalescingB\x14\n\x12_serve_while_staleB\x1f\n\x1d_signed_url_cache_max_age_sec\"_\n0BackendBucketCdnPolicyBypassCacheOnRequestHeader\x12\x1b\n\x0bheader_name\x18\xfd\xc1\xc7\x34 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_header_name\"j\n$BackendBucketCdnPolicyCacheKeyPolicy\x12\x1f\n\x14include_http_headers\x18\x86\xfa\x97\x01 \x03(\t\x12!\n\x16query_string_whitelist\x18\xb0\xd8\x81\x19 \x03(\t\"h\n+BackendBucketCdnPolicyNegativeCachingPolicy\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\x05H\x00\x88\x01\x01\x12\x12\n\x03ttl\x18\xec\x83\x07 \x01(\x05H\x01\x88\x01\x01\x42\x07\n\x05_codeB\x06\n\x04_ttl\"\xab\x02\n\x11\x42\x61\x63kendBucketList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x38\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32&.google.cloud.compute.v1.BackendBucket\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb1\x02\n\x17\x42\x61\x63kendBucketListUsable\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x38\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32&.google.cloud.compute.v1.BackendBucket\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbb\x01\n\x13\x42\x61\x63kendBucketParams\x12h\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x45.google.cloud.compute.v1.BackendBucketParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\">\n\x13\x42\x61\x63kendBucketUsedBy\x12\x19\n\treference\x18\xcb\xfe\xec\x46 \x01(\tH\x00\x88\x01\x01\x42\x0c\n\n_reference\"\xa5\x01\n\x18\x42\x61\x63kendBucketsScopedList\x12\x42\n\x0f\x62\x61\x63kend_buckets\x18\x9e\x9a\xdbK \x03(\x0b\x32&.google.cloud.compute.v1.BackendBucket\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x8f\x01\n\x13\x42\x61\x63kendCustomMetric\x12\x18\n\x07\x64ry_run\x18\xf7\xc3\xb6\x9a\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1f\n\x0fmax_utilization\x18\xc7\xf7\xd4\x46 \x01(\x02H\x01\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x02\x88\x01\x01\x42\n\n\x08_dry_runB\x12\n\x10_max_utilizationB\x07\n\x05_name\"\x96(\n\x0e\x42\x61\x63kendService\x12(\n\x17\x61\x66\x66inity_cookie_ttl_sec\x18\x9a\xe9\xb6\xb0\x01 \x01(\x05H\x00\x88\x01\x01\x12\x36\n\x08\x62\x61\x63kends\x18\xdf\x98\xcb\xf3\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Backend\x12L\n\ncdn_policy\x18\x84\x8b\x84\x66 \x01(\x0b\x32\x30.google.cloud.compute.v1.BackendServiceCdnPolicyH\x01\x88\x01\x01\x12K\n\x10\x63ircuit_breakers\x18\x9d\xc7\xf4\xc8\x01 \x01(\x0b\x32(.google.cloud.compute.v1.CircuitBreakersH\x02\x88\x01\x01\x12 \n\x10\x63ompression_mode\x18\xdc\x91\xc6- \x01(\tH\x03\x88\x01\x01\x12Q\n\x13\x63onnection_draining\x18\xab\x8e\xef\xdb\x01 \x01(\x0b\x32+.google.cloud.compute.v1.ConnectionDrainingH\x04\x88\x01\x01\x12k\n\x1a\x63onnection_tracking_policy\x18\xd9\xe0\xd4\x44 \x01(\x0b\x32?.google.cloud.compute.v1.BackendServiceConnectionTrackingPolicyH\x05\x88\x01\x01\x12[\n\x0f\x63onsistent_hash\x18\x9b\xa5\x37 \x01(\x0b\x32;.google.cloud.compute.v1.ConsistentHashLoadBalancerSettingsH\x06\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x07\x88\x01\x01\x12O\n\x0e\x63ustom_metrics\x18\xf5\xe3\xe3\xcc\x01 \x03(\x0b\x32\x33.google.cloud.compute.v1.BackendServiceCustomMetric\x12!\n\x16\x63ustom_request_headers\x18\x88\xd2\xab\r \x03(\t\x12#\n\x17\x63ustom_response_headers\x18\x96\xc1\xe5\xb8\x01 \x03(\t\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x08\x88\x01\x01\x12$\n\x14\x65\x64ge_security_policy\x18\x8f\xd9\xc8\x13 \x01(\tH\t\x88\x01\x01\x12\x1c\n\x0c\x65nable_c_d_n\x18\xbb\xc7\xc7w \x01(\x08H\n\x88\x01\x01\x12\x30\n external_managed_migration_state\x18\xcc\x8f\xf6\x1f \x01(\tH\x0b\x88\x01\x01\x12>\n-external_managed_migration_testing_percentage\x18\xce\x81\xef\xf1\x01 \x01(\x02H\x0c\x88\x01\x01\x12V\n\x0f\x66\x61ilover_policy\x18\x9f\xf2\xb0\x32 \x01(\x0b\x32\x35.google.cloud.compute.v1.BackendServiceFailoverPolicyH\r\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x0e\x88\x01\x01\x12K\n\tha_policy\x18\xb8\xf6\xf2\xf7\x01 \x01(\x0b\x32/.google.cloud.compute.v1.BackendServiceHAPolicyH\x0f\x88\x01\x01\x12\x19\n\rhealth_checks\x18\xae\xaf\xe6\xd5\x01 \x03(\t\x12>\n\x03iap\x18\xd8\xac\x06 \x01(\x0b\x32*.google.cloud.compute.v1.BackendServiceIAPH\x10\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x11\x88\x01\x01\x12+\n\x1bip_address_selection_policy\x18\xc8\xb0\x80% \x01(\tH\x12\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x13\x88\x01\x01\x12&\n\x15load_balancing_scheme\x18\xc4\x8c\xc2\xad\x01 \x01(\tH\x14\x88\x01\x01\x12i\n\x14locality_lb_policies\x18\x9d\xf2\x9c\x43 \x03(\x0b\x32H.google.cloud.compute.v1.BackendServiceLocalityLoadBalancingPolicyConfig\x12\"\n\x12locality_lb_policy\x18\xbf\xf8\xd5> \x01(\tH\x15\x88\x01\x01\x12M\n\nlog_config\x18\x9d\xd1\xc1\xa7\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.BackendServiceLogConfigH\x16\x88\x01\x01\x12\x46\n\x13max_stream_duration\x18\x98\xa5\xa5\x1d \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x17\x88\x01\x01\x12L\n\tmetadatas\x18\xa4\xd6\x87\x04 \x03(\x0b\x32\x36.google.cloud.compute.v1.BackendService.MetadatasEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x18\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x19\x88\x01\x01\x12\x80\x01\n&network_pass_through_lb_traffic_policy\x18\xa6\xec\xe9m \x01(\x0b\x32H.google.cloud.compute.v1.BackendServiceNetworkPassThroughLbTrafficPolicyH\x1a\x88\x01\x01\x12]\n\x12orchestration_info\x18\xec\xa7\xad\xd2\x01 \x01(\x0b\x32\x38.google.cloud.compute.v1.BackendServiceOrchestrationInfoH\x1b\x88\x01\x01\x12M\n\x11outlier_detection\x18\xbe\xcc\x8c\xa9\x01 \x01(\x0b\x32).google.cloud.compute.v1.OutlierDetectionH\x1c\x88\x01\x01\x12\x45\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32-.google.cloud.compute.v1.BackendServiceParamsH\x1d\x88\x01\x01\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x1e\x88\x01\x01\x12\x19\n\tport_name\x18\x89\x87\xe7\x13 \x01(\tH\x1f\x88\x01\x01\x12\x18\n\x08protocol\x18\x98\x9d\xaa( \x01(\tH \x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH!\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\"\x88\x01\x01\x12M\n\x11security_settings\x18\xc2\xbc\x9e\xe4\x01 \x01(\x0b\x32).google.cloud.compute.v1.SecuritySettingsH#\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH$\x88\x01\x01\x12\x1b\n\x10service_bindings\x18\xd8\x91\xd9? \x03(\t\x12!\n\x11service_lb_policy\x18\x91\x8e\x9d- \x01(\tH%\x88\x01\x01\x12!\n\x10session_affinity\x18\xb1\xc1\x99\xdd\x01 \x01(\tH&\x88\x01\x01\x12\x61\n\x1estrong_session_affinity_cookie\x18\x8a\xa8\xcaq \x01(\x0b\x32\x31.google.cloud.compute.v1.BackendServiceHttpCookieH\'\x88\x01\x01\x12@\n\nsubsetting\x18\x90\x90\xdb\xd6\x01 \x01(\x0b\x32#.google.cloud.compute.v1.SubsettingH(\x88\x01\x01\x12\x1b\n\x0btimeout_sec\x18\xf3\xc0\x92& \x01(\x05H)\x88\x01\x01\x12P\n\x0ctls_settings\x18\xe7\xad\x80\' \x01(\x0b\x32\x32.google.cloud.compute.v1.BackendServiceTlsSettingsH*\x88\x01\x01\x12\x42\n\x07used_by\x18\x99\xa0\xd2\xb9\x01 \x03(\x0b\x32-.google.cloud.compute.v1.BackendServiceUsedBy\x1a\x30\n\x0eMetadatasEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"U\n\x0f\x43ompressionMode\x12\x1e\n\x1aUNDEFINED_COMPRESSION_MODE\x10\x00\x12\x10\n\tAUTOMATIC\x10\x8b\x84\xe9N\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\"\x95\x01\n\x1d\x45xternalManagedMigrationState\x12.\n*UNDEFINED_EXTERNAL_MANAGED_MIGRATION_STATE\x10\x00\x12\x0f\n\x07PREPARE\x10\xe7\xb1\xc6\xbe\x01\x12\x17\n\x10TEST_ALL_TRAFFIC\x10\xf2\xa1\x82&\x12\x1a\n\x12TEST_BY_PERCENTAGE\x10\x95\x8d\xfc\xf4\x01\"\xae\x01\n\x18IpAddressSelectionPolicy\x12)\n%UNDEFINED_IP_ADDRESS_SELECTION_POLICY\x10\x00\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\x12\x10\n\tIPV6_ONLY\x10\xe4\xad\xfc%\x12.\n\'IP_ADDRESS_SELECTION_POLICY_UNSPECIFIED\x10\xe0\x8b\xa2\x11\x12\x13\n\x0bPREFER_IPV6\x10\xd6\x85\xeb\xc2\x01\"\xd5\x01\n\x13LoadBalancingScheme\x12#\n\x1fUNDEFINED_LOAD_BALANCING_SCHEME\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x18\n\x10\x45XTERNAL_MANAGED\x10\x8b\xb6\x92\xf4\x01\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\x12\x17\n\x10INTERNAL_MANAGED\x10\xfd\xd7\xe7\x11\x12\x1c\n\x15INTERNAL_SELF_MANAGED\x10\xce\x97\xd1p\x12%\n\x1dINVALID_LOAD_BALANCING_SCHEME\x10\xfc\x93\xa6\x83\x01\"\x9c\x02\n\x10LocalityLbPolicy\x12 \n\x1cUNDEFINED_LOCALITY_LB_POLICY\x10\x00\x12\x19\n\x11INVALID_LB_POLICY\x10\xb3\xe7\x95\x9a\x01\x12\x14\n\rLEAST_REQUEST\x10\xf9\xc4\x9c\x16\x12\r\n\x06MAGLEV\x10\xea\x97\xea\x38\x12\x1b\n\x14ORIGINAL_DESTINATION\x10\x80\xfd\xa5O\x12\r\n\x06RANDOM\x10\xc3\xb1\x97}\x12\x11\n\tRING_HASH\x10\xbd\xdb\xaf\xce\x01\x12\x12\n\x0bROUND_ROBIN\x10\xf9\x86\xb1I\x12\x1e\n\x17WEIGHTED_GCP_RENDEZVOUS\x10\x88\xc0\xab\'\x12\x16\n\x0fWEIGHTED_MAGLEV\x10\x92\xe0\xc7y\x12\x1b\n\x14WEIGHTED_ROUND_ROBIN\x10\xd1\xf0\xd4\x02\"\x99\x01\n\x08Protocol\x12\x16\n\x12UNDEFINED_PROTOCOL\x10\x00\x12\x0b\n\x04GRPC\x10\x9e\x88\x86\x01\x12\t\n\x03H2C\x10\x99\xa9\x04\x12\x0b\n\x04HTTP\x10\x88\x81\x88\x01\x12\x0c\n\x05HTTP2\x10\xaa\xa1\xf8 \x12\x0c\n\x05HTTPS\x10\xcb\xa1\xf8 \x12\t\n\x03SSL\x10\xec\x83\x05\x12\t\n\x03TCP\x10\xc1\x87\x05\x12\t\n\x03UDP\x10\xa1\x8f\x05\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\"\x8b\x02\n\x0fSessionAffinity\x12\x1e\n\x1aUNDEFINED_SESSION_AFFINITY\x10\x00\x12\x11\n\tCLIENT_IP\x10\x9b\xdc\xe9\xa4\x01\x12\x1f\n\x18\x43LIENT_IP_NO_DESTINATION\x10\x94\x9a\xcd\x32\x12\x1b\n\x14\x43LIENT_IP_PORT_PROTO\x10\xae\xf2\xdci\x12\x16\n\x0f\x43LIENT_IP_PROTO\x10\xa4\xc5\x89\x0c\x12\x18\n\x10GENERATED_COOKIE\x10\xb4\xce\xca\xb0\x01\x12\x13\n\x0cHEADER_FIELD\x10\xa8\x89\xdc_\x12\x13\n\x0bHTTP_COOKIE\x10\xfb\xa3\x83\xec\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x1e\n\x16STRONG_COOKIE_AFFINITY\x10\xfb\xdd\x93\xd1\x01\x42\x1a\n\x18_affinity_cookie_ttl_secB\r\n\x0b_cdn_policyB\x13\n\x11_circuit_breakersB\x13\n\x11_compression_modeB\x16\n\x14_connection_drainingB\x1d\n\x1b_connection_tracking_policyB\x12\n\x10_consistent_hashB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x17\n\x15_edge_security_policyB\x0f\n\r_enable_c_d_nB#\n!_external_managed_migration_stateB0\n._external_managed_migration_testing_percentageB\x12\n\x10_failover_policyB\x0e\n\x0c_fingerprintB\x0c\n\n_ha_policyB\x06\n\x04_iapB\x05\n\x03_idB\x1e\n\x1c_ip_address_selection_policyB\x07\n\x05_kindB\x18\n\x16_load_balancing_schemeB\x15\n\x13_locality_lb_policyB\r\n\x0b_log_configB\x16\n\x14_max_stream_durationB\x07\n\x05_nameB\n\n\x08_networkB)\n\'_network_pass_through_lb_traffic_policyB\x15\n\x13_orchestration_infoB\x14\n\x12_outlier_detectionB\t\n\x07_paramsB\x07\n\x05_portB\x0c\n\n_port_nameB\x0b\n\t_protocolB\t\n\x07_regionB\x12\n\x10_security_policyB\x14\n\x12_security_settingsB\x0c\n\n_self_linkB\x14\n\x12_service_lb_policyB\x13\n\x11_session_affinityB!\n\x1f_strong_session_affinity_cookieB\r\n\x0b_subsettingB\x0e\n\x0c_timeout_secB\x0f\n\r_tls_settings\"\xcb\x03\n\x1c\x42\x61\x63kendServiceAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12R\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32@.google.cloud.compute.v1.BackendServiceAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a`\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x41\n\x05value\x18\x02 \x01(\x0b\x32\x32.google.cloud.compute.v1.BackendServicesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb7\x07\n\x17\x42\x61\x63kendServiceCdnPolicy\x12w\n\x1f\x62ypass_cache_on_request_headers\x18\xca\xbd\xeb\xe7\x01 \x03(\x0b\x32J.google.cloud.compute.v1.BackendServiceCdnPolicyBypassCacheOnRequestHeader\x12I\n\x10\x63\x61\x63he_key_policy\x18\xef\xd7\xf8K \x01(\x0b\x32\'.google.cloud.compute.v1.CacheKeyPolicyH\x00\x88\x01\x01\x12\x1a\n\ncache_mode\x18\xc0\xc8\xe2\r \x01(\tH\x01\x88\x01\x01\x12\x1a\n\nclient_ttl\x18\xf8\x8e\xec\r \x01(\x05H\x02\x88\x01\x01\x12\x1b\n\x0b\x64\x65\x66\x61ult_ttl\x18\xee\xfd\xe6/ \x01(\x05H\x03\x88\x01\x01\x12\x18\n\x07max_ttl\x18\x91\x89\xd5\x92\x01 \x01(\x05H\x04\x88\x01\x01\x12!\n\x10negative_caching\x18\xb5\xc3\xa2\xa0\x01 \x01(\x08H\x05\x88\x01\x01\x12i\n\x17negative_caching_policy\x18\xfc\xb5\x8aJ \x03(\x0b\x32\x45.google.cloud.compute.v1.BackendServiceCdnPolicyNegativeCachingPolicy\x12#\n\x12request_coalescing\x18\xd4\x84\x88\xfe\x01 \x01(\x08H\x06\x88\x01\x01\x12!\n\x11serve_while_stale\x18\xdb\xf7\xedp \x01(\x05H\x07\x88\x01\x01\x12-\n\x1csigned_url_cache_max_age_sec\x18\xc6\xa8\xb9\x80\x01 \x01(\x03H\x08\x88\x01\x01\x12 \n\x14signed_url_key_names\x18\xb5\xed\xa7\xb1\x01 \x03(\t\"\x8f\x01\n\tCacheMode\x12\x18\n\x14UNDEFINED_CACHE_MODE\x10\x00\x12\x18\n\x10\x43\x41\x43HE_ALL_STATIC\x10\xe9\x97\xa5\xa9\x01\x12\x17\n\x0f\x46ORCE_CACHE_ALL\x10\xb0\xdd\xe0\xe7\x01\x12\x1a\n\x12INVALID_CACHE_MODE\x10\xc8\xb7\xe8\xb5\x01\x12\x19\n\x12USE_ORIGIN_HEADERS\x10\xa5\x92\xb4\x1a\x42\x13\n\x11_cache_key_policyB\r\n\x0b_cache_modeB\r\n\x0b_client_ttlB\x0e\n\x0c_default_ttlB\n\n\x08_max_ttlB\x13\n\x11_negative_cachingB\x15\n\x13_request_coalescingB\x14\n\x12_serve_while_staleB\x1f\n\x1d_signed_url_cache_max_age_sec\"`\n1BackendServiceCdnPolicyBypassCacheOnRequestHeader\x12\x1b\n\x0bheader_name\x18\xfd\xc1\xc7\x34 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_header_name\"i\n,BackendServiceCdnPolicyNegativeCachingPolicy\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\x05H\x00\x88\x01\x01\x12\x12\n\x03ttl\x18\xec\x83\x07 \x01(\x05H\x01\x88\x01\x01\x42\x07\n\x05_codeB\x06\n\x04_ttl\"\xeb\x04\n&BackendServiceConnectionTrackingPolicy\x12<\n,connection_persistence_on_unhealthy_backends\x18\xf9\x91\xd8H \x01(\tH\x00\x88\x01\x01\x12&\n\x16\x65nable_strong_affinity\x18\x94\xe6\xd9\x0b \x01(\x08H\x01\x88\x01\x01\x12 \n\x10idle_timeout_sec\x18\x88\xc1\xf4\x0b \x01(\x05H\x02\x88\x01\x01\x12\x1d\n\rtracking_mode\x18\xab\xdc\xf5< \x01(\tH\x03\x88\x01\x01\"\xb0\x01\n(ConnectionPersistenceOnUnhealthyBackends\x12:\n6UNDEFINED_CONNECTION_PERSISTENCE_ON_UNHEALTHY_BACKENDS\x10\x00\x12\x15\n\x0e\x41LWAYS_PERSIST\x10\x84\xe7\xa7\x12\x12\x1b\n\x14\x44\x45\x46\x41ULT_FOR_PROTOCOL\x10\xcc\xa5\xa2\x45\x12\x14\n\rNEVER_PERSIST\x10\xe1\xa5\x8e\x42\"t\n\x0cTrackingMode\x12\x1b\n\x17UNDEFINED_TRACKING_MODE\x10\x00\x12\x1c\n\x15INVALID_TRACKING_MODE\x10\xc3\x83\xbd\x17\x12\x15\n\x0ePER_CONNECTION\x10\xe0\xf6\xcd(\x12\x12\n\x0bPER_SESSION\x10\xb4\xba\xeaVB/\n-_connection_persistence_on_unhealthy_backendsB\x19\n\x17_enable_strong_affinityB\x13\n\x11_idle_timeout_secB\x10\n\x0e_tracking_mode\"a\n\x1a\x42\x61\x63kendServiceCustomMetric\x12\x18\n\x07\x64ry_run\x18\xf7\xc3\xb6\x9a\x01 \x01(\x08H\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\n\n\x08_dry_runB\x07\n\x05_name\"\xf9\x01\n\x1c\x42\x61\x63kendServiceFailoverPolicy\x12\x34\n$disable_connection_drain_on_failover\x18\xe1\xcc\xedV \x01(\x08H\x00\x88\x01\x01\x12)\n\x19\x64rop_traffic_if_unhealthy\x18\x94\xcd\xc5\x35 \x01(\x08H\x01\x88\x01\x01\x12\x1e\n\x0e\x66\x61ilover_ratio\x18\xfe\x94\xb4\x65 \x01(\x02H\x02\x88\x01\x01\x42\'\n%_disable_connection_drain_on_failoverB\x1c\n\x1a_drop_traffic_if_unhealthyB\x11\n\x0f_failover_ratio\"\x8d\x02\n\x19\x42\x61\x63kendServiceGroupHealth\x12[\n\x0b\x61nnotations\x18\xa4\xf6\xb5\x35 \x03(\x0b\x32\x43.google.cloud.compute.v1.BackendServiceGroupHealth.AnnotationsEntry\x12@\n\rhealth_status\x18\xb5\xd6\xba\xb5\x01 \x03(\x0b\x32%.google.cloud.compute.v1.HealthStatus\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x07\n\x05_kind\"\xf2\x01\n\x16\x42\x61\x63kendServiceHAPolicy\x12\x1d\n\rfast_i_p_move\x18\xd9\xbe\x94j \x01(\tH\x00\x88\x01\x01\x12N\n\x06leader\x18\x89\x8a\xa1\xf0\x01 \x01(\x0b\x32\x35.google.cloud.compute.v1.BackendServiceHAPolicyLeaderH\x01\x88\x01\x01\"L\n\nFastIPMove\x12\x1b\n\x17UNDEFINED_FAST_I_P_MOVE\x10\x00\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x0f\n\x07GARP_RA\x10\xb6\x86\xbb\xfb\x01\x42\x10\n\x0e_fast_i_p_moveB\t\n\x07_leader\"\xcd\x01\n\x1c\x42\x61\x63kendServiceHAPolicyLeader\x12\x1e\n\rbackend_group\x18\x94\xc2\xa4\xda\x01 \x01(\tH\x00\x88\x01\x01\x12\x66\n\x10network_endpoint\x18\x86\x91\x8a\x1b \x01(\x0b\x32\x44.google.cloud.compute.v1.BackendServiceHAPolicyLeaderNetworkEndpointH\x01\x88\x01\x01\x42\x10\n\x0e_backend_groupB\x13\n\x11_network_endpoint\"T\n+BackendServiceHAPolicyLeaderNetworkEndpoint\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_instance\"\x97\x01\n\x18\x42\x61\x63kendServiceHttpCookie\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04path\x18\xa5\xc8\xd1\x01 \x01(\tH\x01\x88\x01\x01\x12\x35\n\x03ttl\x18\xec\x83\x07 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x02\x88\x01\x01\x42\x07\n\x05_nameB\x07\n\x05_pathB\x06\n\x04_ttl\"\xfb\x01\n\x11\x42\x61\x63kendServiceIAP\x12\x16\n\x07\x65nabled\x18\xc1\x96> \x01(\x08H\x00\x88\x01\x01\x12!\n\x10oauth2_client_id\x18\xcb\x8e\xde\x95\x01 \x01(\tH\x01\x88\x01\x01\x12$\n\x14oauth2_client_secret\x18\xe0\xe1\xa8\x18 \x01(\tH\x02\x88\x01\x01\x12+\n\x1boauth2_client_secret_sha256\x18\xe6\x8c\xeb\x35 \x01(\tH\x03\x88\x01\x01\x42\n\n\x08_enabledB\x13\n\x11_oauth2_client_idB\x17\n\x15_oauth2_client_secretB\x1e\n\x1c_oauth2_client_secret_sha256\"\xad\x02\n\x12\x42\x61\x63kendServiceList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.BackendService\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb3\x02\n\x18\x42\x61\x63kendServiceListUsable\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.BackendService\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xab\x02\n/BackendServiceLocalityLoadBalancingPolicyConfig\x12s\n\rcustom_policy\x18\xc0\x8b\xa6\x02 \x01(\x0b\x32T.google.cloud.compute.v1.BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicyH\x00\x88\x01\x01\x12\x66\n\x06policy\x18\xb2\xca\xb6+ \x01(\x0b\x32N.google.cloud.compute.v1.BackendServiceLocalityLoadBalancingPolicyConfigPolicyH\x01\x88\x01\x01\x42\x10\n\x0e_custom_policyB\t\n\x07_policy\"{\n;BackendServiceLocalityLoadBalancingPolicyConfigCustomPolicy\x12\x14\n\x04\x64\x61ta\x18\xaa\xdf\xbb\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_dataB\x07\n\x05_name\"\xdb\x02\n5BackendServiceLocalityLoadBalancingPolicyConfigPolicy\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\"\x82\x02\n\x04Name\x12\x12\n\x0eUNDEFINED_NAME\x10\x00\x12\x19\n\x11INVALID_LB_POLICY\x10\xb3\xe7\x95\x9a\x01\x12\x14\n\rLEAST_REQUEST\x10\xf9\xc4\x9c\x16\x12\r\n\x06MAGLEV\x10\xea\x97\xea\x38\x12\x1b\n\x14ORIGINAL_DESTINATION\x10\x80\xfd\xa5O\x12\r\n\x06RANDOM\x10\xc3\xb1\x97}\x12\x11\n\tRING_HASH\x10\xbd\xdb\xaf\xce\x01\x12\x12\n\x0bROUND_ROBIN\x10\xf9\x86\xb1I\x12\x1e\n\x17WEIGHTED_GCP_RENDEZVOUS\x10\x88\xc0\xab\'\x12\x16\n\x0fWEIGHTED_MAGLEV\x10\x92\xe0\xc7y\x12\x1b\n\x14WEIGHTED_ROUND_ROBIN\x10\xd1\xf0\xd4\x02\x42\x07\n\x05_name\"\xb0\x02\n\x17\x42\x61\x63kendServiceLogConfig\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1b\n\x0foptional_fields\x18\xf8\xc8\x86\xfc\x01 \x03(\t\x12\x1d\n\roptional_mode\x18\xa2\x86\xaf= \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0bsample_rate\x18\xd5\x94\x86I \x01(\x02H\x02\x88\x01\x01\"v\n\x0cOptionalMode\x12\x1b\n\x17UNDEFINED_OPTIONAL_MODE\x10\x00\x12\x0e\n\x06\x43USTOM\x10\xf1\xfe\xa5\xb9\x01\x12\x1b\n\x14\x45XCLUDE_ALL_OPTIONAL\x10\xc3\xdd\xb4P\x12\x1c\n\x14INCLUDE_ALL_OPTIONAL\x10\xb5\xed\xb2\xff\x01\x42\t\n\x07_enableB\x10\n\x0e_optional_modeB\x0e\n\x0c_sample_rate\"\xbc\x01\n/BackendServiceNetworkPassThroughLbTrafficPolicy\x12v\n\x0ezonal_affinity\x18\xc3\x8a\xdb\xff\x01 \x01(\x0b\x32U.google.cloud.compute.v1.BackendServiceNetworkPassThroughLbTrafficPolicyZonalAffinityH\x00\x88\x01\x01\x42\x11\n\x0f_zonal_affinity\"\xb4\x02\n\n\trx_packet\x18\xa1\x81\xeb\xf0\x01 \x01(\x0b\x32\".google.cloud.compute.v1.BfdPacketH\x06\x88\x01\x01\x12=\n\ttx_packet\x18\xa3\xbd\x8e\x35 \x01(\x0b\x32\".google.cloud.compute.v1.BfdPacketH\x07\x88\x01\x01\x12\x19\n\tuptime_ms\x18\xdd\xda\xe5; \x01(\x03H\x08\x88\x01\x01\"\x80\x01\n\x1c\x42\x66\x64SessionInitializationMode\x12-\n)UNDEFINED_BFD_SESSION_INITIALIZATION_MODE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x0f\n\x07PASSIVE\x10\x87\xf6\xd7\xdc\x01\"\xe9\x02\n\x0fLocalDiagnostic\x12\x1e\n\x1aUNDEFINED_LOCAL_DIAGNOSTIC\x10\x00\x12\x1c\n\x15\x41\x44MINISTRATIVELY_DOWN\x10\xa6\x8e\x83:\x12\x1d\n\x16\x43ONCATENATED_PATH_DOWN\x10\x8c\xa9\xbe\x0c\x12%\n\x1e\x43ONTROL_DETECTION_TIME_EXPIRED\x10\xef\xf8\xcc@\x12\x1d\n\x16\x44IAGNOSTIC_UNSPECIFIED\x10\xff\x84\x80\x1c\x12\x1b\n\x14\x45\x43HO_FUNCTION_FAILED\x10\xea\xd8\x9di\x12\x1d\n\x16\x46ORWARDING_PLANE_RESET\x10\xaa\xae\xb3\t\x12&\n\x1eNEIGHBOR_SIGNALED_SESSION_DOWN\x10\xb6\xfe\xb8\xb2\x01\x12\x14\n\rNO_DIAGNOSTIC\x10\xe5\xc1\x8cj\x12\x11\n\tPATH_DOWN\x10\xfc\x90\xc9\x8a\x01\x12&\n\x1eREVERSE_CONCATENATED_PATH_DOWN\x10\xa9\xb5\xc8\xe4\x01\"x\n\nLocalState\x12\x19\n\x15UNDEFINED_LOCAL_STATE\x10\x00\x12\x11\n\nADMIN_DOWN\x10\xb2\xdf\xa5=\x12\x0b\n\x04\x44OWN\x10\xa2\xb9\x80\x01\x12\x0b\n\x04INIT\x10\x90\xba\x89\x01\x12\x19\n\x11STATE_UNSPECIFIED\x10\xc9\xd0\xbc\xe0\x01\x12\x07\n\x02UP\x10\x9b\x15\x42\"\n _bfd_session_initialization_modeB!\n\x1f_config_update_timestamp_microsB\x18\n\x16_control_packet_countsB\x13\n\x11_local_diagnosticB\x0e\n\x0c_local_stateB*\n(_negotiated_local_control_tx_interval_msB\x0c\n\n_rx_packetB\x0c\n\n_tx_packetB\x0c\n\n_uptime_ms\"\xcd\x01\n\x15\x42\x66\x64StatusPacketCounts\x12\x16\n\x06num_rx\x18\x9f\xa3\xe3\x12 \x01(\rH\x00\x88\x01\x01\x12 \n\x0fnum_rx_rejected\x18\x9e\xae\xff\x85\x01 \x01(\rH\x01\x88\x01\x01\x12\"\n\x11num_rx_successful\x18\xba\x8a\x91\xd9\x01 \x01(\rH\x02\x88\x01\x01\x12\x16\n\x06num_tx\x18\xdd\xa3\xe3\x12 \x01(\rH\x03\x88\x01\x01\x42\t\n\x07_num_rxB\x12\n\x10_num_rx_rejectedB\x14\n\x12_num_rx_successfulB\t\n\x07_num_tx\"\x81\x03\n\x08\x42gpRoute\x12<\n\x08\x61s_paths\x18\xa1\xc5\xcc\x41 \x03(\x0b\x32\'.google.cloud.compute.v1.BgpRouteAsPath\x12\x16\n\x0b\x63ommunities\x18\xc7\xd4\xe2Y \x03(\t\x12\x61\n\x0b\x64\x65stination\x18\x8e\x88\x99V \x01(\x0b\x32\x44.google.cloud.compute.v1.BgpRouteNetworkLayerReachabilityInformationH\x00\x88\x01\x01\x12\x12\n\x03med\x18\xcc\xcb\x06 \x01(\rH\x01\x88\x01\x01\x12\x16\n\x06origin\x18\xa6\xde\x86\x1f \x01(\tH\x02\x88\x01\x01\"m\n\x06Origin\x12\x14\n\x10UNDEFINED_ORIGIN\x10\x00\x12\x16\n\x0e\x42GP_ORIGIN_EGP\x10\xe9\xce\xd6\xb4\x01\x12\x16\n\x0e\x42GP_ORIGIN_IGP\x10\xed\xec\xd6\xb4\x01\x12\x1d\n\x15\x42GP_ORIGIN_INCOMPLETE\x10\x83\x93\xf7\xd7\x01\x42\x0e\n\x0c_destinationB\x06\n\x04_medB\t\n\x07_origin\"\xa8\x01\n\x0e\x42gpRouteAsPath\x12\x0f\n\x04\x61sns\x18\xf7\xaa\xb7\x01 \x03(\x05\x12\x11\n\x06\x61sns32\x18\x96\xb4\xb9` \x03(\r\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x00\x88\x01\x01\"S\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x1d\n\x15\x41S_PATH_TYPE_SEQUENCE\x10\xb9\xf3\x84\xad\x01\x12\x18\n\x10\x41S_PATH_TYPE_SET\x10\xca\xa6\xa4\x90\x01\x42\x07\n\x05_type\"v\n+BgpRouteNetworkLayerReachabilityInformation\x12\x18\n\x07path_id\x18\xf5\xbe\xcd\x86\x01 \x01(\rH\x00\x88\x01\x01\x12\x16\n\x06prefix\x18\x92\xe5\xd2, \x01(\tH\x01\x88\x01\x01\x42\n\n\x08_path_idB\t\n\x07_prefix\"\xb1\x01\n\x07\x42inding\x12\x1b\n\nbinding_id\x18\x95\xf2\xa9\xd2\x01 \x01(\tH\x00\x88\x01\x01\x12\x38\n\tcondition\x18\x9b\xda\xa5\x65 \x01(\x0b\x32\x1d.google.cloud.compute.v1.ExprH\x01\x88\x01\x01\x12\x13\n\x07members\x18\x99\x92\xbb\xc4\x01 \x03(\t\x12\x14\n\x04role\x18\xf6\x80\xd6\x01 \x01(\tH\x02\x88\x01\x01\x42\r\n\x0b_binding_idB\x0c\n\n_conditionB\x07\n\x05_role\"\xe8\x01\n\x15\x42ulkInsertDiskRequest\x12\x64\n\"bulk_insert_disk_resource_resource\x18\xd6\xf9\x97\x8a\x01 \x01(\x0b\x32/.google.cloud.compute.v1.BulkInsertDiskResourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xfa\x02\n\x16\x42ulkInsertDiskResource\x12j\n!instant_snapshot_group_parameters\x18\xe7\xdf\x90\x08 \x01(\x0b\x32\x37.google.cloud.compute.v1.InstantSnapshotGroupParametersH\x00\x88\x01\x01\x12[\n\x19snapshot_group_parameters\x18\xc5\xf1\x92\x14 \x01(\x0b\x32\x30.google.cloud.compute.v1.SnapshotGroupParametersH\x01\x88\x01\x01\x12/\n\x1fsource_consistency_group_policy\x18\xdd\xa2\xad\t \x01(\tH\x02\x88\x01\x01\x42$\n\"_instant_snapshot_group_parametersB\x1c\n\x1a_snapshot_group_parametersB\"\n _source_consistency_group_policy\"\xf3\x01\n\x19\x42ulkInsertInstanceRequest\x12k\n&bulk_insert_instance_resource_resource\x18\xce\xc2\xe0\x13 \x01(\x0b\x32\x33.google.cloud.compute.v1.BulkInsertInstanceResourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa6\x06\n\x1a\x42ulkInsertInstanceResource\x12\x15\n\x05\x63ount\x18\x8f\xa2\x9d- \x01(\x03H\x00\x88\x01\x01\x12_\n\x1binstance_flexibility_policy\x18\x82\x8e\xec\x0c \x01(\x0b\x32\x32.google.cloud.compute.v1.InstanceFlexibilityPolicyH\x01\x88\x01\x01\x12P\n\x13instance_properties\x18\x9d\x9e\xd8\x66 \x01(\x0b\x32+.google.cloud.compute.v1.InstancePropertiesH\x02\x88\x01\x01\x12I\n\x0flocation_policy\x18\xfc\xb9\x87\xde\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.LocationPolicyH\x03\x88\x01\x01\x12\x1a\n\tmin_count\x18\xe2\xa9\xbf\xf9\x01 \x01(\x03H\x04\x88\x01\x01\x12\x1d\n\x0cname_pattern\x18\xdc\xa3\xa9\xc5\x01 \x01(\tH\x05\x88\x01\x01\x12r\n\x17per_instance_properties\x18\xfb\xb9\xde\x33 \x03(\x0b\x32N.google.cloud.compute.v1.BulkInsertInstanceResource.PerInstancePropertiesEntry\x12)\n\x18source_instance_template\x18\xc0\xc3\xc1\x9e\x01 \x01(\tH\x06\x88\x01\x01\x1a\x86\x01\n\x1aPerInstancePropertiesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12W\n\x05value\x18\x02 \x01(\x0b\x32H.google.cloud.compute.v1.BulkInsertInstanceResourcePerInstanceProperties:\x02\x38\x01\x42\x08\n\x06_countB\x1e\n\x1c_instance_flexibility_policyB\x16\n\x14_instance_propertiesB\x12\n\x10_location_policyB\x0c\n\n_min_countB\x0f\n\r_name_patternB\x1b\n\x19_source_instance_template\"w\n/BulkInsertInstanceResourcePerInstanceProperties\x12\x18\n\x08hostname\x18\xb3\xb8\x85q \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_hostnameB\x07\n\x05_name\"\x9c\x03\n\x19\x42ulkInsertOperationStatus\x12!\n\x10\x63reated_vm_count\x18\xfe\xa9\xa2\xbd\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x10\x64\x65leted_vm_count\x18\xed\xd5\xca\x81\x01 \x01(\x05H\x01\x88\x01\x01\x12)\n\x19\x66\x61iled_to_create_vm_count\x18\xe8\xbd\xeb\x1b \x01(\x05H\x02\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x03\x88\x01\x01\x12 \n\x0ftarget_vm_count\x18\xf5\xa0\x92\xfe\x01 \x01(\x05H\x04\x88\x01\x01\"m\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x0b\n\x04\x44ONE\x10\x82\xb7\x80\x01\x12\x13\n\x0cROLLING_BACK\x10\xc1\x9d\xd9{\x12\x19\n\x12STATUS_UNSPECIFIED\x10\xca\xcc\x8b\x14\x42\x13\n\x11_created_vm_countB\x13\n\x11_deleted_vm_countB\x1c\n\x1a_failed_to_create_vm_countB\t\n\x07_statusB\x12\n\x10_target_vm_count\"\xf2\x01\n\x1b\x42ulkInsertRegionDiskRequest\x12\x64\n\"bulk_insert_disk_resource_resource\x18\xd6\xf9\x97\x8a\x01 \x01(\x0b\x32/.google.cloud.compute.v1.BulkInsertDiskResourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xfd\x01\n\x1f\x42ulkInsertRegionInstanceRequest\x12k\n&bulk_insert_instance_resource_resource\x18\xce\xc2\xe0\x13 \x01(\x0b\x32\x33.google.cloud.compute.v1.BulkInsertInstanceResourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x97\x02\n\x18\x42ulkSetLabelsDiskRequest\x12i\n%bulk_zone_set_labels_request_resource\x18\x9b\xa5\xac\xfd\x01 \x01(\x0b\x32\x31.google.cloud.compute.v1.BulkZoneSetLabelsRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x0b\n\t_resource\"\xcd\x01\n\x14\x42ulkSetLabelsRequest\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x00\x88\x01\x01\x12M\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x39.google.cloud.compute.v1.BulkSetLabelsRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x14\n\x12_label_fingerprint\"^\n\x18\x42ulkZoneSetLabelsRequest\x12\x42\n\x08requests\x18\xc4\xbf\xbd\x44 \x03(\x0b\x32-.google.cloud.compute.v1.BulkSetLabelsRequest\"\x81\x01\n\x10\x42undledLocalSsds\x12!\n\x11\x64\x65\x66\x61ult_interface\x18\xbb\xc1\xa0\x08 \x01(\tH\x00\x88\x01\x01\x12 \n\x0fpartition_count\x18\xfa\xde\xe5\xc2\x01 \x01(\x05H\x01\x88\x01\x01\x42\x14\n\x12_default_interfaceB\x12\n\x10_partition_count\"l\n\x15\x43\x61\x63heInvalidationRule\x12\x15\n\ncache_tags\x18\xb6\xbd\xee\r \x03(\t\x12\x14\n\x04host\x18\xa8\xeb\xc3\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04path\x18\xa5\xc8\xd1\x01 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_hostB\x07\n\x05_path\"\xc2\x02\n\x0e\x43\x61\x63heKeyPolicy\x12\x1d\n\x0cinclude_host\x18\xdf\x85\x94\xe8\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1f\n\x14include_http_headers\x18\x86\xfa\x97\x01 \x03(\t\x12 \n\x15include_named_cookies\x18\xb2\xb0\xd1) \x03(\t\x12!\n\x10include_protocol\x18\xcf\xd0\xdc\x90\x01 \x01(\x08H\x01\x88\x01\x01\x12%\n\x14include_query_string\x18\x9f\xf3\x84\xe2\x01 \x01(\x08H\x02\x88\x01\x01\x12\"\n\x16query_string_blacklist\x18\x86\xaa\xa1\xa9\x01 \x03(\t\x12!\n\x16query_string_whitelist\x18\xb0\xd8\x81\x19 \x03(\tB\x0f\n\r_include_hostB\x13\n\x11_include_protocolB\x17\n\x15_include_query_string\"\xdc\x06\n\x0b\x43\x61\x63hePolicy\x12,\n!cache_bypass_request_header_names\x18\x80\xb5\x9b^ \x03(\t\x12T\n\x10\x63\x61\x63he_key_policy\x18\xef\xd7\xf8K \x01(\x0b\x32\x32.google.cloud.compute.v1.CachePolicyCacheKeyPolicyH\x00\x88\x01\x01\x12\x1a\n\ncache_mode\x18\xc0\xc8\xe2\r \x01(\tH\x01\x88\x01\x01\x12=\n\nclient_ttl\x18\xf8\x8e\xec\r \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x02\x88\x01\x01\x12>\n\x0b\x64\x65\x66\x61ult_ttl\x18\xee\xfd\xe6/ \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x03\x88\x01\x01\x12;\n\x07max_ttl\x18\x91\x89\xd5\x92\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x04\x88\x01\x01\x12!\n\x10negative_caching\x18\xb5\xc3\xa2\xa0\x01 \x01(\x08H\x05\x88\x01\x01\x12]\n\x17negative_caching_policy\x18\xfc\xb5\x8aJ \x03(\x0b\x32\x39.google.cloud.compute.v1.CachePolicyNegativeCachingPolicy\x12#\n\x12request_coalescing\x18\xd4\x84\x88\xfe\x01 \x01(\x08H\x06\x88\x01\x01\x12\x44\n\x11serve_while_stale\x18\xdb\xf7\xedp \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x07\x88\x01\x01\"s\n\tCacheMode\x12\x18\n\x14UNDEFINED_CACHE_MODE\x10\x00\x12\x18\n\x10\x43\x41\x43HE_ALL_STATIC\x10\xe9\x97\xa5\xa9\x01\x12\x17\n\x0f\x46ORCE_CACHE_ALL\x10\xb0\xdd\xe0\xe7\x01\x12\x19\n\x12USE_ORIGIN_HEADERS\x10\xa5\x92\xb4\x1a\x42\x13\n\x11_cache_key_policyB\r\n\x0b_cache_modeB\r\n\x0b_client_ttlB\x0e\n\x0c_default_ttlB\n\n\x08_max_ttlB\x13\n\x11_negative_cachingB\x15\n\x13_request_coalescingB\x14\n\x12_serve_while_stale\"\xd4\x02\n\x19\x43\x61\x63hePolicyCacheKeyPolicy\x12$\n\x19\x65xcluded_query_parameters\x18\x96\x87\xc7; \x03(\t\x12\x1d\n\x0cinclude_host\x18\xdf\x85\x94\xe8\x01 \x01(\x08H\x00\x88\x01\x01\x12!\n\x10include_protocol\x18\xcf\xd0\xdc\x90\x01 \x01(\x08H\x01\x88\x01\x01\x12%\n\x14include_query_string\x18\x9f\xf3\x84\xe2\x01 \x01(\x08H\x02\x88\x01\x01\x12 \n\x15included_cookie_names\x18\xd0\xc8\xf8\x1f \x03(\t\x12!\n\x15included_header_names\x18\xb9\xf3\xc1\xfe\x01 \x03(\t\x12$\n\x19included_query_parameters\x18\xe4\xc5\x8d\x01 \x03(\tB\x0f\n\r_include_hostB\x13\n\x11_include_protocolB\x17\n\x15_include_query_string\"\x80\x01\n CachePolicyNegativeCachingPolicy\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\x05H\x00\x88\x01\x01\x12\x35\n\x03ttl\x18\xec\x83\x07 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x01\x88\x01\x01\x42\x07\n\x05_codeB\x06\n\x04_ttl\"\xf7\x01\n\x19\x43\x61lendarModeAdviceRequest\x12o\n\x16\x66uture_resources_specs\x18\x82\xde\xccy \x03(\x0b\x32L.google.cloud.compute.v1.CalendarModeAdviceRequest.FutureResourcesSpecsEntry\x1ai\n\x19\x46utureResourcesSpecsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12;\n\x05value\x18\x02 \x01(\x0b\x32,.google.cloud.compute.v1.FutureResourcesSpec:\x02\x38\x01\"n\n\x1a\x43\x61lendarModeAdviceResponse\x12P\n\x0frecommendations\x18\xda\xef\xde\x9a\x01 \x03(\x0b\x32\x33.google.cloud.compute.v1.CalendarModeRecommendation\"\xba\x01\n\x1c\x43\x61lendarModeAdviceRpcRequest\x12i\n%calendar_mode_advice_request_resource\x18\xea\xdd\xa5M \x01(\x0b\x32\x32.google.cloud.compute.v1.CalendarModeAdviceRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x89\x02\n\x1a\x43\x61lendarModeRecommendation\x12t\n\x18recommendations_per_spec\x18\xe2\xb0\x9f\x1d \x03(\x0b\x32O.google.cloud.compute.v1.CalendarModeRecommendation.RecommendationsPerSpecEntry\x1au\n\x1bRecommendationsPerSpecEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x45\n\x05value\x18\x02 \x01(\x0b\x32\x36.google.cloud.compute.v1.FutureResourcesRecommendation:\x02\x38\x01\"\xaf\x01\n\x1e\x43\x61ncelFutureReservationRequest\x12\"\n\x12\x66uture_reservation\x18\xd0\xc6\xe6\x1a \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe3\x01\n.CancelInstanceGroupManagerResizeRequestRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0eresize_request\x18\x84\x84\xb9g \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xed\x01\n4CancelRegionInstanceGroupManagerResizeRequestRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0eresize_request\x18\x84\x84\xb9g \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb0\x02\n\x0f\x43ircuitBreakers\x12\x1f\n\x0fmax_connections\x18\xfa\xd5\xe1\x34 \x01(\x05H\x00\x88\x01\x01\x12%\n\x14max_pending_requests\x18\xe7\xa5\x8a\xb3\x01 \x01(\x05H\x01\x88\x01\x01\x12\x1c\n\x0cmax_requests\x18\xbf\xf8\xb2\r \x01(\x05H\x02\x88\x01\x01\x12,\n\x1bmax_requests_per_connection\x18\xc0\x96\xb8\xac\x01 \x01(\x05H\x03\x88\x01\x01\x12\x1b\n\x0bmax_retries\x18\xeb\xa2\xbe\x1a \x01(\x05H\x04\x88\x01\x01\x42\x12\n\x10_max_connectionsB\x17\n\x15_max_pending_requestsB\x0f\n\r_max_requestsB\x1e\n\x1c_max_requests_per_connectionB\x0e\n\x0c_max_retries\"\xb1\x01\n\x1f\x43loneRulesFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12&\n\x16source_firewall_policy\x18\xad\xda\xf6\x0b \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x19\n\x17_source_firewall_policy\"\xdb\x01\n&CloneRulesNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12&\n\x16source_firewall_policy\x18\xad\xda\xf6\x0b \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x19\n\x17_source_firewall_policy\"\x82\x02\n,CloneRulesRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12&\n\x16source_firewall_policy\x18\xad\xda\xf6\x0b \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x19\n\x17_source_firewall_policy\"\xe9\x15\n\nCommitment\x12\x1b\n\nauto_renew\x18\xfd\x97\xa4\xec\x01 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x08\x63\x61tegory\x18\xfe\xf9\x8a\x18 \x01(\tH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12$\n\x14\x63ustom_end_timestamp\x18\xe4\xb4\xd6V \x01(\tH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12\x1e\n\rend_timestamp\x18\xb2\xad\x9a\xdf\x01 \x01(\tH\x05\x88\x01\x01\x12!\n\x15\x65xisting_reservations\x18\xdb\x88\x8c\xeb\x01 \x03(\t\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x07\x88\x01\x01\x12U\n\x10license_resource\x18\xcc\xd4\xea\xd0\x01 \x01(\x0b\x32\x32.google.cloud.compute.v1.LicenseResourceCommitmentH\x08\x88\x01\x01\x12#\n\x18merge_source_commitments\x18\xc1\xaa\xd8Y \x03(\t\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\t\x88\x01\x01\x12\x41\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32).google.cloud.compute.v1.CommitmentParamsH\n\x88\x01\x01\x12\x14\n\x04plan\x18\xa9\x96\xd2\x01 \x01(\tH\x0b\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0c\x88\x01\x01\x12>\n\x0creservations\x18\xa7\xec\xcc\xbe\x01 \x03(\x0b\x32$.google.cloud.compute.v1.Reservation\x12R\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32\x31.google.cloud.compute.v1.CommitmentResourceStatusH\r\x88\x01\x01\x12\x41\n\tresources\x18\xa5\xfc\xb2N \x03(\x0b\x32+.google.cloud.compute.v1.ResourceCommitment\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0e\x88\x01\x01\x12(\n\x17split_source_commitment\x18\xd4\xb7\xfd\xbf\x01 \x01(\tH\x0f\x88\x01\x01\x12\x1f\n\x0fstart_timestamp\x18\xf9\xaa\xf1\' \x01(\tH\x10\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x11\x88\x01\x01\x12\x1f\n\x0estatus_message\x18\xba\xc9\xe9\x8d\x01 \x01(\tH\x12\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x13\x88\x01\x01\"b\n\x08\x43\x61tegory\x12\x16\n\x12UNDEFINED_CATEGORY\x10\x00\x12\x1c\n\x14\x43\x41TEGORY_UNSPECIFIED\x10\xd6\xba\xe6\xf2\x01\x12\x0f\n\x07LICENSE\x10\xa1\xa0\xf0\xa5\x01\x12\x0f\n\x07MACHINE\x10\xa7\xa0\xf3\xdf\x01\"Y\n\x04Plan\x12\x12\n\x0eUNDEFINED_PLAN\x10\x00\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\x17\n\x10THIRTY_SIX_MONTH\x10\x86\xb5\xfd~\x12\x13\n\x0cTWELVE_MONTH\x10\xba\x9a\xc4R\"z\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\tCANCELLED\x10\xb1\xf2\x80\x14\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x0f\n\x07\x45XPIRED\x10\x85\xe6\x88\xe6\x01\x12\x15\n\x0eNOT_YET_ACTIVE\x10\xe9\xe2\xe9\t\"\xd1\t\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x1d\n\x15\x41\x43\x43\x45LERATOR_OPTIMIZED\x10\x93\xd0\xf5\x85\x01\x12\x1f\n\x18\x41\x43\x43\x45LERATOR_OPTIMIZED_A3\x10\xbe\xcf\xceK\x12$\n\x1d\x41\x43\x43\x45LERATOR_OPTIMIZED_A3_MEGA\x10\xd3\x88\xd1J\x12%\n\x1e\x41\x43\x43\x45LERATOR_OPTIMIZED_A3_ULTRA\x10\xcb\xc7\xa1\r\x12\x1f\n\x18\x41\x43\x43\x45LERATOR_OPTIMIZED_A4\x10\xbf\xcf\xceK\x12\x18\n\x11\x43OMPUTE_OPTIMIZED\x10\xdf\xed\xc0K\x12\x1d\n\x15\x43OMPUTE_OPTIMIZED_C2D\x10\xf5\xc0\xdf\xb6\x01\x12\x1c\n\x14\x43OMPUTE_OPTIMIZED_C3\x10\xb0\xab\x8b\xcc\x01\x12\x1d\n\x15\x43OMPUTE_OPTIMIZED_C3D\x10\x94\xc1\xdf\xb6\x01\x12\x1c\n\x14\x43OMPUTE_OPTIMIZED_H3\x10\xcb\xac\x8b\xcc\x01\x12\x1d\n\x15\x43OMPUTE_OPTIMIZED_H4D\x10\xf8\xe6\xdf\xb6\x01\x12\x17\n\x0fGENERAL_PURPOSE\x10\x87\xf9\xf9\x8e\x01\x12\x1a\n\x12GENERAL_PURPOSE_C4\x10\x89\x9e\xfb\x8f\x01\x12\x1a\n\x13GENERAL_PURPOSE_C4A\x10\xd8\xa4\xecn\x12\x1a\n\x13GENERAL_PURPOSE_C4D\x10\xdb\xa4\xecn\x12\x1a\n\x12GENERAL_PURPOSE_E2\x10\xc5\x9e\xfb\x8f\x01\x12\x1a\n\x12GENERAL_PURPOSE_N2\x10\xdc\xa0\xfb\x8f\x01\x12\x1a\n\x13GENERAL_PURPOSE_N2D\x10\xe8\xf6\xecn\x12\x1a\n\x12GENERAL_PURPOSE_N4\x10\xde\xa0\xfb\x8f\x01\x12\x1a\n\x13GENERAL_PURPOSE_N4A\x10\xa3\xf7\xecn\x12\x1a\n\x13GENERAL_PURPOSE_N4D\x10\xa6\xf7\xecn\x12\x1a\n\x13GENERAL_PURPOSE_T2D\x10\xee\xa3\xedn\x12\x19\n\x12GRAPHICS_OPTIMIZED\x10\xd3\xf8\xd4 \x12\x1c\n\x15GRAPHICS_OPTIMIZED_G4\x10\xb9\xd8\xe1\x19\x12\x18\n\x10MEMORY_OPTIMIZED\x10\xc9\xee\xac\x86\x01\x12\x1b\n\x13MEMORY_OPTIMIZED_M3\x10\xbc\x8c\xe0\x83\x01\x12\x1b\n\x13MEMORY_OPTIMIZED_M4\x10\xbd\x8c\xe0\x83\x01\x12\x1e\n\x17MEMORY_OPTIMIZED_M4_6TB\x10\xa2\xc8\xb2\x64\x12#\n\x1cMEMORY_OPTIMIZED_X4_1440_24T\x10\xff\x8f\xc6\x62\x12\x1f\n\x18MEMORY_OPTIMIZED_X4_16TB\x10\xe0\xef\xa6W\x12$\n\x1cMEMORY_OPTIMIZED_X4_1920_32T\x10\x89\x85\x9c\x8b\x01\x12\x1f\n\x18MEMORY_OPTIMIZED_X4_24TB\x10\xbd\xc9\xa8W\x12\x1f\n\x18MEMORY_OPTIMIZED_X4_32TB\x10\x9a\xa3\xaaW\x12\"\n\x1aMEMORY_OPTIMIZED_X4_480_6T\x10\x9e\x9e\x98\xe4\x01\x12\"\n\x1aMEMORY_OPTIMIZED_X4_480_8T\x10\xdc\x9e\x98\xe4\x01\x12#\n\x1bMEMORY_OPTIMIZED_X4_960_12T\x10\x9a\xea\xc4\xca\x01\x12#\n\x1bMEMORY_OPTIMIZED_X4_960_16T\x10\x96\xeb\xc4\xca\x01\x12\x1c\n\x14STORAGE_OPTIMIZED_Z3\x10\xb5\xd9\x87\x97\x01\x12\x18\n\x10TYPE_UNSPECIFIED\x10\x92\xfb\xdb\xd0\x01\x42\r\n\x0b_auto_renewB\x0b\n\t_categoryB\x15\n\x13_creation_timestampB\x17\n\x15_custom_end_timestampB\x0e\n\x0c_descriptionB\x10\n\x0e_end_timestampB\x05\n\x03_idB\x07\n\x05_kindB\x13\n\x11_license_resourceB\x07\n\x05_nameB\t\n\x07_paramsB\x07\n\x05_planB\t\n\x07_regionB\x12\n\x10_resource_statusB\x0c\n\n_self_linkB\x1a\n\x18_split_source_commitmentB\x12\n\x10_start_timestampB\t\n\x07_statusB\x11\n\x0f_status_messageB\x07\n\x05_type\"\xbf\x03\n\x18\x43ommitmentAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12N\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32<.google.cloud.compute.v1.CommitmentAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\\\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.CommitmentsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa5\x02\n\x0e\x43ommitmentList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x35\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32#.google.cloud.compute.v1.Commitment\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb5\x01\n\x10\x43ommitmentParams\x12\x65\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x42.google.cloud.compute.v1.CommitmentParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"|\n\x18\x43ommitmentResourceStatus\x12\x36\n%custom_term_eligibility_end_timestamp\x18\xfb\xab\xc7\xad\x01 \x01(\tH\x00\x88\x01\x01\x42(\n&_custom_term_eligibility_end_timestamp\"\x9c\x01\n\x15\x43ommitmentsScopedList\x12<\n\x0b\x63ommitments\x18\xfe\xaf\xf2\xd6\x01 \x03(\x0b\x32#.google.cloud.compute.v1.Commitment\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xe1\x03\n\x14\x43ompositeHealthCheck\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12#\n\x12health_destination\x18\xab\xf5\xab\x94\x01 \x01(\tH\x03\x88\x01\x01\x12\x1a\n\x0ehealth_sources\x18\xd5\xd1\xdc\xbd\x01 \x03(\t\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\t\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x15\n\x13_health_destinationB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_id\"\xdd\x03\n\"CompositeHealthCheckAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12X\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x46.google.cloud.compute.v1.CompositeHealthCheckAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x66\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12G\n\x05value\x18\x02 \x01(\x0b\x32\x38.google.cloud.compute.v1.CompositeHealthChecksScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xba\x02\n\x1a\x43ompositeHealthCheckHealth\x12m\n\x0ehealth_sources\x18\xd5\xd1\xdc\xbd\x01 \x03(\x0b\x32Q.google.cloud.compute.v1.CompositeHealthChecksGetHealthResponseHealthSourceHealth\x12\x1d\n\x0chealth_state\x18\xee\xe9\xbf\x9a\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\"^\n\x0bHealthState\x12\x1a\n\x16UNDEFINED_HEALTH_STATE\x10\x00\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12\x11\n\tUNHEALTHY\x10\xc4\xb9\xad\xdc\x01\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\x42\x0f\n\r_health_stateB\x07\n\x05_kind\"\xb9\x02\n\x18\x43ompositeHealthCheckList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.CompositeHealthCheck\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xed\x01\n8CompositeHealthChecksGetHealthResponseHealthSourceHealth\x12\x1d\n\x0chealth_state\x18\xee\xe9\xbf\x9a\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\x01\x88\x01\x01\"^\n\x0bHealthState\x12\x1a\n\x16UNDEFINED_HEALTH_STATE\x10\x00\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12\x11\n\tUNHEALTHY\x10\xc4\xb9\xad\xdc\x01\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\x42\x0f\n\r_health_stateB\t\n\x07_source\"\xbc\x01\n\x1f\x43ompositeHealthChecksScopedList\x12R\n\x17\x63omposite_health_checks\x18\xf6\xc7\xf9\xf6\x01 \x03(\x0b\x32-.google.cloud.compute.v1.CompositeHealthCheck\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xd0\x02\n\x1a\x43onfidentialInstanceConfig\x12*\n\x1a\x63onfidential_instance_type\x18\xad\x8c\xde\x14 \x01(\tH\x00\x88\x01\x01\x12+\n\x1b\x65nable_confidential_compute\x18\xbc\xeb\xd9\x30 \x01(\x08H\x01\x88\x01\x01\"\x99\x01\n\x18\x43onfidentialInstanceType\x12(\n$UNDEFINED_CONFIDENTIAL_INSTANCE_TYPE\x10\x00\x12-\n&CONFIDENTIAL_INSTANCE_TYPE_UNSPECIFIED\x10\x85\xb0\xec\x36\x12\t\n\x03SEV\x10\xc4\x80\x05\x12\x0e\n\x07SEV_SNP\x10\xda\xdd\xaf\n\x12\t\n\x03TDX\x10\xe8\x87\x05\x42\x1d\n\x1b_confidential_instance_typeB\x1e\n\x1c_enable_confidential_compute\"S\n\x12\x43onnectionDraining\x12$\n\x14\x64raining_timeout_sec\x18\x9e\xd5\xack \x01(\x05H\x00\x88\x01\x01\x42\x17\n\x15_draining_timeout_sec\"\x88\x02\n\"ConsistentHashLoadBalancerSettings\x12\x62\n\x0bhttp_cookie\x18\xfb\xab\x97\x03 \x01(\x0b\x32\x45.google.cloud.compute.v1.ConsistentHashLoadBalancerSettingsHttpCookieH\x00\x88\x01\x01\x12 \n\x10http_header_name\x18\xc6\xf7\xfao \x01(\tH\x01\x88\x01\x01\x12!\n\x11minimum_ring_size\x18\xbf\xbb\xe1o \x01(\x03H\x02\x88\x01\x01\x42\x0e\n\x0c_http_cookieB\x13\n\x11_http_header_nameB\x14\n\x12_minimum_ring_size\"\xab\x01\n,ConsistentHashLoadBalancerSettingsHttpCookie\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04path\x18\xa5\xc8\xd1\x01 \x01(\tH\x01\x88\x01\x01\x12\x35\n\x03ttl\x18\xec\x83\x07 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x02\x88\x01\x01\x42\x07\n\x05_nameB\x07\n\x05_pathB\x06\n\x04_ttl\"\xbb\x01\n*CopyRulesOrganizationSecurityPolicyRequest\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12&\n\x16source_security_policy\x18\xed\xd5\xfao \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x19\n\x17_source_security_policy\"\x9e\x02\n\nCorsPolicy\x12\"\n\x11\x61llow_credentials\x18\x86\xfe\xbd\xe5\x01 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\rallow_headers\x18\x90\xc1\xc5\x15 \x03(\t\x12\x18\n\rallow_methods\x18\xbc\xf9\xf8\x61 \x03(\t\x12\x1f\n\x14\x61llow_origin_regexes\x18\xd2\x8d\xda\x66 \x03(\t\x12\x18\n\rallow_origins\x18\x97\xce\xf8\\ \x03(\t\x12\x19\n\x08\x64isabled\x18\xfc\xf4\x98\x81\x01 \x01(\x08H\x01\x88\x01\x01\x12\x19\n\x0e\x65xpose_headers\x18\x8b\xcc\x88v \x03(\t\x12\x18\n\x07max_age\x18\xa4\xf7\xd3\x92\x01 \x01(\x05H\x02\x88\x01\x01\x42\x14\n\x12_allow_credentialsB\x0b\n\t_disabledB\n\n\x08_max_age\"\xd1\x02\n*CreateInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x8f\x01\n9instance_group_managers_create_instances_request_resource\x18\x93\xfa\xda\x0b \x01(\x0b\x32\x44.google.cloud.compute.v1.InstanceGroupManagersCreateInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe9\x02\n0CreateInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9d\x01\n@region_instance_group_managers_create_instances_request_resource\x18\x88\xbf\x98\xab\x01 \x01(\x0b\x32J.google.cloud.compute.v1.RegionInstanceGroupManagersCreateInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf7\x01\n%CreateMembersInterconnectGroupRequest\x12#\n\x12interconnect_group\x18\x8e\xb7\xa9\xb9\x01 \x01(\tB\x03\xe0\x41\x02\x12\x85\x01\n3interconnect_groups_create_members_request_resource\x18\xed\xfc\x8b\xa6\x01 \x01(\x0b\x32?.google.cloud.compute.v1.InterconnectGroupsCreateMembersRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\"\x91\x02\n\x19\x43reateSnapshotDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1c\n\x0bguest_flush\x18\xdd\x93\xec\xb7\x01 \x01(\x08H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x45\n\x11snapshot_resource\x18\xa9\xb8\xc1\xe5\x01 \x01(\x0b\x32!.google.cloud.compute.v1.SnapshotB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x0e\n\x0c_guest_flushB\r\n\x0b_request_id\"\xed\x01\n\x1f\x43reateSnapshotRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x45\n\x11snapshot_resource\x18\xa9\xb8\xc1\xe5\x01 \x01(\x0b\x32!.google.cloud.compute.v1.SnapshotB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xfc\x01\n\x10\x43rossSiteNetwork\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x04\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x05\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x0c\n\n_self_link\"\xe9\x02\n\x14\x43rossSiteNetworkList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12;\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32).google.cloud.compute.v1.CrossSiteNetwork\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb8\x01\n\x19\x43ustomErrorResponsePolicy\x12j\n\x14\x65rror_response_rules\x18\x90\xad\xfc\x06 \x03(\x0b\x32I.google.cloud.compute.v1.CustomErrorResponsePolicyCustomErrorResponseRule\x12\x1d\n\rerror_service\x18\xfe\xee\xa6N \x01(\tH\x00\x88\x01\x01\x42\x10\n\x0e_error_service\"\xb6\x01\n0CustomErrorResponsePolicyCustomErrorResponseRule\x12\x1f\n\x14match_response_codes\x18\xe2\x88\x87\x32 \x03(\t\x12\'\n\x16override_response_code\x18\xf8\xd7\xf0\xfc\x01 \x01(\x05H\x00\x88\x01\x01\x12\x14\n\x04path\x18\xa5\xc8\xd1\x01 \x01(\tH\x01\x88\x01\x01\x42\x19\n\x17_override_response_codeB\x07\n\x05_path\"\x8f\x02\n\x15\x43ustomerEncryptionKey\x12\x1d\n\x0ckms_key_name\x18\x99\xeb\xfb\xe6\x01 \x01(\tH\x00\x88\x01\x01\x12\'\n\x17kms_key_service_account\x18\xd5\xc5\x90\x64 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x07raw_key\x18\xc8\xe3\x98\xd6\x01 \x01(\tH\x02\x88\x01\x01\x12\"\n\x11rsa_encrypted_key\x18\xa5\xc3\xfc\x9f\x01 \x01(\tH\x03\x88\x01\x01\x12\x16\n\x06sha256\x18\xa7\xec\x8eQ \x01(\tH\x04\x88\x01\x01\x42\x0f\n\r_kms_key_nameB\x1a\n\x18_kms_key_service_accountB\n\n\x08_raw_keyB\x14\n\x12_rsa_encrypted_keyB\t\n\x07_sha256\"\xb5\x01\n\"CustomerEncryptionKeyProtectedDisk\x12T\n\x13\x64isk_encryption_key\x18\x85\xed\xc4\x81\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x00\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\x01\x88\x01\x01\x42\x16\n\x14_disk_encryption_keyB\t\n\x07_source\"C\n\x04\x44\x61ta\x12\x12\n\x03key\x18\xdf\xbc\x06 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05value\x18\xf1\xa2\xb2\x35 \x01(\tH\x01\x88\x01\x01\x42\x06\n\x04_keyB\x08\n\x06_value\"b\n\x04\x44\x61te\x12\x12\n\x03\x64\x61y\x18\x9c\x87\x06 \x01(\x05H\x00\x88\x01\x01\x12\x15\n\x05month\x18\x80\xc5\xd0\x31 \x01(\x05H\x01\x88\x01\x01\x12\x14\n\x04year\x18\xbd\x90\xe2\x01 \x01(\x05H\x02\x88\x01\x01\x42\x06\n\x04_dayB\x08\n\x06_monthB\x07\n\x05_year\"\xeb\x01\n!DeleteAccessConfigInstanceRequest\x12\x1d\n\raccess_config\x18\xfd\xe4\xde\" \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11network_interface\x18\xe8\xc0\x9d\xae\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x9f\x01\n\x14\x44\x65leteAddressRequest\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa1\x01\n\x17\x44\x65leteAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x8a\x01\n\x1a\x44\x65leteBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x8d\x01\n\x1b\x44\x65leteBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x91\x01\n\x1d\x44\x65leteCrossSiteNetworkRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x94\x01\n\x11\x44\x65leteDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x95\x01\n\x1f\x44\x65leteExternalVpnGatewayRequest\x12$\n\x14\x65xternal_vpn_gateway\x18\x85\xd7\xb3\x34 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"j\n\x1b\x44\x65leteFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x80\x01\n\x15\x44\x65leteFirewallRequest\x12\x19\n\x08\x66irewall\x18\x80\xfa\xd5\xf3\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xae\x01\n\x1b\x44\x65leteForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xaf\x01\n\x1e\x44\x65leteFutureReservationRequest\x12\"\n\x12\x66uture_reservation\x18\xd0\xc6\xe6\x1a \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x84\x01\n\x1a\x44\x65leteGlobalAddressRequest\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x93\x01\n!DeleteGlobalForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa0\x01\n\'DeleteGlobalNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"R\n\x1c\x44\x65leteGlobalOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"\x1f\n\x1d\x44\x65leteGlobalOperationResponse\"o\n(DeleteGlobalOrganizationOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tH\x00\x88\x01\x01\x42\x0c\n\n_parent_id\"+\n)DeleteGlobalOrganizationOperationResponse\"\xa2\x01\n)DeleteGlobalPublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x87\x01\n\x18\x44\x65leteHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"y\n\x12\x44\x65leteImageRequest\x12\x15\n\x05image\x18\xdb\xd2\xea/ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb6\x01\n!DeleteInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe3\x01\n.DeleteInstanceGroupManagerResizeRequestRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0eresize_request\x18\x84\x84\xb9g \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa7\x01\n\x1a\x44\x65leteInstanceGroupRequest\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x9c\x01\n\x15\x44\x65leteInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x91\x01\n\x1d\x44\x65leteInstanceTemplateRequest\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd1\x02\n*DeleteInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x8f\x01\n9instance_group_managers_delete_instances_request_resource\x18\x84\xc6\xadO \x01(\x0b\x32\x44.google.cloud.compute.v1.InstanceGroupManagersDeleteInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe9\x02\n0DeleteInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9d\x01\n@region_instance_group_managers_delete_instances_request_resource\x18\xf9\x8a\xeb\xee\x01 \x01(\x0b\x32J.google.cloud.compute.v1.RegionInstanceGroupManagersDeleteInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb6\x01\n!DeleteInstantSnapshotGroupRequest\x12&\n\x16instant_snapshot_group\x18\xe2\xec\xb5j \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xac\x01\n\x1c\x44\x65leteInstantSnapshotRequest\x12!\n\x10instant_snapshot\x18\xe2\xdc\xdf\xba\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa7\x01\n(DeleteInterconnectAttachmentGroupRequest\x12-\n\x1dinterconnect_attachment_group\x18\xf4\xef\x98$ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbe\x01\n#DeleteInterconnectAttachmentRequest\x12(\n\x17interconnect_attachment\x18\xf4\x8a\xf7\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x93\x01\n\x1e\x44\x65leteInterconnectGroupRequest\x12#\n\x12interconnect_group\x18\x8e\xb7\xa9\xb9\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x87\x01\n\x19\x44\x65leteInterconnectRequest\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"}\n\x14\x44\x65leteLicenseRequest\x12\x17\n\x07license\x18\xc1\x88\xc2O \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x88\x01\n\x19\x44\x65leteMachineImageRequest\x12\x1d\n\rmachine_image\x18\xe3\xfe\xfe \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb3\x01\n\x1e\x44\x65leteNetworkAttachmentRequest\x12\"\n\x12network_attachment\x18\xd4\x97\x8fk \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc7\x01\n\'DeleteNetworkEdgeSecurityServiceRequest\x12-\n\x1dnetwork_edge_security_service\x18\xa7\x9f\xefJ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb7\x01\n!DeleteNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x94\x01\n\"DeleteNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd5\x01\n%DeleteNetworkInterfaceInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16network_interface_name\x18\x82\xa8\xeb\xb5\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"}\n\x14\x44\x65leteNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa0\x01\n\x16\x44\x65leteNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xaa\x01\n\x19\x44\x65leteNodeTemplateRequest\x12\x1e\n\rnode_template\x18\x97\xe4\x8b\x9a\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x97\x02\n\x1b\x44\x65leteNodesNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12p\n)node_groups_delete_nodes_request_resource\x18\x92\xd7\xb3W \x01(\x0b\x32\x35.google.cloud.compute.v1.NodeGroupsDeleteNodesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"u\n\'DeleteOrganizationSecurityPolicyRequest\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xaf\x01\n\x1c\x44\x65letePacketMirroringRequest\x12 \n\x10packet_mirroring\x18\xcc\xb9\xd1\n \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbc\x02\n3DeletePerInstanceConfigsInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x9c\x01\n@instance_group_managers_delete_per_instance_configs_req_resource\x18\xa0\xea\xe8\xac\x01 \x01(\x0b\x32I.google.cloud.compute.v1.InstanceGroupManagersDeletePerInstanceConfigsReqB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zone\"\xc6\x02\n9DeletePerInstanceConfigsRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9c\x01\nAregion_instance_group_manager_delete_instance_config_req_resource\x18\x85\x9b- \x01(\x0b\x32J.google.cloud.compute.v1.RegionInstanceGroupManagerDeleteInstanceConfigReqB\x03\xe0\x41\x02\"\x9e\x01\n$DeletePublicAdvertisedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12(\n\x18public_advertised_prefix\x18\x9e\xf7\xc9\x30 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbd\x01\n#DeletePublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xab\x01\n\x1d\x44\x65leteRegionAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb1\x01\n DeleteRegionBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb4\x01\n!DeleteRegionBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc1\x01\n\'DeleteRegionCompositeHealthCheckRequest\x12\'\n\x16\x63omposite_health_check\x18\x9d\xc0\xd6\xde\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9e\x01\n\x17\x44\x65leteRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc6\x01\n*DeleteRegionHealthAggregationPolicyRequest\x12)\n\x19health_aggregation_policy\x18\xf2\xcf\xcbr \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xae\x01\n\x1e\x44\x65leteRegionHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbd\x01\n%DeleteRegionHealthCheckServiceRequest\x12%\n\x14health_check_service\x18\xdb\x9b\xdd\xc2\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb0\x01\n\x1f\x44\x65leteRegionHealthSourceRequest\x12\x1e\n\rhealth_source\x18\xde\x86\xc5\xb3\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc0\x01\n\'DeleteRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xed\x01\n4DeleteRegionInstanceGroupManagerResizeRequestRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0eresize_request\x18\x84\x84\xb9g \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb8\x01\n#DeleteRegionInstanceTemplateRequest\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc0\x01\n\'DeleteRegionInstantSnapshotGroupRequest\x12&\n\x16instant_snapshot_group\x18\xe2\xec\xb5j \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb6\x01\n\"DeleteRegionInstantSnapshotRequest\x12!\n\x10instant_snapshot\x18\xe2\xdc\xdf\xba\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc1\x01\n\'DeleteRegionNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbb\x01\n(DeleteRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc0\x01\n\'DeleteRegionNotificationEndpointRequest\x12&\n\x15notification_endpoint\x18\xe9\xbc\xd6\xb3\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"j\n\x1c\x44\x65leteRegionOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x1f\n\x1d\x44\x65leteRegionOperationResponse\"\xb3\x01\n!DeleteRegionSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa7\x01\n\x1b\x44\x65leteRegionSnapshotRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x08snapshot\x18\xc4\xab\xeb\x87\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb3\x01\n!DeleteRegionSslCertificateRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fssl_certificate\x18\xe4\xd7\x92\x16 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xaa\x01\n\x1c\x44\x65leteRegionSslPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb6\x01\n\"DeleteRegionTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb8\x01\n#DeleteRegionTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb5\x01\n!DeleteRegionTargetTcpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x10target_tcp_proxy\x18\xe2\xd6\xf0\xef\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa4\x01\n\x19\x44\x65leteRegionUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa2\x01\n\x18\x44\x65leteReservationRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xad\x01\n\x1b\x44\x65leteResourcePolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fresource_policy\x18\x83\xa5\xf7K \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xca\x01\n\x1e\x44\x65leteRoutePolicyRouterRequest\x12\x16\n\x06policy\x18\xb2\xca\xb6+ \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_policyB\r\n\x0b_request_id\"y\n\x12\x44\x65leteRouteRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05route\x18\xc9\xe4\xea\x33 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x9c\x01\n\x13\x44\x65leteRouterRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8c\x01\n\x1b\x44\x65leteSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb4\x01\n\x1e\x44\x65leteServiceAttachmentRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12#\n\x12service_attachment\x18\xed\xa9\xd0\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb1\x01\n&DeleteSignedUrlKeyBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08key_name\x18\xeb\xf0\xee\xee\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb4\x01\n\'DeleteSignedUrlKeyBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08key_name\x18\xeb\xf0\xee\xee\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x80\x01\n\x15\x44\x65leteSnapshotRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x08snapshot\x18\xc4\xab\xeb\x87\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8c\x01\n\x1b\x44\x65leteSslCertificateRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fssl_certificate\x18\xe4\xd7\x92\x16 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x83\x01\n\x16\x44\x65leteSslPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa4\x01\n\x18\x44\x65leteStoragePoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0cstorage_pool\x18\xe0\xc6\xf1\xab\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa5\x01\n\x17\x44\x65leteSubnetworkRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8f\x01\n\x1c\x44\x65leteTargetGrpcProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_grpc_proxy\x18\xfb\xb4\xb2\x02 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8f\x01\n\x1c\x44\x65leteTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x91\x01\n\x1d\x44\x65leteTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xaa\x01\n\x1b\x44\x65leteTargetInstanceRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12 \n\x0ftarget_instance\x18\x83\x8f\x96\x8a\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa5\x01\n\x17\x44\x65leteTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8e\x01\n\x1b\x44\x65leteTargetSslProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8e\x01\n\x1b\x44\x65leteTargetTcpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x10target_tcp_proxy\x18\xe2\xd6\xf0\xef\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb3\x01\n\x1d\x44\x65leteTargetVpnGatewayRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12#\n\x12target_vpn_gateway\x18\xcb\x80\xf6\xfd\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"}\n\x13\x44\x65leteUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa6\x01\n\x17\x44\x65leteVpnGatewayRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bvpn_gateway\x18\xf9\x83\xf6\xc1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa3\x01\n\x16\x44\x65leteVpnTunnelRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\nvpn_tunnel\x18\x93\x94\xca\x44 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa6\x01\n\x16\x44\x65leteWireGroupRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\nwire_group\x18\xc5\xa4\xb7: \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"f\n\x1a\x44\x65leteZoneOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\x1d\n\x1b\x44\x65leteZoneOperationResponse\"\xb5\x01\n\"DeleteZoneVmExtensionPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12$\n\x13vm_extension_policy\x18\xba\x93\x8b\x9e\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"J\n\x06\x44\x65nied\x12\x1d\n\x0cI_p_protocol\x18\xbd\xf6\xde\xe8\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x05ports\x18\x92\xf0\xf9\x32 \x03(\tB\x0f\n\r_I_p_protocol\"\xd6\x01\n\x15\x44\x65precateImageRequest\x12X\n\x1b\x64\x65precation_status_resource\x18\xf0\x89\xe5\x9e\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusB\x03\xe0\x41\x02\x12\x15\n\x05image\x18\xdb\xd2\xea/ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbf\x02\n\x11\x44\x65precationStatus\x12\x18\n\x07\x64\x65leted\x18\x99\xe0\xa8\xe3\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\tH\x01\x88\x01\x01\x12\x19\n\x08obsolete\x18\x99\x8b\xc5\xaa\x01 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0breplacement\x18\x92\x9c\xbd\xcd\x01 \x01(\tH\x03\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x04\x88\x01\x01\"a\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0e\n\x07\x44\x45LETED\x10\xf9\xf7\xd6\x39\x12\x12\n\nDEPRECATED\x10\xb3\xa3\xf9\xdc\x01\x12\x0f\n\x08OBSOLETE\x10\x99\xeb\xdc\x1f\x42\n\n\x08_deletedB\r\n\x0b_deprecatedB\x0b\n\t_obsoleteB\x0e\n\x0c_replacementB\x08\n\x06_state\"\xbd\x01\n\x19\x44\x65tachDiskInstanceRequest\x12\x1b\n\x0b\x64\x65vice_name\x18\xd4\xb5\x9a \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xcf\x02\n7DetachNetworkEndpointsGlobalNetworkEndpointGroupRequest\x12\x9c\x01\n@global_network_endpoint_groups_detach_endpoints_request_resource\x18\xdd\x8d\x9f\x04 \x01(\x0b\x32J.google.cloud.compute.v1.GlobalNetworkEndpointGroupsDetachEndpointsRequestB\x03\xe0\x41\x02\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xda\x02\n1DetachNetworkEndpointsNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x90\x01\n9network_endpoint_groups_detach_endpoints_request_resource\x18\xf9\xa0\xee\xf5\x01 \x01(\x0b\x32\x44.google.cloud.compute.v1.NetworkEndpointGroupsDetachEndpointsRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf1\x02\n7DetachNetworkEndpointsRegionNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9d\x01\n@region_network_endpoint_groups_detach_endpoints_request_resource\x18\xee\xe5\xab\x95\x01 \x01(\x0b\x32J.google.cloud.compute.v1.RegionNetworkEndpointGroupsDetachEndpointsRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"l\n\x1c\x44isableXpnHostProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xec\x01\n DisableXpnResourceProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12z\n.projects_disable_xpn_resource_request_resource\x18\xaa\xd4\xdc\x63 \x01(\x0b\x32:.google.cloud.compute.v1.ProjectsDisableXpnResourceRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xcf\x1a\n\x04\x44isk\x12\x1b\n\x0b\x61\x63\x63\x65ss_mode\x18\x9e\xf7\xcf\x13 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x01\x88\x01\x01\x12Q\n\x12\x61sync_primary_disk\x18\x9d\xf5\x89V \x01(\x0b\x32-.google.cloud.compute.v1.DiskAsyncReplicationH\x02\x88\x01\x01\x12Y\n\x15\x61sync_secondary_disks\x18\xa8\xe8\xfd\x99\x01 \x03(\x0b\x32\x36.google.cloud.compute.v1.Disk.AsyncSecondaryDisksEntry\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12T\n\x13\x64isk_encryption_key\x18\x85\xed\xc4\x81\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x05\x88\x01\x01\x12+\n\x1b\x65nable_confidential_compute\x18\xbc\xeb\xd9\x30 \x01(\x08H\x06\x88\x01\x01\x12\x45\n\x11guest_os_features\x18\xd1\xe0\xe7% \x03(\x0b\x32\'.google.cloud.compute.v1.GuestOsFeature\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x07\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\t\x88\x01\x01\x12=\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32).google.cloud.compute.v1.Disk.LabelsEntry\x12%\n\x15last_attach_timestamp\x18\xa5\x9c\x8d\x14 \x01(\tH\n\x88\x01\x01\x12%\n\x15last_detach_timestamp\x18\xf3\xdb\xf6\x1a \x01(\tH\x0b\x88\x01\x01\x12\x18\n\rlicense_codes\x18\xa8\x85\xd8\x15 \x03(\x03\x12\x14\n\x08licenses\x18\xd2\x88\x80\xa1\x01 \x03(\t\x12\x1e\n\rlocation_hint\x18\xd1\x81\x92\xa7\x01 \x01(\tH\x0c\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\r\x88\x01\x01\x12\x18\n\x07options\x18\x9e\x8d\x9a\xac\x01 \x01(\tH\x0e\x88\x01\x01\x12;\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32#.google.cloud.compute.v1.DiskParamsH\x0f\x88\x01\x01\x12*\n\x19physical_block_size_bytes\x18\x87\xa0\xa3\xc8\x01 \x01(\x03H\x10\x88\x01\x01\x12 \n\x10provisioned_iops\x18\xd4\xbd\x87Y \x01(\x03H\x11\x88\x01\x01\x12\'\n\x16provisioned_throughput\x18\x95\xbe\x88\xfb\x01 \x01(\x03H\x12\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x13\x88\x01\x01\x12\x18\n\rreplica_zones\x18\x80\xb8\x8c\x17 \x03(\t\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\x12L\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32+.google.cloud.compute.v1.DiskResourceStatusH\x14\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\x15\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x16\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x17\x88\x01\x01\x12\x18\n\x07size_gb\x18\xd9\x8b\x80\xec\x01 \x01(\x03H\x18\x88\x01\x01\x12/\n\x1fsource_consistency_group_policy\x18\xdd\xa2\xad\t \x01(\tH\x19\x88\x01\x01\x12\x32\n\"source_consistency_group_policy_id\x18\xbd\x8e\xcb\x7f \x01(\tH\x1a\x88\x01\x01\x12\x1c\n\x0bsource_disk\x18\xc1\xee\xb4\xd7\x01 \x01(\tH\x1b\x88\x01\x01\x12\x1f\n\x0esource_disk_id\x18\xd9\xcd\xc9\xd8\x01 \x01(\tH\x1c\x88\x01\x01\x12\x1c\n\x0csource_image\x18\xb7\xe8\x86\x18 \x01(\tH\x1d\x88\x01\x01\x12\\\n\x1bsource_image_encryption_key\x18\xab\x91\xf5\xb5\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x1e\x88\x01\x01\x12\x1f\n\x0fsource_image_id\x18\xa3\xfc\xb0\x1a \x01(\tH\x1f\x88\x01\x01\x12\'\n\x17source_instant_snapshot\x18\x86\x84\xc3h \x01(\tH \x88\x01\x01\x12+\n\x1asource_instant_snapshot_id\x18\xf4\xd3\x90\x89\x01 \x01(\tH!\x88\x01\x01\x12\x1f\n\x0fsource_snapshot\x18\xe8\x9a\x8e< \x01(\tH\"\x88\x01\x01\x12_\n\x1esource_snapshot_encryption_key\x18\xda\x8e\xe7\x90\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH#\x88\x01\x01\x12\"\n\x12source_snapshot_id\x18\xd2\x96\x98/ \x01(\tH$\x88\x01\x01\x12%\n\x15source_storage_object\x18\xa7\xb4\x90o \x01(\tH%\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH&\x88\x01\x01\x12\x1d\n\x0cstorage_pool\x18\xe0\xc6\xf1\xab\x01 \x01(\tH\'\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH(\x88\x01\x01\x12\x10\n\x05users\x18\x88\x9c\x9a\x35 \x03(\t\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH)\x88\x01\x01\x1am\n\x18\x41syncSecondaryDisksEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12@\n\x05value\x18\x02 \x01(\x0b\x32\x31.google.cloud.compute.v1.DiskAsyncReplicationList:\x02\x38\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"q\n\nAccessMode\x12\x19\n\x15UNDEFINED_ACCESS_MODE\x10\x00\x12\x15\n\x0eREAD_ONLY_MANY\x10\xa9\xa7\xa1\x1e\x12\x17\n\x0fREAD_WRITE_MANY\x10\xa8\xc2\x86\xe9\x01\x12\x18\n\x11READ_WRITE_SINGLE\x10\xd1\x99\xae/\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\"\x88\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x11\n\tRESTORING\x10\xab\xa7\xe2\xc0\x01\x12\x13\n\x0bUNAVAILABLE\x10\xb0\xd8\xa5\xc5\x01\x42\x0e\n\x0c_access_modeB\x0f\n\r_architectureB\x15\n\x13_async_primary_diskB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x16\n\x14_disk_encryption_keyB\x1e\n\x1c_enable_confidential_computeB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x18\n\x16_last_attach_timestampB\x18\n\x16_last_detach_timestampB\x10\n\x0e_location_hintB\x07\n\x05_nameB\n\n\x08_optionsB\t\n\x07_paramsB\x1c\n\x1a_physical_block_size_bytesB\x13\n\x11_provisioned_iopsB\x19\n\x17_provisioned_throughputB\t\n\x07_regionB\x12\n\x10_resource_statusB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\n\n\x08_size_gbB\"\n _source_consistency_group_policyB%\n#_source_consistency_group_policy_idB\x0e\n\x0c_source_diskB\x11\n\x0f_source_disk_idB\x0f\n\r_source_imageB\x1e\n\x1c_source_image_encryption_keyB\x12\n\x10_source_image_idB\x1a\n\x18_source_instant_snapshotB\x1d\n\x1b_source_instant_snapshot_idB\x12\n\x10_source_snapshotB!\n\x1f_source_snapshot_encryption_keyB\x15\n\x13_source_snapshot_idB\x18\n\x16_source_storage_objectB\t\n\x07_statusB\x0f\n\r_storage_poolB\x07\n\x05_typeB\x07\n\x05_zone\"\xad\x03\n\x12\x44iskAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12H\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x36.google.cloud.compute.v1.DiskAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aV\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x37\n\x05value\x18\x02 \x01(\x0b\x32(.google.cloud.compute.v1.DisksScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xed\x01\n\x14\x44iskAsyncReplication\x12\'\n\x18\x63onsistency_group_policy\x18\xb9\xc3y \x01(\tH\x00\x88\x01\x01\x12+\n\x1b\x63onsistency_group_policy_id\x18\xe1\x92\xbe| \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tH\x02\x88\x01\x01\x12\x17\n\x07\x64isk_id\x18\xfd\xc5\x8a\x1d \x01(\tH\x03\x88\x01\x01\x42\x1b\n\x19_consistency_group_policyB\x1e\n\x1c_consistency_group_policy_idB\x07\n\x05_diskB\n\n\x08_disk_id\"\x8c\x01\n\x18\x44iskAsyncReplicationList\x12U\n\x16\x61sync_replication_disk\x18\x93\xcb\xc3n \x01(\x0b\x32-.google.cloud.compute.v1.DiskAsyncReplicationH\x00\x88\x01\x01\x42\x19\n\x17_async_replication_disk\"\xa4\x03\n\x17\x44iskInstantiationConfig\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1c\n\x0c\x63ustom_image\x18\x8d\xfe\xe5W \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x64\x65vice_name\x18\xd4\xb5\x9a \x01(\tH\x02\x88\x01\x01\x12!\n\x10instantiate_from\x18\xdf\x9f\xca\xbb\x01 \x01(\tH\x03\x88\x01\x01\"\xc6\x01\n\x0fInstantiateFrom\x12\x1e\n\x1aUNDEFINED_INSTANTIATE_FROM\x10\x00\x12\x18\n\x10\x41TTACH_READ_ONLY\x10\xbb\xae\xfe\xf4\x01\x12\x0c\n\x05\x42LANK\x10\xb4\xb2\x96\x1e\x12\x13\n\x0c\x43USTOM_IMAGE\x10\xed\xf5\xcd]\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\x12\x15\n\x0e\x44O_NOT_INCLUDE\x10\xc8\x82\xd9\x31\x12\x13\n\x0cSOURCE_IMAGE\x10\x97\xe0\xee\x1d\x12\x1a\n\x13SOURCE_IMAGE_FAMILY\x10\x8c\xc9\xd2$B\x0e\n\x0c_auto_deleteB\x0f\n\r_custom_imageB\x0e\n\x0c_device_nameB\x13\n\x11_instantiate_from\"\x99\x02\n\x08\x44iskList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12/\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1d.google.cloud.compute.v1.Disk\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"u\n\x0f\x44iskMoveRequest\x12 \n\x10\x64\x65stination_zone\x18\xbd\xe2\xef> \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0btarget_disk\x18\x8b\xcf\xe2\x1d \x01(\tH\x01\x88\x01\x01\x42\x13\n\x11_destination_zoneB\x0e\n\x0c_target_disk\"\xa9\x01\n\nDiskParams\x12_\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32<.google.cloud.compute.v1.DiskParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xfa\x02\n\x12\x44iskResourceStatus\x12\x65\n\x12\x61sync_primary_disk\x18\x9d\xf5\x89V \x01(\x0b\x32\x41.google.cloud.compute.v1.DiskResourceStatusAsyncReplicationStatusH\x00\x88\x01\x01\x12g\n\x15\x61sync_secondary_disks\x18\xa8\xe8\xfd\x99\x01 \x03(\x0b\x32\x44.google.cloud.compute.v1.DiskResourceStatus.AsyncSecondaryDisksEntry\x1a}\n\x18\x41syncSecondaryDisksEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12P\n\x05value\x18\x02 \x01(\x0b\x32\x41.google.cloud.compute.v1.DiskResourceStatusAsyncReplicationStatus:\x02\x38\x01\x42\x15\n\x13_async_primary_disk\"\xda\x01\n(DiskResourceStatusAsyncReplicationStatus\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x00\x88\x01\x01\"\x8c\x01\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0e\n\x07\x43REATED\x10\xc8\x95\xe8@\x12\x10\n\x08STARTING\x10\xc0\xa0\x8b\xe9\x01\x12\x19\n\x11STATE_UNSPECIFIED\x10\xc9\xd0\xbc\xe0\x01\x12\x0f\n\x07STOPPED\x10\xad\xbb\xec\xd3\x01\x12\x10\n\x08STOPPING\x10\xf4\xd0\xa2\xa7\x01\x42\x08\n\x06_state\"\x84\x04\n\x08\x44iskType\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12%\n\x14\x64\x65\x66\x61ult_disk_size_gb\x18\xf5\xa4\x85\x81\x01 \x01(\x03H\x01\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12 \n\x0fvalid_disk_size\x18\xe0\x89\xc5\xeb\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\n\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x17\n\x15_default_disk_size_gbB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x0c\n\n_self_linkB\x12\n\x10_valid_disk_sizeB\x07\n\x05_zone\"\xb9\x03\n\x16\x44iskTypeAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12L\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32:.google.cloud.compute.v1.DiskTypeAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aZ\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12;\n\x05value\x18\x02 \x01(\x0b\x32,.google.cloud.compute.v1.DiskTypesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa1\x02\n\x0c\x44iskTypeList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x33\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32!.google.cloud.compute.v1.DiskType\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x96\x01\n\x13\x44iskTypesScopedList\x12\x38\n\ndisk_types\x18\xd7\xbe\xed^ \x03(\x0b\x32!.google.cloud.compute.v1.DiskType\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"I\n\x17\x44iskUpdateKmsKeyRequest\x12\x1d\n\x0ckms_key_name\x18\x99\xeb\xfb\xe6\x01 \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_kms_key_name\"?\n\x1f\x44isksAddResourcePoliciesRequest\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\"B\n\"DisksRemoveResourcePoliciesRequest\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\":\n\x12\x44isksResizeRequest\x12\x18\n\x07size_gb\x18\xd9\x8b\x80\xec\x01 \x01(\x03H\x00\x88\x01\x01\x42\n\n\x08_size_gb\"\x89\x01\n\x0f\x44isksScopedList\x12/\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32\x1d.google.cloud.compute.v1.Disk\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"b\n!DisksStartAsyncReplicationRequest\x12$\n\x14\x61sync_secondary_disk\x18\xab\x83\xe3> \x01(\tH\x00\x88\x01\x01\x42\x17\n\x15_async_secondary_disk\"]\n&DisksStopGroupAsyncReplicationResource\x12\x1f\n\x0fresource_policy\x18\x83\xa5\xf7K \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_resource_policy\"B\n\rDisplayDevice\x12\x1e\n\x0e\x65nable_display\x18\x86\xe4\xe6\x06 \x01(\x08H\x00\x88\x01\x01\x42\x11\n\x0f_enable_display\"\x81\x02\n\x12\x44istributionPolicy\x12\x1d\n\x0ctarget_shape\x18\xf3\xe6\xbb\xa1\x01 \x01(\tH\x00\x88\x01\x01\x12N\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\x0b\x32<.google.cloud.compute.v1.DistributionPolicyZoneConfiguration\"k\n\x0bTargetShape\x12\x1a\n\x16UNDEFINED_TARGET_SHAPE\x10\x00\x12\t\n\x03\x41NY\x10\xcc\xfb\x03\x12\x16\n\x0f\x41NY_SINGLE_ZONE\x10\xd0\xa6\x91\x1d\x12\x10\n\x08\x42\x41LANCED\x10\x88\xba\xad\xdf\x01\x12\x0b\n\x04\x45VEN\x10\x9a\xd2\x82\x01\x42\x0f\n\r_target_shape\"D\n#DistributionPolicyZoneConfiguration\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_zone\"Q\n\x08\x44uration\x12\x15\n\x05nanos\x18\xbf\xb8\xef\x31 \x01(\x05H\x00\x88\x01\x01\x12\x18\n\x07seconds\x18\xff\x94\xb5\xab\x01 \x01(\x03H\x01\x88\x01\x01\x42\x08\n\x06_nanosB\n\n\x08_seconds\"k\n\x1b\x45nableXpnHostProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xea\x01\n\x1f\x45nableXpnResourceProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12y\n-projects_enable_xpn_resource_request_resource\x18\xaf\xd0\x9b\xc9\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.ProjectsEnableXpnResourceRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"<\n\x05\x45rror\x12\x33\n\x06\x65rrors\x18\xeb\xde\xd5\x96\x01 \x03(\x0b\x32\x1f.google.cloud.compute.v1.Errors\"\xd7\x02\n\x0c\x45rrorDetails\x12>\n\nerror_info\x18\x85\xa1\x85\x0c \x01(\x0b\x32\".google.cloud.compute.v1.ErrorInfoH\x00\x88\x01\x01\x12\x33\n\x04help\x18\xc1\x9e\xc3\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.HelpH\x01\x88\x01\x01\x12M\n\x11localized_message\x18\xc3\xfe\xf2\xc0\x01 \x01(\x0b\x32).google.cloud.compute.v1.LocalizedMessageH\x02\x88\x01\x01\x12\x46\n\nquota_info\x18\x95\xd4\xe4, \x01(\x0b\x32*.google.cloud.compute.v1.QuotaExceededInfoH\x03\x88\x01\x01\x42\r\n\x0b_error_infoB\x07\n\x05_helpB\x14\n\x12_localized_messageB\r\n\x0b_quota_info\"\xcd\x01\n\tErrorInfo\x12\x17\n\x06\x64omain\x18\xc4\xa9\xcf\x87\x01 \x01(\tH\x00\x88\x01\x01\x12G\n\tmetadatas\x18\xa4\xd6\x87\x04 \x03(\x0b\x32\x31.google.cloud.compute.v1.ErrorInfo.MetadatasEntry\x12\x16\n\x06reason\x18\xc4\xa4\x96\x42 \x01(\tH\x01\x88\x01\x01\x1a\x30\n\x0eMetadatasEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\t\n\x07_domainB\t\n\x07_reason\"\xb7\x01\n\x06\x45rrors\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\tH\x00\x88\x01\x01\x12@\n\rerror_details\x18\x8b\xc6\xfb\x82\x01 \x03(\x0b\x32%.google.cloud.compute.v1.ErrorDetails\x12\x19\n\x08location\x18\xb5\xbf\xbe\x8a\x01 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x02\x88\x01\x01\x42\x07\n\x05_codeB\x0b\n\t_locationB\n\n\x08_message\"\xdd\x02\n\x15\x45xchangedPeeringRoute\x12\x1b\n\ndest_range\x18\xe0\xb2\xea\xb5\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08imported\x18\x84\xd6\xcc\x36 \x01(\x08H\x01\x88\x01\x01\x12\x1f\n\x0fnext_hop_region\x18\xf6\xc0\xb9: \x01(\tH\x02\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\rH\x03\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x04\x88\x01\x01\"u\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x1d\n\x15\x44YNAMIC_PEERING_ROUTE\x10\xaa\x80\x82\xe0\x01\x12\x1c\n\x14STATIC_PEERING_ROUTE\x10\xb9\xc0\xde\xe1\x01\x12\x1c\n\x14SUBNET_PEERING_ROUTE\x10\xe8\x8d\x8d\xde\x01\x42\r\n\x0b_dest_rangeB\x0b\n\t_importedB\x12\n\x10_next_hop_regionB\x0b\n\t_priorityB\x07\n\x05_type\"\xbc\x02\n\x1a\x45xchangedPeeringRoutesList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12@\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32..google.cloud.compute.v1.ExchangedPeeringRoute\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb3\x02\n\"ExpandIpCidrRangeSubnetworkRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x80\x01\n1subnetworks_expand_ip_cidr_range_request_resource\x18\xde\xd0\xba\xe3\x01 \x01(\x0b\x32<.google.cloud.compute.v1.SubnetworksExpandIpCidrRangeRequestB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa9\x01\n\x04\x45xpr\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nexpression\x18\x98\xa5\xee\xa7\x01 \x01(\tH\x01\x88\x01\x01\x12\x19\n\x08location\x18\xb5\xbf\xbe\x8a\x01 \x01(\tH\x02\x88\x01\x01\x12\x15\n\x05title\x18\xd8\xc4\xd0\x34 \x01(\tH\x03\x88\x01\x01\x42\x0e\n\x0c_descriptionB\r\n\x0b_expressionB\x0b\n\t_locationB\x08\n\x06_title\"\x9e\x06\n\x12\x45xternalVpnGateway\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12K\n\ninterfaces\x18\xda\xf4\xe0\x05 \x03(\x0b\x32\x34.google.cloud.compute.v1.ExternalVpnGatewayInterface\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x04\x88\x01\x01\x12K\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x37.google.cloud.compute.v1.ExternalVpnGateway.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12I\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32\x31.google.cloud.compute.v1.ExternalVpnGatewayParamsH\x06\x88\x01\x01\x12 \n\x0fredundancy_type\x18\x9c\xce\xb7\x81\x01 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8f\x01\n\x0eRedundancyType\x12\x1d\n\x19UNDEFINED_REDUNDANCY_TYPE\x10\x00\x12\x1b\n\x13\x46OUR_IPS_REDUNDANCY\x10\xe9\xd2\xff\xf7\x01\x12%\n\x1eSINGLE_IP_INTERNALLY_REDUNDANT\x10\xf9\xc1\xed?\x12\x1a\n\x12TWO_IPS_REDUNDANCY\x10\xa3\xf7\x82\xaf\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\t\n\x07_paramsB\x12\n\x10_redundancy_typeB\x0c\n\n_self_link\"\x92\x01\n\x1b\x45xternalVpnGatewayInterface\x12\x10\n\x02id\x18\x9b\x1a \x01(\rH\x00\x88\x01\x01\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x0cipv6_address\x18\x9c\xb3\xef\xa2\x01 \x01(\tH\x02\x88\x01\x01\x42\x05\n\x03_idB\r\n\x0b_ip_addressB\x0f\n\r_ipv6_address\"\xd4\x02\n\x16\x45xternalVpnGatewayList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12=\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32+.google.cloud.compute.v1.ExternalVpnGateway\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xc5\x01\n\x18\x45xternalVpnGatewayParams\x12m\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32J.google.cloud.compute.v1.ExternalVpnGatewayParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xb2\x01\n\x11\x46ileContentBuffer\x12\x18\n\x07\x63ontent\x18\xf9\xe8\xdc\xc5\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\tfile_type\x18\x9d\xc0\xad\x8c\x01 \x01(\tH\x01\x88\x01\x01\"M\n\x08\x46ileType\x12\x17\n\x13UNDEFINED_FILE_TYPE\x10\x00\x12\t\n\x03\x42IN\x10\xe7\x81\x04\x12\x10\n\tUNDEFINED\x10\xb0\xe2\xdd\x41\x12\x0b\n\x04X509\x10\xa6\x9b\xa3\x01\x42\n\n\x08_contentB\x0c\n\n_file_type\"\x9c\x07\n\x08\x46irewall\x12\x34\n\x07\x61llowed\x18\xa8\x83\xb8M \x03(\x0b\x32 .google.cloud.compute.v1.Allowed\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x33\n\x06\x64\x65nied\x18\x9b\xf7\x9d\x83\x01 \x03(\x0b\x32\x1f.google.cloud.compute.v1.Denied\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1e\n\x12\x64\x65stination_ranges\x18\xa7\xb8\xe2\x91\x01 \x03(\t\x12\x19\n\tdirection\x18\xff\x8e\x80\x35 \x01(\tH\x02\x88\x01\x01\x12\x19\n\x08\x64isabled\x18\xfc\xf4\x98\x81\x01 \x01(\x08H\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12G\n\nlog_config\x18\x9d\xd1\xc1\xa7\x01 \x01(\x0b\x32*.google.cloud.compute.v1.FirewallLogConfigH\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x08\x88\x01\x01\x12?\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallParamsH\t\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\n\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0b\x88\x01\x01\x12\x18\n\rsource_ranges\x18\xfa\xfe\xb4_ \x03(\t\x12\"\n\x17source_service_accounts\x18\xd4\xeb\x8e\x32 \x03(\t\x12\x17\n\x0bsource_tags\x18\xbd\xbb\xd1\xd7\x01 \x03(\t\x12#\n\x17target_service_accounts\x18\x9e\x8e\x9c\xda\x01 \x03(\t\x12\x16\n\x0btarget_tags\x18\x87\x9c\xff\x1d \x03(\t\"E\n\tDirection\x12\x17\n\x13UNDEFINED_DIRECTION\x10\x00\x12\x0e\n\x06\x45GRESS\x10\xf5\xf6\xb4\xce\x01\x12\x0f\n\x07INGRESS\x10\x95\xfd\xbe\xf6\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0c\n\n_directionB\x0b\n\t_disabledB\x05\n\x03_idB\x07\n\x05_kindB\r\n\x0b_log_configB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_paramsB\x0b\n\t_priorityB\x0c\n\n_self_link\"\xa1\x02\n\x0c\x46irewallList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x33\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32!.google.cloud.compute.v1.Firewall\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbd\x01\n\x11\x46irewallLogConfig\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x08metadata\x18\xaf\xf6\xb5) \x01(\tH\x01\x88\x01\x01\"]\n\x08Metadata\x12\x16\n\x12UNDEFINED_METADATA\x10\x00\x12\x1c\n\x14\x45XCLUDE_ALL_METADATA\x10\x92\xbd\xc1\x9f\x01\x12\x1b\n\x14INCLUDE_ALL_METADATA\x10\x84\xcd\xbfNB\t\n\x07_enableB\x0b\n\t_metadata\"\xb1\x01\n\x0e\x46irewallParams\x12\x63\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32@.google.cloud.compute.v1.FirewallParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x97\x01\n(FirewallPoliciesListAssociationsResponse\x12L\n\x0c\x61ssociations\x18\x92\xe8\xca\xf2\x01 \x03(\x0b\x32\x32.google.cloud.compute.v1.FirewallPolicyAssociation\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_kind\"\xab\x01\n\x1a\x46irewallPoliciesScopedList\x12\x46\n\x11\x66irewall_policies\x18\xaf\x8b\x95\xbb\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x99\x07\n\x0e\x46irewallPolicy\x12L\n\x0c\x61ssociations\x18\x92\xe8\xca\xf2\x01 \x03(\x0b\x32\x32.google.cloud.compute.v1.FirewallPolicyAssociation\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0c\x64isplay_name\x18\xe8\x87\x91\x02 \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12O\n\x16packet_mirroring_rules\x18\xc4\xff\xc0\xfd\x01 \x03(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRule\x12\x16\n\x06parent\x18\xaa\x91\xac% \x01(\tH\x07\x88\x01\x01\x12\x1b\n\x0bpolicy_type\x18\xa7\xa4\xd4\x08 \x01(\tH\x08\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\t\x88\x01\x01\x12!\n\x10rule_tuple_count\x18\x95\xc2\x96\xb9\x01 \x01(\x05H\n\x88\x01\x01\x12=\n\x05rules\x18\xf7\x91\xf5\x33 \x03(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRule\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0b\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x0c\x88\x01\x01\x12\x1b\n\nshort_name\x18\xee\xb8\xd0\xea\x01 \x01(\tH\r\x88\x01\x01\"S\n\nPolicyType\x12\x19\n\x15UNDEFINED_POLICY_TYPE\x10\x00\x12\x17\n\x10RDMA_ROCE_POLICY\x10\x99\xb5\xf7\x46\x12\x11\n\nVPC_POLICY\x10\xe8\x8a\xb8#B\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0f\n\r_display_nameB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_parentB\x0e\n\x0c_policy_typeB\t\n\x07_regionB\x13\n\x11_rule_tuple_countB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\r\n\x0b_short_name\"\x8a\x02\n\x19\x46irewallPolicyAssociation\x12!\n\x11\x61ttachment_target\x18\xad\xb0\xe8S \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0c\x64isplay_name\x18\xe8\x87\x91\x02 \x01(\tH\x01\x88\x01\x01\x12#\n\x12\x66irewall_policy_id\x18\xc9\xbd\xaa\xaa\x01 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\nshort_name\x18\xee\xb8\xd0\xea\x01 \x01(\tH\x04\x88\x01\x01\x42\x14\n\x12_attachment_targetB\x0f\n\r_display_nameB\x15\n\x13_firewall_policy_idB\x07\n\x05_nameB\r\n\x0b_short_name\"\x83\x02\n\x12\x46irewallPolicyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x03\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\n\n\x08_warning\"\xb7\x06\n\x12\x46irewallPolicyRule\x12\x16\n\x06\x61\x63tion\x18\xb6\xfc\xbdY \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x19\n\tdirection\x18\xff\x8e\x80\x35 \x01(\tH\x02\x88\x01\x01\x12\x19\n\x08\x64isabled\x18\xfc\xf4\x98\x81\x01 \x01(\x08H\x03\x88\x01\x01\x12\x1f\n\x0e\x65nable_logging\x18\xa3\xc9\xed\x8c\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12I\n\x05match\x18\xc5\xb3\xb7\x31 \x01(\x0b\x32\x32.google.cloud.compute.v1.FirewallPolicyRuleMatcherH\x06\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x07\x88\x01\x01\x12\x19\n\trule_name\x18\xee\xb3\xae\x1a \x01(\tH\x08\x88\x01\x01\x12!\n\x10rule_tuple_count\x18\x95\xc2\x96\xb9\x01 \x01(\x05H\t\x88\x01\x01\x12&\n\x16security_profile_group\x18\xaa\xb3\xf3\x62 \x01(\tH\n\x88\x01\x01\x12\x1c\n\x10target_resources\x18\xf7\xd1\xf0\xfb\x01 \x03(\t\x12T\n\x12target_secure_tags\x18\xb3\xc4\x9c\xdf\x01 \x03(\x0b\x32\x34.google.cloud.compute.v1.FirewallPolicyRuleSecureTag\x12#\n\x17target_service_accounts\x18\x9e\x8e\x9c\xda\x01 \x03(\t\x12\x1b\n\x0btls_inspect\x18\xd0\xbd\xda\x14 \x01(\x08H\x0b\x88\x01\x01\"E\n\tDirection\x12\x17\n\x13UNDEFINED_DIRECTION\x10\x00\x12\x0e\n\x06\x45GRESS\x10\xf5\xf6\xb4\xce\x01\x12\x0f\n\x07INGRESS\x10\x95\xfd\xbe\xf6\x01\x42\t\n\x07_actionB\x0e\n\x0c_descriptionB\x0c\n\n_directionB\x0b\n\t_disabledB\x11\n\x0f_enable_loggingB\x07\n\x05_kindB\x08\n\x06_matchB\x0b\n\t_priorityB\x0c\n\n_rule_nameB\x13\n\x11_rule_tuple_countB\x19\n\x17_security_profile_groupB\x0e\n\x0c_tls_inspect\"\xd7\x07\n\x19\x46irewallPolicyRuleMatcher\x12\x1f\n\x13\x64\x65st_address_groups\x18\xbc\xef\xc2\xdf\x01 \x03(\t\x12\x16\n\ndest_fqdns\x18\xa1\xc1\xe2\xb0\x01 \x03(\t\x12\x1a\n\x0e\x64\x65st_ip_ranges\x18\x91\xd7\xee\xa0\x01 \x03(\t\x12$\n\x14\x64\x65st_network_context\x18\x81\xf2\xb3$ \x01(\tH\x00\x88\x01\x01\x12\"\n\x11\x64\x65st_network_type\x18\xa8\xba\xb7\xc3\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x11\x64\x65st_region_codes\x18\x98\xab\xf9^ \x03(\t\x12$\n\x19\x64\x65st_threat_intelligences\x18\xac\xf3\x95\x39 \x03(\t\x12Z\n\x0elayer4_configs\x18\xb5\xdc\x8e\xb2\x01 \x03(\x0b\x32>.google.cloud.compute.v1.FirewallPolicyRuleMatcherLayer4Config\x12\x1e\n\x12src_address_groups\x18\xba\x98\x8d\xd0\x01 \x03(\t\x12\x15\n\tsrc_fqdns\x18\xe3\xcc\xed\xcf\x01 \x03(\t\x12\x19\n\rsrc_ip_ranges\x18\xd3\x80\x87\xce\x01 \x03(\t\x12#\n\x13src_network_context\x18\xc3\xe8\xb3\x46 \x01(\tH\x02\x88\x01\x01\x12!\n\x10src_network_type\x18\xa6\xf2\xdd\x93\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0csrc_networks\x18\x80\x80\xebu \x03(\t\x12\x1b\n\x10src_region_codes\x18\x96\xe3\x9f/ \x03(\t\x12Q\n\x0fsrc_secure_tags\x18\x86\x94\xce\xf2\x01 \x03(\x0b\x32\x34.google.cloud.compute.v1.FirewallPolicyRuleSecureTag\x12$\n\x18src_threat_intelligences\x18\xaa\xef\xa8\x9a\x01 \x03(\t\"8\n\x12\x44\x65stNetworkContext\x12\"\n\x1eUNDEFINED_DEST_NETWORK_CONTEXT\x10\x00\"2\n\x0f\x44\x65stNetworkType\x12\x1f\n\x1bUNDEFINED_DEST_NETWORK_TYPE\x10\x00\"6\n\x11SrcNetworkContext\x12!\n\x1dUNDEFINED_SRC_NETWORK_CONTEXT\x10\x00\"0\n\x0eSrcNetworkType\x12\x1e\n\x1aUNDEFINED_SRC_NETWORK_TYPE\x10\x00\x42\x17\n\x15_dest_network_contextB\x14\n\x12_dest_network_typeB\x16\n\x14_src_network_contextB\x13\n\x11_src_network_type\"g\n%FirewallPolicyRuleMatcherLayer4Config\x12\x1c\n\x0bip_protocol\x18\xb0\x9d\xfa\xe2\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x05ports\x18\x92\xf0\xf9\x32 \x03(\tB\x0e\n\x0c_ip_protocol\"\xa2\x01\n\x1b\x46irewallPolicyRuleSecureTag\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x01\x88\x01\x01\"C\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x10\n\tEFFECTIVE\x10\x87\xf3\xb8t\x12\x13\n\x0bINEFFECTIVE\x10\x82\xd4\x96\x91\x01\x42\x07\n\x05_nameB\x08\n\x06_state\"\x83\x01\n\x0e\x46ixedOrPercent\x12\x1b\n\ncalculated\x18\xbe\xd3\x8d\xe1\x01 \x01(\x05H\x00\x88\x01\x01\x12\x15\n\x05\x66ixed\x18\xf4\xce\xbb. \x01(\x05H\x01\x88\x01\x01\x12\x18\n\x07percent\x18\xc5\xc8\xa1\xbc\x01 \x01(\x05H\x02\x88\x01\x01\x42\r\n\x0b_calculatedB\x08\n\x06_fixedB\n\n\x08_percent\"\x89\x02\n\x11\x46lexibleTimeRange\x12\x1c\n\x0cmax_duration\x18\x8f\xd4\x86\x13 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0cmin_duration\x18\xe1\xa9\xa3\xf5\x01 \x01(\tH\x01\x88\x01\x01\x12,\n\x1bstart_time_not_earlier_than\x18\xc1\xe8\xea\xe9\x01 \x01(\tH\x02\x88\x01\x01\x12)\n\x19start_time_not_later_than\x18\xb5\x91\xba\x65 \x01(\tH\x03\x88\x01\x01\x42\x0f\n\r_max_durationB\x0f\n\r_min_durationB\x1e\n\x1c_start_time_not_earlier_thanB\x1c\n\x1a_start_time_not_later_than\"\x8f\x18\n\x0e\x46orwardingRule\x12\x1b\n\x0bI_p_address\x18\xaf\x8d\xbf\x14 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0cI_p_protocol\x18\xbd\xf6\xde\xe8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1a\n\tall_ports\x18\xf4\xaf\xa3\xd4\x01 \x01(\x08H\x02\x88\x01\x01\x12$\n\x13\x61llow_global_access\x18\x8a\xc6\x91\xee\x01 \x01(\x08H\x03\x88\x01\x01\x12\'\n\x17\x61llow_psc_global_access\x18\xcb\x85\xd1} \x01(\x08H\x04\x88\x01\x01\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tH\x05\x88\x01\x01\x12%\n\x14\x62\x61se_forwarding_rule\x18\x90\xdb\xa3\xfa\x01 \x01(\tH\x06\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x07\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x08\x88\x01\x01\x12?\n/external_managed_backend_bucket_migration_state\x18\xaa\xa4\xb4\x33 \x01(\tH\t\x88\x01\x01\x12L\n \x03(\x0b\x32*.google.cloud.compute.v1.FutureReservation\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xf0\x04\n\x1d\x46utureResourcesRecommendation\x12\x18\n\x08\x65nd_time\x18\xb1\xa7\xe7\x36 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x08location\x18\xb5\xbf\xbe\x8a\x01 \x01(\tH\x01\x88\x01\x01\x12\x66\n\x0fother_locations\x18\xef\xf9\xc0U \x03(\x0b\x32J.google.cloud.compute.v1.FutureResourcesRecommendation.OtherLocationsEntry\x12\"\n\x11recommendation_id\x18\xe1\xd6\xa3\xe2\x01 \x01(\tH\x02\x88\x01\x01\x12#\n\x13recommendation_type\x18\x80\xe8\x83n \x01(\tH\x03\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x04\x88\x01\x01\x1az\n\x13OtherLocationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12R\n\x05value\x18\x02 \x01(\x0b\x32\x43.google.cloud.compute.v1.FutureResourcesRecommendationOtherLocation:\x02\x38\x01\"z\n\x12RecommendationType\x12!\n\x1dUNDEFINED_RECOMMENDATION_TYPE\x10\x00\x12\x19\n\x12\x46UTURE_RESERVATION\x10\xb0\xd6\xc8\x13\x12&\n\x1fRECOMMENDATION_TYPE_UNSPECIFIED\x10\xd8\x8a\x88\x43\x42\x0b\n\t_end_timeB\x0b\n\t_locationB\x14\n\x12_recommendation_idB\x16\n\x14_recommendation_typeB\r\n\x0b_start_time\"\x9b\x02\n*FutureResourcesRecommendationOtherLocation\x12\x18\n\x07\x64\x65tails\x18\xc2\xe4\xe3\xe6\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x01\x88\x01\x01\"\xa3\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x1a\n\x12\x43ONDITIONS_NOT_MET\x10\xa9\x8f\xb2\xad\x01\x12\x15\n\rNOT_SUPPORTED\x10\x82\x94\xce\x97\x01\x12\x13\n\x0bNO_CAPACITY\x10\xf8\xaa\xe2\x82\x01\x12&\n\x1fOTHER_LOCATION_STATUS_UNDEFINED\x10\xde\x9f\x96j\x12\x13\n\x0bRECOMMENDED\x10\xbb\xe4\xa1\xb0\x01\x42\n\n\x08_detailsB\t\n\x07_status\"\xf6\x03\n\x13\x46utureResourcesSpec\x12 \n\x0f\x64\x65ployment_type\x18\xf4\x80\x96\xbd\x01 \x01(\tH\x00\x88\x01\x01\x12\\\n\x0flocation_policy\x18\xfc\xb9\x87\xde\x01 \x01(\x0b\x32:.google.cloud.compute.v1.FutureResourcesSpecLocationPolicyH\x01\x88\x01\x01\x12^\n\x10target_resources\x18\xf7\xd1\xf0\xfb\x01 \x01(\x0b\x32;.google.cloud.compute.v1.FutureResourcesSpecTargetResourcesH\x02\x88\x01\x01\x12K\n\x0ftime_range_spec\x18\xaf\xcc\xc7\x37 \x01(\x0b\x32*.google.cloud.compute.v1.FlexibleTimeRangeH\x03\x88\x01\x01\"a\n\x0e\x44\x65ploymentType\x12\x1d\n\x19UNDEFINED_DEPLOYMENT_TYPE\x10\x00\x12\x0c\n\x05\x44\x45NSE\x10\xff\x95\xfb\x1e\x12\"\n\x1b\x44\x45PLOYMENT_TYPE_UNSPECIFIED\x10\xcc\xf7\xfdoB\x12\n\x10_deployment_typeB\x12\n\x10_location_policyB\x13\n\x11_target_resourcesB\x12\n\x10_time_range_spec\"\xa9\x05\n%FutureResourcesSpecAggregateResources\x12\"\n\x11\x61\x63\x63\x65lerator_count\x18\xbb\xb4\xdf\xf0\x01 \x01(\x03H\x00\x88\x01\x01\x12\x19\n\tvm_family\x18\xec\xbb\xce; \x01(\tH\x01\x88\x01\x01\x12\x1e\n\rworkload_type\x18\x82\xfe\xb0\x82\x01 \x01(\tH\x02\x88\x01\x01\"\x8a\x03\n\x08VmFamily\x12\x17\n\x13UNDEFINED_VM_FAMILY\x10\x00\x12%\n\x1eVM_FAMILY_CLOUD_TPU_DEVICE_CT3\x10\xfc\x8d\xb7\x14\x12+\n$VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L\x10\xe3\x82\xc1\x33\x12/\n(VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP\x10\xf3\xd6\xf5\x08\x12/\n\'VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT6E\x10\x95\xc9\x9c\xbe\x01\x12*\n\"VM_FAMILY_CLOUD_TPU_POD_SLICE_CT3P\x10\xb8\xd1\xda\xf6\x01\x12*\n\"VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P\x10\xd7\xd1\xda\xf6\x01\x12*\n\"VM_FAMILY_CLOUD_TPU_POD_SLICE_CT5P\x10\xf6\xd1\xda\xf6\x01\x12+\n#VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X\x10\xd0\xd2\xb2\xe7\x01\"^\n\x0cWorkloadType\x12\x1b\n\x17UNDEFINED_WORKLOAD_TYPE\x10\x00\x12\x0c\n\x05\x42\x41TCH\x10\x9a\xbe\x83\x1e\x12\x0e\n\x07SERVING\x10\xec\xa7\xbd\x08\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x14\n\x12_accelerator_countB\x0c\n\n_vm_familyB\x10\n\x0e_workload_type\"\xd2\x01\n$FutureResourcesSpecLocalSsdPartition\x12\x1e\n\x0e\x64isk_interface\x18\x97\xaa\xeb\x1f \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x01\x88\x01\x01\"G\n\rDiskInterface\x12\x1c\n\x18UNDEFINED_DISK_INTERFACE\x10\x00\x12\x0b\n\x04NVME\x10\xe0\x82\x93\x01\x12\x0b\n\x04SCSI\x10\xa6\x81\x9b\x01\x42\x11\n\x0f_disk_interfaceB\x0f\n\r_disk_size_gb\"\xfb\x01\n!FutureResourcesSpecLocationPolicy\x12`\n\tlocations\x18\xde\xae\x91\xc5\x01 \x03(\x0b\x32I.google.cloud.compute.v1.FutureResourcesSpecLocationPolicy.LocationsEntry\x1at\n\x0eLocationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12Q\n\x05value\x18\x02 \x01(\x0b\x32\x42.google.cloud.compute.v1.FutureResourcesSpecLocationPolicyLocation:\x02\x38\x01\"\xb8\x01\n)FutureResourcesSpecLocationPolicyLocation\x12\x1a\n\npreference\x18\xdb\xf9\xf2G \x01(\tH\x00\x88\x01\x01\"`\n\nPreference\x12\x18\n\x14UNDEFINED_PREFERENCE\x10\x00\x12\x0c\n\x05\x41LLOW\x10\xa9\xd6\xde\x1d\x12\n\n\x04\x44\x45NY\x10\x8c\xec\x7f\x12\x1e\n\x16PREFERENCE_UNSPECIFIED\x10\xb3\xeb\xce\xec\x01\x42\r\n\x0b_preference\"\xec\x01\n\'FutureResourcesSpecSpecificSKUResources\x12\x1e\n\x0einstance_count\x18\xe5\x89\xef$ \x01(\x03H\x00\x88\x01\x01\x12_\n\x14local_ssd_partitions\x18\xb8\xc6\xb8\xe0\x01 \x03(\x0b\x32=.google.cloud.compute.v1.FutureResourcesSpecLocalSsdPartition\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x01\x88\x01\x01\x42\x11\n\x0f_instance_countB\x0f\n\r_machine_type\"\xa6\x02\n\"FutureResourcesSpecTargetResources\x12\x63\n\x13\x61ggregate_resources\x18\xa5\xa7\x9fV \x01(\x0b\x32>.google.cloud.compute.v1.FutureResourcesSpecAggregateResourcesH\x00\x88\x01\x01\x12h\n\x16specific_sku_resources\x18\xb6\xe2\xac\x7f \x01(\x0b\x32@.google.cloud.compute.v1.FutureResourcesSpecSpecificSKUResourcesH\x01\x88\x01\x01\x42\x16\n\x14_aggregate_resourcesB\x19\n\x17_specific_sku_resources\"\xcd\x02\n\x0fGRPCHealthCheck\x12!\n\x11grpc_service_name\x18\xd6\xa8\x8d\x41 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x01\x88\x01\x01\x12\x19\n\tport_name\x18\x89\x87\xe7\x13 \x01(\tH\x02\x88\x01\x01\x12\"\n\x12port_specification\x18\xc5\xeb\xcc\x18 \x01(\tH\x03\x88\x01\x01\"~\n\x11PortSpecification\x12 \n\x1cUNDEFINED_PORT_SPECIFICATION\x10\x00\x12\x15\n\x0eUSE_FIXED_PORT\x10\xe4\x88\xdbZ\x12\x16\n\x0eUSE_NAMED_PORT\x10\xbf\xcf\xc7\xa6\x01\x12\x18\n\x10USE_SERVING_PORT\x10\xcc\xd1\xf5\xac\x01\x42\x14\n\x12_grpc_service_nameB\x07\n\x05_portB\x0c\n\n_port_nameB\x15\n\x13_port_specification\"\xa7\x02\n\x12GRPCTLSHealthCheck\x12!\n\x11grpc_service_name\x18\xd6\xa8\x8d\x41 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x01\x88\x01\x01\x12\"\n\x12port_specification\x18\xc5\xeb\xcc\x18 \x01(\tH\x02\x88\x01\x01\"~\n\x11PortSpecification\x12 \n\x1cUNDEFINED_PORT_SPECIFICATION\x10\x00\x12\x15\n\x0eUSE_FIXED_PORT\x10\xe4\x88\xdbZ\x12\x16\n\x0eUSE_NAMED_PORT\x10\xbf\xcf\xc7\xa6\x01\x12\x18\n\x10USE_SERVING_PORT\x10\xcc\xd1\xf5\xac\x01\x42\x14\n\x12_grpc_service_nameB\x07\n\x05_portB\x15\n\x13_port_specification\"l\n\x19GetAcceleratorTypeRequest\x12 \n\x10\x61\x63\x63\x65lerator_type\x18\x8e\xe1\xe8\x41 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"^\n\x11GetAddressRequest\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"f\n#GetAssociationFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_name\"\x86\x01\n*GetAssociationNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x42\x07\n\x05_name\"q\n/GetAssociationOrganizationSecurityPolicyRequest\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x07\n\x05_name\"\xa4\x01\n0GetAssociationRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x42\x07\n\x05_name\"b\n\x14GetAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"R\n\x17GetBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"U\n\x18GetBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"Y\n\x1aGetCrossSiteNetworkRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"Z\n!GetDiagnosticsInterconnectRequest\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"U\n\x0eGetDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"^\n\x12GetDiskTypeRequest\x12\x19\n\tdisk_type\x18\x9c\xe9\xac, \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\x93\x01\n$GetEffectiveFirewallsInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11network_interface\x18\xe8\xc0\x9d\xae\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"W\n#GetEffectiveFirewallsNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"\x83\x01\n7GetEffectiveFirewallsRegionNetworkFirewallPolicyRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"n\n1GetEffectiveSecurityPoliciesBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"4\n2GetEffectiveSecurityPoliciesBackendServiceResponse\"]\n\x1cGetExternalVpnGatewayRequest\x12$\n\x14\x65xternal_vpn_gateway\x18\x85\xd7\xb3\x34 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"<\n\x18GetFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\"H\n\x12GetFirewallRequest\x12\x19\n\x08\x66irewall\x18\x80\xfa\xd5\xf3\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"m\n\x18GetForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"M\n\x19GetFromFamilyImageRequest\x12\x17\n\x06\x66\x61mily\x18\xe4\xb6\xe1\x9c\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"p\n\x1bGetFutureReservationRequest\x12\"\n\x12\x66uture_reservation\x18\xd0\xc6\xe6\x1a \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"L\n\x17GetGlobalAddressRequest\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"[\n\x1eGetGlobalForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"h\n$GetGlobalNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"V\n\x19GetGlobalOperationRequest\x12 \n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\n\xe0\x41\x02\xfaG\x04name\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"s\n%GetGlobalOrganizationOperationRequest\x12 \n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\n\xe0\x41\x02\xfaG\x04name\x12\x1a\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tH\x00\x88\x01\x01\x42\x0c\n\n_parent_id\"j\n&GetGlobalPublicDelegatedPrefixeRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\"\xc7\x01\n!GetGuestAttributesInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\nquery_path\x18\xbc\x82\xe1\xaf\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0cvariable_key\x18\x9c\x84\xb0N \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_query_pathB\x0f\n\r_variable_key\"\xbf\x01\n\x1eGetHealthBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x62\n!resource_group_reference_resource\x18\xd3\xfe\xed\x35 \x01(\x0b\x32/.google.cloud.compute.v1.ResourceGroupReferenceB\x03\xe0\x41\x02\"O\n\x15GetHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"\xdd\x01\n$GetHealthRegionBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x62\n!resource_group_reference_resource\x18\xd3\xfe\xed\x35 \x01(\x0b\x32/.google.cloud.compute.v1.ResourceGroupReferenceB\x03\xe0\x41\x02\"\x86\x01\n*GetHealthRegionCompositeHealthCheckRequest\x12\'\n\x16\x63omposite_health_check\x18\x9d\xc0\xd6\xde\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"u\n\"GetHealthRegionHealthSourceRequest\x12\x1e\n\rhealth_source\x18\xde\x86\xc5\xb3\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\xc4\x01\n\x1aGetHealthTargetPoolRequest\x12X\n\x1binstance_reference_resource\x18\xec\xe4\xd6\x8b\x01 \x01(\x0b\x32*.google.cloud.compute.v1.InstanceReferenceB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\"\xad\x01\n GetIamPolicyBackendBucketRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xae\x01\n!GetIamPolicyBackendServiceRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xba\x01\n\x17GetIamPolicyDiskRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\x95\x01\n!GetIamPolicyFirewallPolicyRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xa5\x01\n\x18GetIamPolicyImageRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xbe\x01\n\x1bGetIamPolicyInstanceRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xb0\x01\n#GetIamPolicyInstanceTemplateRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xca\x01\n\'GetIamPolicyInstantSnapshotGroupRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc5\x01\n\"GetIamPolicyInstantSnapshotRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xbb\x01\n.GetIamPolicyInterconnectAttachmentGroupRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xb1\x01\n$GetIamPolicyInterconnectGroupRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xa7\x01\n\x1aGetIamPolicyLicenseRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xac\x01\n\x1fGetIamPolicyMachineImageRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc9\x01\n$GetIamPolicyNetworkAttachmentRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xb5\x01\n(GetIamPolicyNetworkFirewallPolicyRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xbf\x01\n\x1cGetIamPolicyNodeGroupRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc4\x01\n\x1fGetIamPolicyNodeTemplateRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xcb\x01\n&GetIamPolicyRegionBackendBucketRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xcc\x01\n\'GetIamPolicyRegionBackendServiceRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc2\x01\n\x1dGetIamPolicyRegionDiskRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xd2\x01\n-GetIamPolicyRegionInstantSnapshotGroupRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xcd\x01\n(GetIamPolicyRegionInstantSnapshotRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xd3\x01\n.GetIamPolicyRegionNetworkFirewallPolicyRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc6\x01\n!GetIamPolicyRegionSnapshotRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xe7\x01\n#GetIamPolicyReservationBlockRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1f\n\x0fparent_resource\x18\x83\x98\xd0\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc1\x01\n\x1eGetIamPolicyReservationRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xea\x01\n&GetIamPolicyReservationSubBlockRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1f\n\x0fparent_resource\x18\x83\x98\xd0\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc6\x01\n!GetIamPolicyResourcePolicyRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc9\x01\n$GetIamPolicyServiceAttachmentRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xa8\x01\n\x1bGetIamPolicySnapshotRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc1\x01\n\x1eGetIamPolicyStoragePoolRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"\xc2\x01\n\x1dGetIamPolicySubnetworkRequest\x12\x31\n options_requested_policy_version\x18\xbd\xfc\x85\xee\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x42#\n!_options_requested_policy_version\"c\n\x19GetImageFamilyViewRequest\x12\x17\n\x06\x66\x61mily\x18\xe4\xb6\xe1\x9c\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"A\n\x0fGetImageRequest\x12\x15\n\x05image\x18\xdb\xd2\xea/ \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"w\n\x1eGetInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xa4\x01\n+GetInstanceGroupManagerResizeRequestRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x0eresize_request\x18\x84\x84\xb9g \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"h\n\x17GetInstanceGroupRequest\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"]\n\x12GetInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"J\n\x19GetInstanceSettingRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"Y\n\x1aGetInstanceTemplateRequest\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"w\n\x1eGetInstantSnapshotGroupRequest\x12&\n\x16instant_snapshot_group\x18\xe2\xec\xb5j \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"m\n\x19GetInstantSnapshotRequest\x12!\n\x10instant_snapshot\x18\xe2\xdc\xdf\xba\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"o\n%GetInterconnectAttachmentGroupRequest\x12-\n\x1dinterconnect_attachment_group\x18\xf4\xef\x98$ \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"}\n GetInterconnectAttachmentRequest\x12(\n\x17interconnect_attachment\x18\xf4\x8a\xf7\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"[\n\x1bGetInterconnectGroupRequest\x12#\n\x12interconnect_group\x18\x8e\xb7\xa9\xb9\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"a\n\x1eGetInterconnectLocationRequest\x12&\n\x15interconnect_location\x18\xc6\xd8\xdb\xea\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"n\n$GetInterconnectRemoteLocationRequest\x12-\n\x1cinterconnect_remote_location\x18\xdd\xcb\xad\x8a\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"O\n\x16GetInterconnectRequest\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"M\n\x15GetLicenseCodeRequest\x12\x1b\n\x0clicense_code\x18\xab\xc6Y \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"E\n\x11GetLicenseRequest\x12\x17\n\x07license\x18\xc1\x88\xc2O \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"P\n\x16GetMachineImageRequest\x12\x1d\n\rmachine_image\x18\xe3\xfe\xfe \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"d\n\x15GetMachineTypeRequest\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"[\n\"GetMacsecConfigInterconnectRequest\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"\x8c\x01\n\x19GetNatIpInfoRouterRequest\x12\x19\n\x08nat_name\x18\xe9\xad\xf8\xca\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_nat_name\"\xf9\x02\n\x1fGetNatMappingInfoRoutersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x19\n\x08nat_name\x18\xe9\xad\xf8\xca\x01 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_nat_nameB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"r\n\x1bGetNetworkAttachmentRequest\x12\"\n\x12network_attachment\x18\xd4\x97\x8fk \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x86\x01\n$GetNetworkEdgeSecurityServiceRequest\x12-\n\x1dnetwork_edge_security_service\x18\xa7\x9f\xefJ \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"x\n\x1eGetNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\\\n\x1fGetNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"T\n\x18GetNetworkProfileRequest\x12\x1f\n\x0fnetwork_profile\x18\x98\xf9\xc5R \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"E\n\x11GetNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"a\n\x13GetNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"i\n\x16GetNodeTemplateRequest\x12\x1e\n\rnode_template\x18\x97\xe4\x8b\x9a\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"_\n\x12GetNodeTypeRequest\x12\x1a\n\tnode_type\x18\xd7\x96\x90\xde\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\x80\x01\n6GetOperationalStatusInterconnectAttachmentGroupRequest\x12-\n\x1dinterconnect_attachment_group\x18\xf4\xef\x98$ \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"l\n,GetOperationalStatusInterconnectGroupRequest\x12#\n\x12interconnect_group\x18\x8e\xb7\xa9\xb9\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"G\n$GetOrganizationSecurityPolicyRequest\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\"n\n\x19GetPacketMirroringRequest\x12 \n\x10packet_mirroring\x18\xcc\xb9\xd1\n \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x97\x01\n2GetPacketMirroringRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"U\n\x18GetPreviewFeatureRequest\x12 \n\x0fpreview_feature\x18\xff\xfa\xfa\xd8\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\",\n\x11GetProjectRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"f\n!GetPublicAdvertisedPrefixeRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12(\n\x18public_advertised_prefix\x18\x9e\xf7\xc9\x30 \x01(\tB\x03\xe0\x41\x02\"|\n GetPublicDelegatedPrefixeRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"j\n\x1aGetRegionAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"p\n\x1dGetRegionBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"s\n\x1eGetRegionBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"j\n\x1aGetRegionCommitmentRequest\x12\x1b\n\ncommitment\x18\x95\x96\xf3\xe5\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x80\x01\n$GetRegionCompositeHealthCheckRequest\x12\'\n\x16\x63omposite_health_check\x18\x9d\xc0\xd6\xde\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"]\n\x14GetRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"f\n\x18GetRegionDiskTypeRequest\x12\x19\n\tdisk_type\x18\x9c\xe9\xac, \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x85\x01\n\'GetRegionHealthAggregationPolicyRequest\x12)\n\x19health_aggregation_policy\x18\xf2\xcf\xcbr \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"m\n\x1bGetRegionHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"|\n\"GetRegionHealthCheckServiceRequest\x12%\n\x14health_check_service\x18\xdb\x9b\xdd\xc2\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"o\n\x1cGetRegionHealthSourceRequest\x12\x1e\n\rhealth_source\x18\xde\x86\xc5\xb3\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x7f\n$GetRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\xac\x01\n1GetRegionInstanceGroupManagerResizeRequestRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x0eresize_request\x18\x84\x84\xb9g \x01(\tB\x03\xe0\x41\x02\"p\n\x1dGetRegionInstanceGroupRequest\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"w\n GetRegionInstanceTemplateRequest\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x7f\n$GetRegionInstantSnapshotGroupRequest\x12&\n\x16instant_snapshot_group\x18\xe2\xec\xb5j \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"u\n\x1fGetRegionInstantSnapshotRequest\x12!\n\x10instant_snapshot\x18\xe2\xdc\xdf\xba\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x80\x01\n$GetRegionNetworkEndpointGroupRequest\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"z\n%GetRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"\x7f\n$GetRegionNotificationEndpointRequest\x12&\n\x15notification_endpoint\x18\xe9\xbc\xd6\xb3\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"n\n\x19GetRegionOperationRequest\x12 \n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\n\xe0\x41\x02\xfaG\x04name\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"C\n\x10GetRegionRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"r\n\x1eGetRegionSecurityPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\"f\n\x18GetRegionSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08snapshot\x18\xc4\xab\xeb\x87\x01 \x01(\tB\x03\xe0\x41\x02\"R\n\x1fGetRegionSnapshotSettingRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"r\n\x1eGetRegionSslCertificateRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fssl_certificate\x18\xe4\xd7\x92\x16 \x01(\tB\x03\xe0\x41\x02\"i\n\x19GetRegionSslPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tB\x03\xe0\x41\x02\"u\n\x1fGetRegionTargetHttpProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\"w\n GetRegionTargetHttpsProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\"t\n\x1eGetRegionTargetTcpProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12!\n\x10target_tcp_proxy\x18\xe2\xd6\xf0\xef\x01 \x01(\tB\x03\xe0\x41\x02\"c\n\x16GetRegionUrlMapRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\"\x82\x02\n\x1aGetReservationBlockRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11reservation_block\x18\xda\xc4\x89\xfe\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04view\x18\xa5\xf5\xdc\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"U\n\x04View\x12\x12\n\x0eUNDEFINED_VIEW\x10\x00\x12\x0c\n\x05\x42\x41SIC\x10\x8e\xb8\x83\x1e\x12\x1e\n\x16\x42LOCK_VIEW_UNSPECIFIED\x10\x8f\xfc\x94\x83\x01\x12\x0b\n\x04\x46ULL\x10\x8f\xb5\x84\x01\x42\x07\n\x05_view\"c\n\x15GetReservationRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\x8b\x01\n\x19GetReservationSlotRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12!\n\x10reservation_slot\x18\x91\xbd\xa7\x84\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xab\x02\n\x1dGetReservationSubBlockRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12%\n\x15reservation_sub_block\x18\x9b\xca\xec\n \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04view\x18\xa5\xf5\xdc\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"w\n\x04View\x12\x12\n\x0eUNDEFINED_VIEW\x10\x00\x12\x1b\n\x14SUB_BLOCK_VIEW_BASIC\x10\xc5\xf2\xc4p\x12\x1b\n\x13SUB_BLOCK_VIEW_FULL\x10\xf8\xf4\x92\xd2\x01\x12!\n\x1aSUB_BLOCK_VIEW_UNSPECIFIED\x10\x8e\xee\xcduB\x07\n\x05_view\"l\n\x18GetResourcePolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fresource_policy\x18\x83\xa5\xf7K \x01(\tB\x03\xe0\x41\x02\"\x89\x01\n\x1bGetRoutePolicyRouterRequest\x12\x16\n\x06policy\x18\xb2\xca\xb6+ \x01(\tH\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_policy\"A\n\x0fGetRouteRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x05route\x18\xc9\xe4\xea\x33 \x01(\tB\x03\xe0\x41\x02\"[\n\x10GetRouterRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\"g\n\x1cGetRouterStatusRouterRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\"h\n\x1cGetRuleFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x42\x0b\n\t_priority\"\x88\x01\n#GetRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"s\n(GetRuleOrganizationSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"\xa6\x01\n)GetRuleRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"\x9e\x01\n\"GetRuleRegionSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"\x80\x01\n\x1cGetRuleSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"g\n\x1cGetScreenshotInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"T\n\x18GetSecurityPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\"\xad\x01\n\"GetSerialPortOutputInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x05start\x18\xe2\x88\xab\x34 \x01(\x03H\x01\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\x07\n\x05_portB\x08\n\x06_start\"\xa3\x01\n\x1bGetServiceAttachmentRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12#\n\x12service_attachment\x18\xed\xa9\xd0\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1d\n\x0cshow_nat_ips\x18\xcc\xd9\xc0\xe7\x01 \x01(\x08H\x00\x88\x01\x01\x42\x0f\n\r_show_nat_ips\"u\n*GetShieldedInstanceIdentityInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"H\n\x12GetSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08snapshot\x18\xc4\xab\xeb\x87\x01 \x01(\tB\x03\xe0\x41\x02\"4\n\x19GetSnapshotSettingRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"T\n\x18GetSslCertificateRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x0fssl_certificate\x18\xe4\xd7\x92\x16 \x01(\tB\x03\xe0\x41\x02\"K\n\x13GetSslPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tB\x03\xe0\x41\x02\"k\n\x1aGetStatusVpnGatewayRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1c\n\x0bvpn_gateway\x18\xf9\x83\xf6\xc1\x01 \x01(\tB\x03\xe0\x41\x02\"e\n\x15GetStoragePoolRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1d\n\x0cstorage_pool\x18\xe0\xc6\xf1\xab\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"n\n\x19GetStoragePoolTypeRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11storage_pool_type\x18\xb9\x81\xb0\x88\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xcd\x01\n\x14GetSubnetworkRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x15\n\x05views\x18\xee\xb4\xc0\x35 \x01(\tH\x00\x88\x01\x01\"F\n\x05Views\x12\x13\n\x0fUNDEFINED_VIEWS\x10\x00\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\x12\x18\n\x10WITH_UTILIZATION\x10\x89\xa0\xaf\xf0\x01\x42\x08\n\x06_views\"W\n\x19GetTargetGrpcProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12!\n\x11target_grpc_proxy\x18\xfb\xb4\xb2\x02 \x01(\tB\x03\xe0\x41\x02\"W\n\x19GetTargetHttpProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\"Y\n\x1aGetTargetHttpsProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\"k\n\x18GetTargetInstanceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12 \n\x0ftarget_instance\x18\x83\x8f\x96\x8a\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"d\n\x14GetTargetPoolRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\"V\n\x18GetTargetSslProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\"V\n\x18GetTargetTcpProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12!\n\x10target_tcp_proxy\x18\xe2\xd6\xf0\xef\x01 \x01(\tB\x03\xe0\x41\x02\"r\n\x1aGetTargetVpnGatewayRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12#\n\x12target_vpn_gateway\x18\xcb\x80\xf6\xfd\x01 \x01(\tB\x03\xe0\x41\x02\"E\n\x10GetUrlMapRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\"\x92\x01\n\x1bGetVersionOperationMetadata\x12^\n\x10inline_sbom_info\x18\x9a\x8e\xb0\x03 \x01(\x0b\x32<.google.cloud.compute.v1.GetVersionOperationMetadataSbomInfoH\x00\x88\x01\x01\x42\x13\n\x11_inline_sbom_info\"\xae\x03\n#GetVersionOperationMetadataSbomInfo\x12\x82\x01\n\x1a\x63urrent_component_versions\x18\xa3\xb8\xaa\x82\x01 \x03(\x0b\x32Z.google.cloud.compute.v1.GetVersionOperationMetadataSbomInfo.CurrentComponentVersionsEntry\x12\x80\x01\n\x19target_component_versions\x18\x8b\x82\xfe\xa4\x01 \x03(\x0b\x32Y.google.cloud.compute.v1.GetVersionOperationMetadataSbomInfo.TargetComponentVersionsEntry\x1a?\n\x1d\x43urrentComponentVersionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a>\n\x1cTargetComponentVersionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xcb\x02\n GetVersionReservationSlotRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x10reservation_slot\x18\x91\xbd\xa7\x84\x01 \x01(\tB\x03\xe0\x41\x02\x12{\n.reservation_slots_get_version_request_resource\x18\xab\x88\xf2\x9f\x01 \x01(\x0b\x32:.google.cloud.compute.v1.ReservationSlotsGetVersionRequestB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xdc\x02\n$GetVersionReservationSubBlockRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12%\n\x15reservation_sub_block\x18\x9b\xca\xec\n \x01(\tB\x03\xe0\x41\x02\x12\x83\x01\n3reservation_sub_blocks_get_version_request_resource\x18\xb5\xfa\xacj \x01(\x0b\x32>.google.cloud.compute.v1.ReservationSubBlocksGetVersionRequestB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"e\n\x14GetVpnGatewayRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1c\n\x0bvpn_gateway\x18\xf9\x83\xf6\xc1\x01 \x01(\tB\x03\xe0\x41\x02\"b\n\x13GetVpnTunnelRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nvpn_tunnel\x18\x93\x94\xca\x44 \x01(\tB\x03\xe0\x41\x02\"n\n\x13GetWireGroupRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nwire_group\x18\xc5\xa4\xb7: \x01(\tB\x03\xe0\x41\x02\"3\n\x18GetXpnHostProjectRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"\xa0\x02\n\x1eGetXpnResourcesProjectsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"j\n\x17GetZoneOperationRequest\x12 \n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\n\xe0\x41\x02\xfaG\x04name\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"?\n\x0eGetZoneRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"v\n\x1fGetZoneVmExtensionPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12$\n\x13vm_extension_policy\x18\xba\x93\x8b\x9e\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\x88\x01\n\x1aGlobalAddressesMoveRequest\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12$\n\x13\x64\x65stination_address\x18\xc3\xb1\x9e\xb1\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x16\n\x14_destination_address\"{\n1GlobalNetworkEndpointGroupsAttachEndpointsRequest\x12\x46\n\x11network_endpoints\x18\xad\x91\xbaG \x03(\x0b\x32(.google.cloud.compute.v1.NetworkEndpoint\"{\n1GlobalNetworkEndpointGroupsDetachEndpointsRequest\x12\x46\n\x11network_endpoints\x18\xad\x91\xbaG \x03(\x0b\x32(.google.cloud.compute.v1.NetworkEndpoint\"\xbf\x01\n\"GlobalOrganizationSetPolicyRequest\x12\x36\n\x08\x62indings\x18\x8e\xc5\xa4\xc0\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Binding\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x06policy\x18\xb2\xca\xb6+ \x01(\x0b\x32\x1f.google.cloud.compute.v1.PolicyH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_policy\"\xd1\x01\n\x16GlobalSetLabelsRequest\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x00\x88\x01\x01\x12O\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32;.google.cloud.compute.v1.GlobalSetLabelsRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x14\n\x12_label_fingerprint\"\xb3\x01\n\x16GlobalSetPolicyRequest\x12\x36\n\x08\x62indings\x18\x8e\xc5\xa4\xc0\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Binding\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x06policy\x18\xb2\xca\xb6+ \x01(\x0b\x32\x1f.google.cloud.compute.v1.PolicyH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_policy\"\xe0\x06\n\x14GroupMaintenanceInfo\x12\x32\n\"instance_maintenance_ongoing_count\x18\xf5\x8f\xcf\x41 \x01(\x05H\x00\x88\x01\x01\x12\x32\n\"instance_maintenance_pending_count\x18\x91\x8a\xc4$ \x01(\x05H\x01\x88\x01\x01\x12)\n\x19maintenance_ongoing_count\x18\x9f\xb6\xe6h \x01(\x05H\x02\x88\x01\x01\x12)\n\x19maintenance_pending_count\x18\xbb\xb0\xdbK \x01(\x05H\x03\x88\x01\x01\x12\x1f\n\x0fscheduling_type\x18\x85\xfe\xa4_ \x01(\tH\x04\x88\x01\x01\x12\x39\n(subblock_infra_maintenance_ongoing_count\x18\xfe\xde\xcc\xae\x01 \x01(\x05H\x05\x88\x01\x01\x12\x39\n(subblock_infra_maintenance_pending_count\x18\x9a\xd9\xc1\x91\x01 \x01(\x05H\x06\x88\x01\x01\x12Y\n\x1aupcoming_group_maintenance\x18\xf0\xc9\xcd\xbb\x01 \x01(\x0b\x32,.google.cloud.compute.v1.UpcomingMaintenanceH\x07\x88\x01\x01\"\x80\x01\n\x0eSchedulingType\x12\x1d\n\x19UNDEFINED_SCHEDULING_TYPE\x10\x00\x12\x0f\n\x07GROUPED\x10\xbe\xd6\xa3\xe2\x01\x12*\n\"GROUP_MAINTENANCE_TYPE_UNSPECIFIED\x10\xbe\xf6\x9d\xd5\x01\x12\x12\n\x0bINDEPENDENT\x10\xda\x96\xc8.google.cloud.compute.v1.HealthChecksAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a]\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12>\n\x05value\x18\x02 \x01(\x0b\x32/.google.cloud.compute.v1.HealthChecksScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa0\x01\n\x16HealthChecksScopedList\x12?\n\rhealth_checks\x18\xae\xaf\xe6\xd5\x01 \x03(\x0b\x32$.google.cloud.compute.v1.HealthCheck\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xce\x04\n\x0cHealthSource\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12)\n\x19health_aggregation_policy\x18\xf2\xcf\xcbr \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\t\x88\x01\x01\x12\x1c\n\x0bsource_type\x18\xde\xf1\xd2\xd7\x01 \x01(\tH\n\x88\x01\x01\x12\x12\n\x07sources\x18\xb8\xb7\xf2; \x03(\t\"@\n\nSourceType\x12\x19\n\x15UNDEFINED_SOURCE_TYPE\x10\x00\x12\x17\n\x0f\x42\x41\x43KEND_SERVICE\x10\xca\xaf\xa3\x88\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x1c\n\x1a_health_aggregation_policyB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x0e\n\x0c_source_type\"\xc5\x03\n\x1aHealthSourceAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12P\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32>.google.cloud.compute.v1.HealthSourceAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a^\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12?\n\x05value\x18\x02 \x01(\x0b\x32\x30.google.cloud.compute.v1.HealthSourcesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x9a\x02\n\x12HealthSourceHealth\x12\x1d\n\x0chealth_state\x18\xee\xe9\xbf\x9a\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12U\n\x07sources\x18\xb8\xb7\xf2; \x03(\x0b\x32\x41.google.cloud.compute.v1.HealthSourcesGetHealthResponseSourceInfo\"^\n\x0bHealthState\x12\x1a\n\x16UNDEFINED_HEALTH_STATE\x10\x00\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12\x11\n\tUNHEALTHY\x10\xc4\xb9\xad\xdc\x01\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\x42\x0f\n\r_health_stateB\x07\n\x05_kind\"\xa9\x02\n\x10HealthSourceList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x37\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32%.google.cloud.compute.v1.HealthSource\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xe7\x01\n(HealthSourcesGetHealthResponseSourceInfo\x12\x62\n\x08\x62\x61\x63kends\x18\xdf\x98\xcb\xf3\x01 \x03(\x0b\x32L.google.cloud.compute.v1.HealthSourcesGetHealthResponseSourceInfoBackendInfo\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\x01\x88\x01\x01\x42\x12\n\x10_forwarding_ruleB\t\n\x07_source\"\xce\x01\n3HealthSourcesGetHealthResponseSourceInfoBackendInfo\x12\x1f\n\x0e\x65ndpoint_count\x18\xe5\x9b\x86\xe8\x01 \x01(\x05H\x00\x88\x01\x01\x12\x15\n\x05group\x18\xff\xec\x83/ \x01(\tH\x01\x88\x01\x01\x12\'\n\x16healthy_endpoint_count\x18\xc7\xc9\xf2\x8a\x01 \x01(\x05H\x02\x88\x01\x01\x42\x11\n\x0f_endpoint_countB\x08\n\x06_groupB\x19\n\x17_healthy_endpoint_count\"\xa3\x01\n\x17HealthSourcesScopedList\x12\x41\n\x0ehealth_sources\x18\xd5\xd1\xdc\xbd\x01 \x03(\x0b\x32%.google.cloud.compute.v1.HealthSource\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xf2\x06\n\x0cHealthStatus\x12N\n\x0b\x61nnotations\x18\xa4\xf6\xb5\x35 \x03(\x0b\x32\x36.google.cloud.compute.v1.HealthStatus.AnnotationsEntry\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x66orwarding_rule_ip\x18\x88\xac\x91R \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x0chealth_state\x18\xee\xe9\xbf\x9a\x01 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x0cipv6_address\x18\x9c\xb3\xef\xa2\x01 \x01(\tH\x05\x88\x01\x01\x12!\n\x11ipv6_health_state\x18\xc6\x80\xe0Z \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x07\x88\x01\x01\x12\x17\n\x06weight\x18\xf8\x84\xc5\x86\x01 \x01(\tH\x08\x88\x01\x01\x12\x1d\n\x0cweight_error\x18\x81\xfb\x92\xf9\x01 \x01(\tH\t\x88\x01\x01\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"M\n\x0bHealthState\x12\x1a\n\x16UNDEFINED_HEALTH_STATE\x10\x00\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12\x11\n\tUNHEALTHY\x10\xc4\xb9\xad\xdc\x01\"2\n\x0fIpv6HealthState\x12\x1f\n\x1bUNDEFINED_IPV6_HEALTH_STATE\x10\x00\"\x8a\x01\n\x0bWeightError\x12\x1a\n\x16UNDEFINED_WEIGHT_ERROR\x10\x00\x12\x16\n\x0eINVALID_WEIGHT\x10\xe0\x8b\xfb\xb6\x01\x12\x16\n\x0eMISSING_WEIGHT\x10\x91\x97\x8f\xb7\x01\x12\x1a\n\x12UNAVAILABLE_WEIGHT\x10\xe7\xe2\xc6\xd1\x01\x12\x13\n\x0bWEIGHT_NONE\x10\x9f\xe9\xc9\xef\x01\x42\x12\n\x10_forwarding_ruleB\x15\n\x13_forwarding_rule_ipB\x0f\n\r_health_stateB\x0b\n\t_instanceB\r\n\x0b_ip_addressB\x0f\n\r_ipv6_addressB\x14\n\x12_ipv6_health_stateB\x07\n\x05_portB\t\n\x07_weightB\x0f\n\r_weight_error\"\xd4\x05\n\x1eHealthStatusForNetworkEndpoint\x12R\n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.BackendServiceReferenceH\x00\x88\x01\x01\x12R\n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.ForwardingRuleReferenceH\x01\x88\x01\x01\x12L\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\x0b\x32-.google.cloud.compute.v1.HealthCheckReferenceH\x02\x88\x01\x01\x12[\n\x14health_check_service\x18\xdb\x9b\xdd\xc2\x01 \x01(\x0b\x32\x34.google.cloud.compute.v1.HealthCheckServiceReferenceH\x03\x88\x01\x01\x12\x1d\n\x0chealth_state\x18\xee\xe9\xbf\x9a\x01 \x01(\tH\x04\x88\x01\x01\x12!\n\x11ipv6_health_state\x18\xc6\x80\xe0Z \x01(\tH\x05\x88\x01\x01\"p\n\x0bHealthState\x12\x1a\n\x16UNDEFINED_HEALTH_STATE\x10\x00\x12\x10\n\x08\x44RAINING\x10\xea\xd5\x8c\xe5\x01\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12\x11\n\tUNHEALTHY\x10\xc4\xb9\xad\xdc\x01\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\"2\n\x0fIpv6HealthState\x12\x1f\n\x1bUNDEFINED_IPV6_HEALTH_STATE\x10\x00\x42\x12\n\x10_backend_serviceB\x12\n\x10_forwarding_ruleB\x0f\n\r_health_checkB\x17\n\x15_health_check_serviceB\x0f\n\r_health_stateB\x14\n\x12_ipv6_health_state\";\n\x04Help\x12\x33\n\x05links\x18\xb9\x9f\x8d\x31 \x03(\x0b\x32!.google.cloud.compute.v1.HelpLink\"T\n\x08HelpLink\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03url\x18\xef\x8a\x07 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x06\n\x04_url\"z\n\x08HostRule\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x05hosts\x18\xcb\xff\xb6/ \x03(\t\x12\x1d\n\x0cpath_matcher\x18\x98\xbe\x8a\xa1\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0f\n\r_path_matcher\"i\n\x0eHttpFaultAbort\x12\x1c\n\x0bhttp_status\x18\x89\xb7\xce\xdf\x01 \x01(\rH\x00\x88\x01\x01\x12\x1a\n\npercentage\x18\x9a\xe5\xb7H \x01(\x01H\x01\x88\x01\x01\x42\x0e\n\x0c_http_statusB\r\n\x0b_percentage\"\x8c\x01\n\x0eHttpFaultDelay\x12?\n\x0b\x66ixed_delay\x18\xf8\xb9\x96\x97\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x00\x88\x01\x01\x12\x1a\n\npercentage\x18\x9a\xe5\xb7H \x01(\x01H\x01\x88\x01\x01\x42\x0e\n\x0c_fixed_delayB\r\n\x0b_percentage\"\xa8\x01\n\x12HttpFaultInjection\x12>\n\x05\x61\x62ort\x18\xb0\xc6\x94, \x01(\x0b\x32\'.google.cloud.compute.v1.HttpFaultAbortH\x00\x88\x01\x01\x12>\n\x05\x64\x65lay\x18\x83\xf3\xc2- \x01(\x0b\x32\'.google.cloud.compute.v1.HttpFaultDelayH\x01\x88\x01\x01\x42\x08\n\x06_abortB\x08\n\x06_delay\"\xfc\x01\n\x10HttpHeaderAction\x12L\n\x16request_headers_to_add\x18\xe6\xae\xb1\" \x03(\x0b\x32).google.cloud.compute.v1.HttpHeaderOption\x12$\n\x19request_headers_to_remove\x18\x9f\xcf\x93h \x03(\t\x12M\n\x17response_headers_to_add\x18\xf4\xb6\xa9\x0f \x03(\x0b\x32).google.cloud.compute.v1.HttpHeaderOption\x12%\n\x1aresponse_headers_to_remove\x18\xd1\x81\xfb# \x03(\t\"\xb0\x03\n\x0fHttpHeaderMatch\x12\x1c\n\x0b\x65xact_match\x18\x85\x99\x9c\xda\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bheader_name\x18\xfd\xc1\xc7\x34 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x0cinvert_match\x18\x9c\xc8\xfa\xee\x01 \x01(\x08H\x02\x88\x01\x01\x12\x1c\n\x0cprefix_match\x18\xd8\xf3\xfcz \x01(\tH\x03\x88\x01\x01\x12\x1d\n\rpresent_match\x18\xc1\xfa\x93 \x01(\x08H\x04\x88\x01\x01\x12\x45\n\x0brange_match\x18\xc3\xa8\xaf. \x01(\x0b\x32(.google.cloud.compute.v1.Int64RangeMatchH\x05\x88\x01\x01\x12\x1b\n\x0bregex_match\x18\xcd\xb7\x9a\x33 \x01(\tH\x06\x88\x01\x01\x12\x1d\n\x0csuffix_match\x18\xd7\xe6\xae\xcb\x01 \x01(\tH\x07\x88\x01\x01\x42\x0e\n\x0c_exact_matchB\x0e\n\x0c_header_nameB\x0f\n\r_invert_matchB\x0f\n\r_prefix_matchB\x10\n\x0e_present_matchB\x0e\n\x0c_range_matchB\x0e\n\x0c_regex_matchB\x0f\n\r_suffix_match\"\x93\x01\n\x10HttpHeaderOption\x12\x1b\n\x0bheader_name\x18\xfd\xc1\xc7\x34 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0cheader_value\x18\xbf\xf2\xeb` \x01(\tH\x01\x88\x01\x01\x12\x17\n\x07replace\x18\xb4\xe5\xf2\t \x01(\x08H\x02\x88\x01\x01\x42\x0e\n\x0c_header_nameB\x0f\n\r_header_valueB\n\n\x08_replace\"\xc4\x01\n\x17HttpQueryParameterMatch\x12\x1c\n\x0b\x65xact_match\x18\x85\x99\x9c\xda\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\rpresent_match\x18\xc1\xfa\x93 \x01(\x08H\x02\x88\x01\x01\x12\x1b\n\x0bregex_match\x18\xcd\xb7\x9a\x33 \x01(\tH\x03\x88\x01\x01\x42\x0e\n\x0c_exact_matchB\x07\n\x05_nameB\x10\n\x0e_present_matchB\x0e\n\x0c_regex_match\"\x8c\x04\n\x12HttpRedirectAction\x12\x1d\n\rhost_redirect\x18\x93\xa1\x9c\x33 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0ehttps_redirect\x18\xb0\xf1\x97Q \x01(\x08H\x01\x88\x01\x01\x12\x1e\n\rpath_redirect\x18\xb6\xbd\xee\x81\x01 \x01(\tH\x02\x88\x01\x01\x12 \n\x0fprefix_redirect\x18\xe9\xf5\xe0\xd4\x01 \x01(\tH\x03\x88\x01\x01\x12\'\n\x16redirect_response_code\x18\x88\xd8\x9e\xd0\x01 \x01(\tH\x04\x88\x01\x01\x12\x1b\n\x0bstrip_query\x18\xe1\x99\xf7\x18 \x01(\x08H\x05\x88\x01\x01\"\xb8\x01\n\x14RedirectResponseCode\x12$\n UNDEFINED_REDIRECT_RESPONSE_CODE\x10\x00\x12\x0c\n\x05\x46OUND\x10\xe2\xbe\xfe\x1f\x12!\n\x19MOVED_PERMANENTLY_DEFAULT\x10\xd1\x99\xb2\xb8\x01\x12\x1a\n\x12PERMANENT_REDIRECT\x10\xed\xe8\x93\xb6\x01\x12\x11\n\tSEE_OTHER\x10\xe4\xef\xaf\xd4\x01\x12\x1a\n\x12TEMPORARY_REDIRECT\x10\xaa\xe4\xb7\xe9\x01\x42\x10\n\x0e_host_redirectB\x11\n\x0f_https_redirectB\x10\n\x0e_path_redirectB\x12\n\x10_prefix_redirectB\x19\n\x17_redirect_response_codeB\x0e\n\x0c_strip_query\"\xb4\x01\n\x0fHttpRetryPolicy\x12\x1b\n\x0bnum_retries\x18\x8d\xab\x81x \x01(\rH\x00\x88\x01\x01\x12\x43\n\x0fper_try_timeout\x18\xbb\xad\xc4\x85\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x01\x88\x01\x01\x12\x1b\n\x10retry_conditions\x18\xaf\xe1\xde\r \x03(\tB\x0e\n\x0c_num_retriesB\x12\n\x10_per_try_timeout\"\xc7\x06\n\x0fHttpRouteAction\x12\x43\n\x0c\x63\x61\x63he_policy\x18\x8f\xb9\x8b\xda\x01 \x01(\x0b\x32$.google.cloud.compute.v1.CachePolicyH\x00\x88\x01\x01\x12\x41\n\x0b\x63ors_policy\x18\x84\xcc\x9d\xbe\x01 \x01(\x0b\x32#.google.cloud.compute.v1.CorsPolicyH\x01\x88\x01\x01\x12T\n\x16\x66\x61ult_injection_policy\x18\x97\x94\xea\xc4\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HttpFaultInjectionH\x02\x88\x01\x01\x12\x46\n\x13max_stream_duration\x18\x98\xa5\xa5\x1d \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x03\x88\x01\x01\x12S\n\x15request_mirror_policy\x18\x82\xe0\xffh \x01(\x0b\x32,.google.cloud.compute.v1.RequestMirrorPolicyH\x04\x88\x01\x01\x12\x46\n\x0cretry_policy\x18\xa9\xe5\x8a\x1b \x01(\x0b\x32(.google.cloud.compute.v1.HttpRetryPolicyH\x05\x88\x01\x01\x12;\n\x07timeout\x18\xe1\x9a\xbd\x8d\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x06\x88\x01\x01\x12\x41\n\x0burl_rewrite\x18\xbc\xfd\xaa\x82\x01 \x01(\x0b\x32#.google.cloud.compute.v1.UrlRewriteH\x07\x88\x01\x01\x12V\n\x19weighted_backend_services\x18\xd1\xc7\xda\xa0\x01 \x03(\x0b\x32/.google.cloud.compute.v1.WeightedBackendServiceB\x0f\n\r_cache_policyB\x0e\n\x0c_cors_policyB\x19\n\x17_fault_injection_policyB\x16\n\x14_max_stream_durationB\x18\n\x16_request_mirror_policyB\x0f\n\r_retry_policyB\n\n\x08_timeoutB\x0e\n\x0c_url_rewrite\"\xe8\x04\n\rHttpRouteRule\x12`\n\x1c\x63ustom_error_response_policy\x18\xeb\xf8\xda` \x01(\x0b\x32\x32.google.cloud.compute.v1.CustomErrorResponsePolicyH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12I\n\rheader_action\x18\xa8\xa0\xb8\x9c\x01 \x01(\x0b\x32).google.cloud.compute.v1.HttpHeaderActionH\x02\x88\x01\x01\x12\x44\n\x0bmatch_rules\x18\xfd\xbb\xb1\xb3\x01 \x03(\x0b\x32+.google.cloud.compute.v1.HttpRouteRuleMatch\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x03\x88\x01\x01\x12G\n\x0croute_action\x18\xec\xa9\xb9\xca\x01 \x01(\x0b\x32(.google.cloud.compute.v1.HttpRouteActionH\x04\x88\x01\x01\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x05\x88\x01\x01\x12J\n\x0curl_redirect\x18\xac\xa1\x98\xc1\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HttpRedirectActionH\x06\x88\x01\x01\x42\x1f\n\x1d_custom_error_response_policyB\x0e\n\x0c_descriptionB\x10\n\x0e_header_actionB\x0b\n\t_priorityB\x0f\n\r_route_actionB\n\n\x08_serviceB\x0f\n\r_url_redirect\"\xf5\x03\n\x12HttpRouteRuleMatch\x12\x1f\n\x0f\x66ull_path_match\x18\xdb\x89\xaa\x66 \x01(\tH\x00\x88\x01\x01\x12\x44\n\x0eheader_matches\x18\x81\xeb\xc8\xac\x01 \x03(\x0b\x32(.google.cloud.compute.v1.HttpHeaderMatch\x12\x1c\n\x0bignore_case\x18\xfd\x92\xb4\xdd\x01 \x01(\x08H\x01\x88\x01\x01\x12\x45\n\x10metadata_filters\x18\xeb\xcd\xcc\xdd\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.MetadataFilter\x12$\n\x13path_template_match\x18\x9a\xc2\xb3\x8b\x01 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0cprefix_match\x18\xd8\xf3\xfcz \x01(\tH\x03\x88\x01\x01\x12U\n\x17query_parameter_matches\x18\xe6\x95\xbe\x88\x01 \x03(\x0b\x32\x30.google.cloud.compute.v1.HttpQueryParameterMatch\x12\x1b\n\x0bregex_match\x18\xcd\xb7\x9a\x33 \x01(\tH\x04\x88\x01\x01\x42\x12\n\x10_full_path_matchB\x0e\n\x0c_ignore_caseB\x16\n\x14_path_template_matchB\x0f\n\r_prefix_matchB\x0e\n\x0c_regex_match\"\x82\x13\n\x05Image\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12\x61rchive_size_bytes\x18\xca\x8c\xdc\xb5\x01 \x01(\x03H\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x05\x88\x01\x01\x12+\n\x1b\x65nable_confidential_compute\x18\xbc\xeb\xd9\x30 \x01(\x08H\x06\x88\x01\x01\x12\x17\n\x06\x66\x61mily\x18\xe4\xb6\xe1\x9c\x01 \x01(\tH\x07\x88\x01\x01\x12\x45\n\x11guest_os_features\x18\xd1\xe0\xe7% \x03(\x0b\x32\'.google.cloud.compute.v1.GuestOsFeature\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x08\x88\x01\x01\x12U\n\x14image_encryption_key\x18\x87\xce\xfb\xb4\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\t\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\n\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x0b\x88\x01\x01\x12>\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32*.google.cloud.compute.v1.Image.LabelsEntry\x12\x18\n\rlicense_codes\x18\xa8\x85\xd8\x15 \x03(\x03\x12\x14\n\x08licenses\x18\xd2\x88\x80\xa1\x01 \x03(\t\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0c\x88\x01\x01\x12<\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32$.google.cloud.compute.v1.ImageParamsH\r\x88\x01\x01\x12;\n\x08raw_disk\x18\xd4\xce\xf3\xef\x01 \x01(\x0b\x32 .google.cloud.compute.v1.RawDiskH\x0e\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\x0f\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x10\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x11\x88\x01\x01\x12\\\n\x1fshielded_instance_initial_state\x18\x83\xc4\xdc[ \x01(\x0b\x32+.google.cloud.compute.v1.InitialStateConfigH\x12\x88\x01\x01\x12\x1c\n\x0bsource_disk\x18\xc1\xee\xb4\xd7\x01 \x01(\tH\x13\x88\x01\x01\x12[\n\x1asource_disk_encryption_key\x18\xe1\xa0\xb8\xfd\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x14\x88\x01\x01\x12\x1f\n\x0esource_disk_id\x18\xd9\xcd\xc9\xd8\x01 \x01(\tH\x15\x88\x01\x01\x12\x1c\n\x0csource_image\x18\xb7\xe8\x86\x18 \x01(\tH\x16\x88\x01\x01\x12\\\n\x1bsource_image_encryption_key\x18\xab\x91\xf5\xb5\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x17\x88\x01\x01\x12\x1f\n\x0fsource_image_id\x18\xa3\xfc\xb0\x1a \x01(\tH\x18\x88\x01\x01\x12\x1f\n\x0fsource_snapshot\x18\xe8\x9a\x8e< \x01(\tH\x19\x88\x01\x01\x12_\n\x1esource_snapshot_encryption_key\x18\xda\x8e\xe7\x90\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x1a\x88\x01\x01\x12\"\n\x12source_snapshot_id\x18\xd2\x96\x98/ \x01(\tH\x1b\x88\x01\x01\x12\x1c\n\x0bsource_type\x18\xde\xf1\xd2\xd7\x01 \x01(\tH\x1c\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x1d\x88\x01\x01\x12\x1d\n\x11storage_locations\x18\x9a\xed\xb3\x9c\x01 \x03(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\"2\n\nSourceType\x12\x19\n\x15UNDEFINED_SOURCE_TYPE\x10\x00\x12\t\n\x03RAW\x10\x88\xf8\x04\"^\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B\x0f\n\r_architectureB\x15\n\x13_archive_size_bytesB\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\x0f\n\r_disk_size_gbB\x1e\n\x1c_enable_confidential_computeB\t\n\x07_familyB\x05\n\x03_idB\x17\n\x15_image_encryption_keyB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\t\n\x07_paramsB\x0b\n\t_raw_diskB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\"\n _shielded_instance_initial_stateB\x0e\n\x0c_source_diskB\x1d\n\x1b_source_disk_encryption_keyB\x11\n\x0f_source_disk_idB\x0f\n\r_source_imageB\x1e\n\x1c_source_image_encryption_keyB\x12\n\x10_source_image_idB\x12\n\x10_source_snapshotB!\n\x1f_source_snapshot_encryption_keyB\x15\n\x13_source_snapshot_idB\x0e\n\x0c_source_typeB\t\n\x07_status\"R\n\x0fImageFamilyView\x12\x35\n\x05image\x18\xdb\xd2\xea/ \x01(\x0b\x32\x1e.google.cloud.compute.v1.ImageH\x00\x88\x01\x01\x42\x08\n\x06_image\"\x9b\x02\n\tImageList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x30\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1e.google.cloud.compute.v1.Image\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xab\x01\n\x0bImageParams\x12`\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32=.google.cloud.compute.v1.ImageParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8e\x02\n\x12InitialStateConfig\x12\x39\n\x03\x64\x62s\x18\xb5\x87\x06 \x03(\x0b\x32*.google.cloud.compute.v1.FileContentBuffer\x12;\n\x04\x64\x62xs\x18\xf9\xe7\xbb\x01 \x03(\x0b\x32*.google.cloud.compute.v1.FileContentBuffer\x12;\n\x04keks\x18\xc2\xd8\xc8\x01 \x03(\x0b\x32*.google.cloud.compute.v1.FileContentBuffer\x12<\n\x02pk\x18\xfb\x1b \x01(\x0b\x32*.google.cloud.compute.v1.FileContentBufferH\x00\x88\x01\x01\x42\x05\n\x03_pk\"\xca\x01\n\x14InsertAddressRequest\x12\x43\n\x10\x61\x64\x64ress_resource\x18\xf9\x97\xde\xe6\x01 \x01(\x0b\x32 .google.cloud.compute.v1.AddressB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xce\x01\n\x17InsertAutoscalerRequest\x12H\n\x13\x61utoscaler_resource\x18\xf6\xf0\xff\x62 \x01(\x0b\x32#.google.cloud.compute.v1.AutoscalerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xbc\x01\n\x1aInsertBackendBucketRequest\x12P\n\x17\x62\x61\x63kend_bucket_resource\x18\x98\xce\xc7\xb5\x01 \x01(\x0b\x32&.google.cloud.compute.v1.BackendBucketB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbf\x01\n\x1bInsertBackendServiceRequest\x12R\n\x18\x62\x61\x63kend_service_resource\x18\xa3\x81\xdf\xa5\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.BackendServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf6\x01\n\x1dInsertCrossSiteNetworkRequest\x12V\n\x1b\x63ross_site_network_resource\x18\xb8\xe4\xdd\x0e \x01(\x0b\x32).google.cloud.compute.v1.CrossSiteNetworkB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x10\n\x0e_validate_only\"\xeb\x01\n\x11InsertDiskRequest\x12<\n\rdisk_resource\x18\xf0\xd0\xab\x0c \x01(\x0b\x32\x1d.google.cloud.compute.v1.DiskB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0csource_image\x18\xb7\xe8\x86\x18 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x0f\n\r_source_image\"\xcc\x01\n\x1fInsertExternalVpnGatewayRequest\x12[\n\x1d\x65xternal_vpn_gateway_resource\x18\x88\xdf\x90\xe8\x01 \x01(\x0b\x32+.google.cloud.compute.v1.ExternalVpnGatewayB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc4\x01\n\x1bInsertFirewallPolicyRequest\x12R\n\x18\x66irewall_policy_resource\x18\xbc\xb6\x87\xec\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicyB\x03\xe0\x41\x02\x12&\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tB\x0f\xe0\x41\x02\xf2G\tparent_id\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xab\x01\n\x15InsertFirewallRequest\x12\x44\n\x11\x66irewall_resource\x18\xed\xb0\xe0\x13 \x01(\x0b\x32!.google.cloud.compute.v1.FirewallB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe0\x01\n\x1bInsertForwardingRuleRequest\x12R\n\x18\x66orwarding_rule_resource\x18\xaf\xc0\xd0\x8f\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.ForwardingRuleB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe5\x01\n\x1eInsertFutureReservationRequest\x12X\n\x1b\x66uture_reservation_resource\x18\x9d\x98\xc8\xde\x01 \x01(\x0b\x32*.google.cloud.compute.v1.FutureReservationB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xaf\x01\n\x1aInsertGlobalAddressRequest\x12\x43\n\x10\x61\x64\x64ress_resource\x18\xf9\x97\xde\xe6\x01 \x01(\x0b\x32 .google.cloud.compute.v1.AddressB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc5\x01\n!InsertGlobalForwardingRuleRequest\x12R\n\x18\x66orwarding_rule_resource\x18\xaf\xc0\xd0\x8f\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.ForwardingRuleB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd8\x01\n\'InsertGlobalNetworkEndpointGroupRequest\x12_\n\x1fnetwork_endpoint_group_resource\x18\xa7\xcd\xdb\xfa\x01 \x01(\x0b\x32-.google.cloud.compute.v1.NetworkEndpointGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xdb\x01\n)InsertGlobalPublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12`\n public_delegated_prefix_resource\x18\x85\xf8\xd8\x16 \x01(\x0b\x32..google.cloud.compute.v1.PublicDelegatedPrefixB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb5\x01\n\x18InsertHealthCheckRequest\x12K\n\x15health_check_resource\x18\xa8\xc3\xa4` \x01(\x0b\x32$.google.cloud.compute.v1.HealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd2\x01\n\x12InsertImageRequest\x12\x1c\n\x0c\x66orce_create\x18\xd0\x89\xa4^ \x01(\x08H\x00\x88\x01\x01\x12?\n\x0eimage_resource\x18\xf2\xc4\xfe\xb0\x01 \x01(\x0b\x32\x1e.google.cloud.compute.v1.ImageB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0f\n\r_force_createB\r\n\x0b_request_id\"\xee\x01\n!InsertInstanceGroupManagerRequest\x12^\n\x1finstance_group_manager_resource\x18\x8a\x8a\xbe| \x01(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManagerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xc0\x02\n.InsertInstanceGroupManagerResizeRequestRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12{\n.instance_group_manager_resize_request_resource\x18\xed\xbe\xb5\xdf\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InstanceGroupManagerResizeRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xd9\x01\n\x1aInsertInstanceGroupRequest\x12P\n\x17instance_group_resource\x18\xb8\xb5\xd5\x88\x01 \x01(\x0b\x32&.google.cloud.compute.v1.InstanceGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xcf\x02\n\x15InsertInstanceRequest\x12\x44\n\x11instance_resource\x18\xf8\xf0\xfe\x66 \x01(\x0b\x32!.google.cloud.compute.v1.InstanceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12)\n\x18source_instance_template\x18\xc0\xc3\xc1\x9e\x01 \x01(\tH\x01\x88\x01\x01\x12$\n\x14source_machine_image\x18\xbf\xdc\xb0\n \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x1b\n\x19_source_instance_templateB\x17\n\x15_source_machine_image\"\xc4\x01\n\x1dInsertInstanceTemplateRequest\x12U\n\x1ainstance_template_resource\x18\x89\xea\x8b\x05 \x01(\x0b\x32).google.cloud.compute.v1.InstanceTemplateB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb6\x02\n!InsertInstantSnapshotGroupRequest\x12^\n\x1finstant_snapshot_group_resource\x18\xcb\x9a\x96\x45 \x01(\x0b\x32-.google.cloud.compute.v1.InstantSnapshotGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12)\n\x18source_consistency_group\x18\xf4\xcc\xaf\xfd\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x1b\n\x19_source_consistency_group\"\xdf\x01\n\x1cInsertInstantSnapshotRequest\x12T\n\x19instant_snapshot_resource\x18\xcb\xaa\x88\xb7\x01 \x01(\x0b\x32(.google.cloud.compute.v1.InstantSnapshotB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe6\x01\n(InsertInterconnectAttachmentGroupRequest\x12l\n&interconnect_attachment_group_resource\x18\xf9\xdf\xe1\x04 \x01(\x0b\x32\x34.google.cloud.compute.v1.InterconnectAttachmentGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa8\x02\n#InsertInterconnectAttachmentRequest\x12\x61\n interconnect_attachment_resource\x18\xf9\xa4\xa0\x65 \x01(\x0b\x32/.google.cloud.compute.v1.InterconnectAttachmentB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x10\n\x0e_validate_only\"\xc7\x01\n\x1eInsertInterconnectGroupRequest\x12W\n\x1binterconnect_group_resource\x18\x9f\xf3\xe6( \x01(\x0b\x32*.google.cloud.compute.v1.InterconnectGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb8\x01\n\x19InsertInterconnectRequest\x12M\n\x15interconnect_resource\x18\x9f\xa1\xcc\xbd\x01 \x01(\x0b\x32%.google.cloud.compute.v1.InterconnectB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa9\x01\n\x14InsertLicenseRequest\x12\x43\n\x10license_resource\x18\xcc\xd4\xea\xd0\x01 \x01(\x0b\x32 .google.cloud.compute.v1.LicenseB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xee\x01\n\x19InsertMachineImageRequest\x12M\n\x16machine_image_resource\x18\xea\xaa\xfb\x1c \x01(\x0b\x32%.google.cloud.compute.v1.MachineImageB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12 \n\x0fsource_instance\x18\xb9\x98\xfd\xbc\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x12\n\x10_source_instance\"\xe8\x01\n\x1eInsertNetworkAttachmentRequest\x12W\n\x1bnetwork_attachment_resource\x18\x99\xf0\xcc\x64 \x01(\x0b\x32*.google.cloud.compute.v1.NetworkAttachmentB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb7\x02\n\'InsertNetworkEdgeSecurityServiceRequest\x12l\n&network_edge_security_service_resource\x18\xa6\xa3\xdb\xe3\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.NetworkEdgeSecurityServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x10\n\x0e_validate_only\"\xef\x01\n!InsertNetworkEndpointGroupRequest\x12_\n\x1fnetwork_endpoint_group_resource\x18\xa7\xcd\xdb\xfa\x01 \x01(\x0b\x32-.google.cloud.compute.v1.NetworkEndpointGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xc6\x01\n\"InsertNetworkFirewallPolicyRequest\x12R\n\x18\x66irewall_policy_resource\x18\xbc\xb6\x87\xec\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicyB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa8\x01\n\x14InsertNetworkRequest\x12\x42\n\x10network_resource\x18\xff\xdd\x9c: \x01(\x0b\x32 .google.cloud.compute.v1.NetworkB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf1\x01\n\x16InsertNodeGroupRequest\x12\"\n\x12initial_node_count\x18\xed\xc8\xa7\" \x01(\x05\x42\x03\xe0\x41\x02\x12H\n\x13node_group_resource\x18\xab\xb3\xfa\xf0\x01 \x01(\x0b\x32\".google.cloud.compute.v1.NodeGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xd9\x01\n\x19InsertNodeTemplateRequest\x12M\n\x16node_template_resource\x18\xb6\xda\xdd< \x01(\x0b\x32%.google.cloud.compute.v1.NodeTemplateB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xdf\x01\n\'InsertOrganizationSecurityPolicyRequest\x12(\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tB\x0c\xf2G\tparent_idH\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12Q\n\x18security_policy_resource\x18\xfc\xaa\x89g \x01(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicyB\x03\xe0\x41\x02\x42\x0c\n\n_parent_idB\r\n\x0b_request_id\"\xe3\x01\n\x1cInsertPacketMirroringRequest\x12T\n\x19packet_mirroring_resource\x18\xa1\xfc\xa8\xeb\x01 \x01(\x0b\x32(.google.cloud.compute.v1.PacketMirroringB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd8\x01\n$InsertPublicAdvertisedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x62\n!public_advertised_prefix_resource\x18\x8f\xd7\xb2o \x01(\x0b\x32/.google.cloud.compute.v1.PublicAdvertisedPrefixB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf6\x01\n#InsertPublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12`\n public_delegated_prefix_resource\x18\x85\xf8\xd8\x16 \x01(\x0b\x32..google.cloud.compute.v1.PublicDelegatedPrefixB\x03\xe0\x41\x02\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd8\x01\n\x1dInsertRegionAutoscalerRequest\x12H\n\x13\x61utoscaler_resource\x18\xf6\xf0\xff\x62 \x01(\x0b\x32#.google.cloud.compute.v1.AutoscalerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe3\x01\n InsertRegionBackendBucketRequest\x12P\n\x17\x62\x61\x63kend_bucket_resource\x18\x98\xce\xc7\xb5\x01 \x01(\x0b\x32&.google.cloud.compute.v1.BackendBucketB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe6\x01\n!InsertRegionBackendServiceRequest\x12R\n\x18\x62\x61\x63kend_service_resource\x18\xa3\x81\xdf\xa5\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.BackendServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd8\x01\n\x1dInsertRegionCommitmentRequest\x12H\n\x13\x63ommitment_resource\x18\xf8\xa3\xbbt \x01(\x0b\x32#.google.cloud.compute.v1.CommitmentB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf8\x01\n\'InsertRegionCompositeHealthCheckRequest\x12^\n\x1f\x63omposite_health_check_resource\x18\xf0\xcb\x84? \x01(\x0b\x32-.google.cloud.compute.v1.CompositeHealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf5\x01\n\x17InsertRegionDiskRequest\x12<\n\rdisk_resource\x18\xf0\xd0\xab\x0c \x01(\x0b\x32\x1d.google.cloud.compute.v1.DiskB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0csource_image\x18\xb7\xe8\x86\x18 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0f\n\r_source_image\"\x82\x02\n*InsertRegionHealthAggregationPolicyRequest\x12\x65\n\"health_aggregation_policy_resource\x18\xbb\xbb\xfb\x8b\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.HealthAggregationPolicyB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xdc\x01\n\x1eInsertRegionHealthCheckRequest\x12K\n\x15health_check_resource\x18\xa8\xc3\xa4` \x01(\x0b\x32$.google.cloud.compute.v1.HealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf3\x01\n%InsertRegionHealthCheckServiceRequest\x12[\n\x1dhealth_check_service_resource\x18\xf2\x9b\xd0\xe3\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HealthCheckServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe0\x01\n\x1fInsertRegionHealthSourceRequest\x12N\n\x16health_source_resource\x18\xcf\xb7\xca\xaa\x01 \x01(\x0b\x32%.google.cloud.compute.v1.HealthSourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf8\x01\n\'InsertRegionInstanceGroupManagerRequest\x12^\n\x1finstance_group_manager_resource\x18\x8a\x8a\xbe| \x01(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManagerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xca\x02\n4InsertRegionInstanceGroupManagerResizeRequestRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12{\n.instance_group_manager_resize_request_resource\x18\xed\xbe\xb5\xdf\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InstanceGroupManagerResizeRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xeb\x01\n#InsertRegionInstanceTemplateRequest\x12U\n\x1ainstance_template_resource\x18\x89\xea\x8b\x05 \x01(\x0b\x32).google.cloud.compute.v1.InstanceTemplateB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc0\x02\n\'InsertRegionInstantSnapshotGroupRequest\x12^\n\x1finstant_snapshot_group_resource\x18\xcb\x9a\x96\x45 \x01(\x0b\x32-.google.cloud.compute.v1.InstantSnapshotGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12)\n\x18source_consistency_group\x18\xf4\xcc\xaf\xfd\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x1b\n\x19_source_consistency_group\"\xe9\x01\n\"InsertRegionInstantSnapshotRequest\x12T\n\x19instant_snapshot_resource\x18\xcb\xaa\x88\xb7\x01 \x01(\x0b\x32(.google.cloud.compute.v1.InstantSnapshotB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf9\x01\n\'InsertRegionNetworkEndpointGroupRequest\x12_\n\x1fnetwork_endpoint_group_resource\x18\xa7\xcd\xdb\xfa\x01 \x01(\x0b\x32-.google.cloud.compute.v1.NetworkEndpointGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xed\x01\n(InsertRegionNetworkFirewallPolicyRequest\x12R\n\x18\x66irewall_policy_resource\x18\xbc\xb6\x87\xec\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicyB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf8\x01\n\'InsertRegionNotificationEndpointRequest\x12^\n\x1enotification_endpoint_resource\x18\xa4\xfa\xb1\xa1\x01 \x01(\x0b\x32-.google.cloud.compute.v1.NotificationEndpointB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x96\x02\n!InsertRegionSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Q\n\x18security_policy_resource\x18\xfc\xaa\x89g \x01(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicyB\x03\xe0\x41\x02\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x10\n\x0e_validate_only\"\xd3\x01\n\x1bInsertRegionSnapshotRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x45\n\x11snapshot_resource\x18\xa9\xb8\xc1\xe5\x01 \x01(\x0b\x32!.google.cloud.compute.v1.SnapshotB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe5\x01\n!InsertRegionSslCertificateRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Q\n\x18ssl_certificate_resource\x18\x89\xd4\x95V \x01(\x0b\x32\'.google.cloud.compute.v1.SslCertificateB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd7\x01\n\x1cInsertRegionSslPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12H\n\x13ssl_policy_resource\x18\xc8\x88\x8a\x83\x01 \x01(\x0b\x32\".google.cloud.compute.v1.SslPolicyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe9\x01\n\"InsertRegionTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12T\n\x1atarget_http_proxy_resource\x18\xa8\xaf\xe3\x0b \x01(\x0b\x32(.google.cloud.compute.v1.TargetHttpProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xed\x01\n#InsertRegionTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12W\n\x1btarget_https_proxy_resource\x18\x81\xad\xe4\xce\x01 \x01(\x0b\x32).google.cloud.compute.v1.TargetHttpsProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe6\x01\n!InsertRegionTargetTcpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12R\n\x19target_tcp_proxy_resource\x18\xcb\xf0\xc9\x45 \x01(\x0b\x32\'.google.cloud.compute.v1.TargetTcpProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xcd\x01\n\x19InsertRegionUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x41\n\x10url_map_resource\x18\xe1\x90\xb7P \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd2\x01\n\x18InsertReservationRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12K\n\x14reservation_resource\x18\xa1\xee\xf4\x87\x01 \x01(\x0b\x32$.google.cloud.compute.v1.ReservationB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xdf\x01\n\x1bInsertResourcePolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Q\n\x18resource_policy_resource\x18\xca\x8c\xd1$ \x01(\x0b\x32\'.google.cloud.compute.v1.ResourcePolicyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa2\x01\n\x12InsertRouteRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12>\n\x0eroute_resource\x18\xc4\x8a\xbfk \x01(\x0b\x32\x1e.google.cloud.compute.v1.RouteB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xc6\x01\n\x13InsertRouterRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12@\n\x0frouter_resource\x18\xc4\x80\x82J \x01(\x0b\x32\x1f.google.cloud.compute.v1.RouterB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xef\x01\n\x1bInsertSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Q\n\x18security_policy_resource\x18\xfc\xaa\x89g \x01(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicyB\x03\xe0\x41\x02\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x10\n\x0e_validate_only\"\xe9\x01\n\x1eInsertServiceAttachmentRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12X\n\x1bservice_attachment_resource\x18\xa0\xb6\xc4\xe1\x01 \x01(\x0b\x32*.google.cloud.compute.v1.ServiceAttachmentB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xac\x01\n\x15InsertSnapshotRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x45\n\x11snapshot_resource\x18\xa9\xb8\xc1\xe5\x01 \x01(\x0b\x32!.google.cloud.compute.v1.SnapshotB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xbe\x01\n\x1bInsertSslCertificateRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Q\n\x18ssl_certificate_resource\x18\x89\xd4\x95V \x01(\x0b\x32\'.google.cloud.compute.v1.SslCertificateB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb0\x01\n\x16InsertSslPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12H\n\x13ssl_policy_resource\x18\xc8\x88\x8a\x83\x01 \x01(\x0b\x32\".google.cloud.compute.v1.SslPolicyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd2\x01\n\x18InsertStoragePoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12K\n\x15storage_pool_resource\x18\x8d\xbc\xf9J \x01(\x0b\x32$.google.cloud.compute.v1.StoragePoolB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xd2\x01\n\x17InsertSubnetworkRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12H\n\x13subnetwork_resource\x18\xbf\xda\x91\x14 \x01(\x0b\x32#.google.cloud.compute.v1.SubnetworkB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xc3\x01\n\x1cInsertTargetGrpcProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12U\n\x1atarget_grpc_proxy_resource\x18\xd2\xea\xeb\x9c\x01 \x01(\x0b\x32(.google.cloud.compute.v1.TargetGrpcProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xc2\x01\n\x1cInsertTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12T\n\x1atarget_http_proxy_resource\x18\xa8\xaf\xe3\x0b \x01(\x0b\x32(.google.cloud.compute.v1.TargetHttpProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xc6\x01\n\x1dInsertTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12W\n\x1btarget_https_proxy_resource\x18\x81\xad\xe4\xce\x01 \x01(\x0b\x32).google.cloud.compute.v1.TargetHttpsProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xdc\x01\n\x1bInsertTargetInstanceRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12R\n\x18target_instance_resource\x18\xca\xe2\xa0\xcd\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.TargetInstanceB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xd3\x01\n\x17InsertTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12I\n\x14target_pool_resource\x18\xa3\xdd\xa5\x30 \x01(\x0b\x32#.google.cloud.compute.v1.TargetPoolB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xbf\x01\n\x1bInsertTargetSslProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12R\n\x19target_ssl_proxy_resource\x18\xc0\xfd\xdb\x43 \x01(\x0b\x32\'.google.cloud.compute.v1.TargetSslProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xbf\x01\n\x1bInsertTargetTcpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12R\n\x19target_tcp_proxy_resource\x18\xcb\xf0\xc9\x45 \x01(\x0b\x32\'.google.cloud.compute.v1.TargetTcpProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe5\x01\n\x1dInsertTargetVpnGatewayRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12U\n\x1btarget_vpn_gateway_resource\x18\x82\xb3\x1e \x01(\x0b\x32).google.cloud.compute.v1.TargetVpnGatewayB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa6\x01\n\x13InsertUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x41\n\x10url_map_resource\x18\xe1\x90\xb7P \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd3\x01\n\x17InsertVpnGatewayRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12I\n\x14vpn_gateway_resource\x18\x94\xb7\x8eW \x01(\x0b\x32#.google.cloud.compute.v1.VpnGatewayB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd0\x01\n\x16InsertVpnTunnelRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12G\n\x13vpn_tunnel_resource\x18\xba\xa1\xb4) \x01(\x0b\x32\".google.cloud.compute.v1.VpnTunnelB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x84\x02\n\x16InsertWireGroupRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x01\x88\x01\x01\x12G\n\x13wire_group_resource\x18\xc8\xc1\xeb\x37 \x01(\x0b\x32\".google.cloud.compute.v1.WireGroupB\x03\xe0\x41\x02\x42\r\n\x0b_request_idB\x10\n\x0e_validate_only\"\xea\x01\n\"InsertZoneVmExtensionPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Y\n\x1cvm_extension_policy_resource\x18\xf3\xf9\xf1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.VmExtensionPolicyB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf0\x1e\n\x08Instance\x12\\\n\x19\x61\x64vanced_machine_features\x18\xb2\xe7\xaa\xc3\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.AdvancedMachineFeaturesH\x00\x88\x01\x01\x12\x1f\n\x0e\x63\x61n_ip_forward\x18\xfc\x86\x84\xdf\x01 \x01(\x08H\x01\x88\x01\x01\x12\x62\n\x1c\x63onfidential_instance_config\x18\xf5\x92\xfa\xe9\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.ConfidentialInstanceConfigH\x02\x88\x01\x01\x12\x1d\n\x0c\x63pu_platform\x18\xaa\xea\xd1\xc3\x01 \x01(\tH\x03\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x04\x88\x01\x01\x12$\n\x13\x64\x65letion_protection\x18\xea\xff\xb2\xda\x01 \x01(\x08H\x05\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x06\x88\x01\x01\x12\x37\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32%.google.cloud.compute.v1.AttachedDisk\x12\x46\n\x0e\x64isplay_device\x18\xf3\x88\xbc{ \x01(\x0b\x32&.google.cloud.compute.v1.DisplayDeviceH\x07\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x08\x88\x01\x01\x12J\n\x12guest_accelerators\x18\xef\xcc\x87\xdd\x01 \x03(\x0b\x32*.google.cloud.compute.v1.AcceleratorConfig\x12\x18\n\x08hostname\x18\xb3\xb8\x85q \x01(\tH\t\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\n\x88\x01\x01\x12W\n\x17instance_encryption_key\x18\x8d\xc1\xef\x1e \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x0b\x88\x01\x01\x12*\n\x1akey_revocation_action_type\x18\xe2\xdc\xc0p \x01(\tH\x0c\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\r\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x0e\x88\x01\x01\x12\x41\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32-.google.cloud.compute.v1.Instance.LabelsEntry\x12%\n\x14last_start_timestamp\x18\xd0\xa3\xd1\xd3\x01 \x01(\tH\x0f\x88\x01\x01\x12$\n\x13last_stop_timestamp\x18\xe2\xdb\xec\xc4\x01 \x01(\tH\x10\x88\x01\x01\x12)\n\x18last_suspended_timestamp\x18\x89\xa9\xf1\xa9\x01 \x01(\tH\x11\x88\x01\x01\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x12\x88\x01\x01\x12;\n\x08metadata\x18\xaf\xf6\xb5) \x01(\x0b\x32!.google.cloud.compute.v1.MetadataH\x13\x88\x01\x01\x12 \n\x10min_cpu_platform\x18\xf7\x9b\xeas \x01(\tH\x14\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x15\x88\x01\x01\x12H\n\x12network_interfaces\x18\x8b\xda\x92\x19 \x03(\x0b\x32).google.cloud.compute.v1.NetworkInterface\x12^\n\x1anetwork_performance_config\x18\xe2\x97\xf8\xbd\x01 \x01(\x0b\x32\x31.google.cloud.compute.v1.NetworkPerformanceConfigH\x16\x88\x01\x01\x12?\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32\'.google.cloud.compute.v1.InstanceParamsH\x17\x88\x01\x01\x12*\n\x1aprivate_ipv6_google_access\x18\x8e\xcc\x82\x17 \x01(\tH\x18\x88\x01\x01\x12R\n\x14reservation_affinity\x18\xbb\xb8\xa2K \x01(\x0b\x32,.google.cloud.compute.v1.ReservationAffinityH\x19\x88\x01\x01\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\x12H\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32\'.google.cloud.compute.v1.ResourceStatusH\x1a\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\x1b\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x1c\x88\x01\x01\x12@\n\nscheduling\x18\x94\xcb\xb1\xb8\x01 \x01(\x0b\x32#.google.cloud.compute.v1.SchedulingH\x1d\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x1e\x88\x01\x01\x12\x45\n\x10service_accounts\x18\xb0\xc4\xab\x84\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.ServiceAccount\x12Y\n\x18shielded_instance_config\x18\xb5\x8b\x91\x06 \x01(\x0b\x32/.google.cloud.compute.v1.ShieldedInstanceConfigH\x1f\x88\x01\x01\x12l\n\"shielded_instance_integrity_policy\x18\x97\xa2\x87N \x01(\x0b\x32\x38.google.cloud.compute.v1.ShieldedInstanceIntegrityPolicyH \x88\x01\x01\x12$\n\x14source_machine_image\x18\xbf\xdc\xb0\n \x01(\tH!\x88\x01\x01\x12\x63\n#source_machine_image_encryption_key\x18\xa3\xfb\xf9[ \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\"\x88\x01\x01\x12 \n\x10start_restricted\x18\xd8\xd0\xfd: \x01(\x08H#\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH$\x88\x01\x01\x12\x1f\n\x0estatus_message\x18\xba\xc9\xe9\x8d\x01 \x01(\tH%\x88\x01\x01\x12\x33\n\x04tags\x18\x99\xe8\xd8\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.TagsH&\x88\x01\x01\x12Z\n\x18workload_identity_config\x18\x9b\x82\xa2\xa1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.WorkloadIdentityConfigH\'\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH(\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8d\x01\n\x17KeyRevocationActionType\x12(\n$UNDEFINED_KEY_REVOCATION_ACTION_TYPE\x10\x00\x12.\n&KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED\x10\xda\x91\xde\xde\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x0b\n\x04STOP\x10\x82\x80\x9c\x01\"\xc0\x01\n\x17PrivateIpv6GoogleAccess\x12(\n$UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS\x10\x00\x12-\n%ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE\x10\xba\xca\x89\xcc\x01\x12+\n#ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE\x10\xd7\xfa\xb6\x89\x01\x12\x1f\n\x17INHERIT_FROM_SUBNETWORK\x10\xbf\xa8\xec\xfc\x01\"\xec\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x16\n\x0e\x44\x45PROVISIONING\x10\xee\x93\xc4\xcc\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x14\n\x0cPROVISIONING\x10\xed\xf5\xda\x8a\x01\x12\x11\n\tREPAIRING\x10\x95\x82\x95\xc5\x01\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x12\x0f\n\x07STAGING\x10\x9b\xc8\xc6\xcd\x01\x12\x0f\n\x07STOPPED\x10\xad\xbb\xec\xd3\x01\x12\x10\n\x08STOPPING\x10\xf4\xd0\xa2\xa7\x01\x12\x10\n\tSUSPENDED\x10\xbb\xbb\xb6\x18\x12\x12\n\nSUSPENDING\x10\xa6\xd4\x98\xf5\x01\x12\x11\n\nTERMINATED\x10\xa3\xf4\x9bwB\x1c\n\x1a_advanced_machine_featuresB\x11\n\x0f_can_ip_forwardB\x1f\n\x1d_confidential_instance_configB\x0f\n\r_cpu_platformB\x15\n\x13_creation_timestampB\x16\n\x14_deletion_protectionB\x0e\n\x0c_descriptionB\x11\n\x0f_display_deviceB\x0e\n\x0c_fingerprintB\x0b\n\t_hostnameB\x05\n\x03_idB\x1a\n\x18_instance_encryption_keyB\x1d\n\x1b_key_revocation_action_typeB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x17\n\x15_last_start_timestampB\x16\n\x14_last_stop_timestampB\x1b\n\x19_last_suspended_timestampB\x0f\n\r_machine_typeB\x0b\n\t_metadataB\x13\n\x11_min_cpu_platformB\x07\n\x05_nameB\x1d\n\x1b_network_performance_configB\t\n\x07_paramsB\x1d\n\x1b_private_ipv6_google_accessB\x17\n\x15_reservation_affinityB\x12\n\x10_resource_statusB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\r\n\x0b_schedulingB\x0c\n\n_self_linkB\x1b\n\x19_shielded_instance_configB%\n#_shielded_instance_integrity_policyB\x17\n\x15_source_machine_imageB&\n$_source_machine_image_encryption_keyB\x13\n\x11_start_restrictedB\t\n\x07_statusB\x11\n\x0f_status_messageB\x07\n\x05_tagsB\x1b\n\x19_workload_identity_configB\x07\n\x05_zone\"\xb9\x03\n\x16InstanceAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12L\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32:.google.cloud.compute.v1.InstanceAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aZ\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12;\n\x05value\x18\x02 \x01(\x0b\x32,.google.cloud.compute.v1.InstancesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa9\x01\n\x17InstanceConsumptionData\x12R\n\x10\x63onsumption_info\x18\xd2\xe5\xe4\x45 \x01(\x0b\x32\x30.google.cloud.compute.v1.InstanceConsumptionInfoH\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x01\x88\x01\x01\x42\x13\n\x11_consumption_infoB\x0b\n\t_instance\"\xd0\x01\n\x17InstanceConsumptionInfo\x12\x1b\n\nguest_cpus\x18\xd2\xcb\xc8\xbb\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1d\n\x0clocal_ssd_gb\x18\xca\x88\xff\x9c\x01 \x01(\x05H\x01\x88\x01\x01\x12\x19\n\tmemory_mb\x18\x93\x93\xa8\x37 \x01(\x05H\x02\x88\x01\x01\x12\x1e\n\rmin_node_cpus\x18\xbb\xa4\xa2\x97\x01 \x01(\x05H\x03\x88\x01\x01\x42\r\n\x0b_guest_cpusB\x0f\n\r_local_ssd_gbB\x0c\n\n_memory_mbB\x10\n\x0e_min_node_cpus\"\x87\x02\n\x19InstanceFlexibilityPolicy\x12j\n\x13instance_selections\x18\xd1\x84\xf9\n \x03(\x0b\x32J.google.cloud.compute.v1.InstanceFlexibilityPolicy.InstanceSelectionsEntry\x1a~\n\x17InstanceSelectionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12R\n\x05value\x18\x02 \x01(\x0b\x32\x43.google.cloud.compute.v1.InstanceFlexibilityPolicyInstanceSelection:\x02\x38\x01\"\x9e\x01\n*InstanceFlexibilityPolicyInstanceSelection\x12\x37\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32%.google.cloud.compute.v1.AttachedDisk\x12\x18\n\rmachine_types\x18\x81\xdd\x81& \x03(\t\x12\x14\n\x04rank\x18\xac\x98\xd5\x01 \x01(\x03H\x00\x88\x01\x01\x42\x07\n\x05_rank\"\x95\x04\n\rInstanceGroup\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12;\n\x0bnamed_ports\x18\x8c\xc7\xf2\xcb\x01 \x03(\x0b\x32\".google.cloud.compute.v1.NamedPort\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12\x14\n\x04size\x18\x81\xc0\xd7\x01 \x01(\x05H\t\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\n\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0b\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_regionB\x0c\n\n_self_linkB\x07\n\x05_sizeB\r\n\x0b_subnetworkB\x07\n\x05_zone\"\xc8\x03\n\x1bInstanceGroupAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12Q\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32?.google.cloud.compute.v1.InstanceGroupAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a_\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12@\n\x05value\x18\x02 \x01(\x0b\x32\x31.google.cloud.compute.v1.InstanceGroupsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xab\x02\n\x11InstanceGroupList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x38\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32&.google.cloud.compute.v1.InstanceGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xf7\x13\n\x14InstanceGroupManager\x12\x65\n\x14\x61ll_instances_config\x18\x81\xae\xd8\x35 \x01(\x0b\x32?.google.cloud.compute.v1.InstanceGroupManagerAllInstancesConfigH\x00\x88\x01\x01\x12\x61\n\x15\x61uto_healing_policies\x18\x85\xe7\xe8\xd9\x01 \x03(\x0b\x32>.google.cloud.compute.v1.InstanceGroupManagerAutoHealingPolicy\x12#\n\x12\x62\x61se_instance_name\x18\x87\x96\xc5\xb9\x01 \x01(\tH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\\\n\x0f\x63urrent_actions\x18\xb7\xc8\x9cN \x01(\x0b\x32;.google.cloud.compute.v1.InstanceGroupManagerActionsSummaryH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12Q\n\x13\x64istribution_policy\x18\xcd\xee\xf2\xfe\x01 \x01(\x0b\x32+.google.cloud.compute.v1.DistributionPolicyH\x05\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x06\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x07\x88\x01\x01\x12s\n\x1binstance_flexibility_policy\x18\x82\x8e\xec\x0c \x01(\x0b\x32\x46.google.cloud.compute.v1.InstanceGroupManagerInstanceFlexibilityPolicyH\x08\x88\x01\x01\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tH\t\x88\x01\x01\x12p\n\x19instance_lifecycle_policy\x18\x91\xb4\xcd\xd5\x01 \x01(\x0b\x32\x44.google.cloud.compute.v1.InstanceGroupManagerInstanceLifecyclePolicyH\n\x88\x01\x01\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tH\x0b\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x0c\x88\x01\x01\x12/\n\x1elist_managed_instances_results\x18\xb4\xa4\x95\x8d\x01 \x01(\tH\r\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0e\x88\x01\x01\x12;\n\x0bnamed_ports\x18\x8c\xc7\xf2\xcb\x01 \x03(\x0b\x32\".google.cloud.compute.v1.NamedPort\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0f\x88\x01\x01\x12`\n\x11resource_policies\x18\xe1\x9c\xcc\n \x01(\x0b\x32=.google.cloud.compute.v1.InstanceGroupManagerResourcePoliciesH\x10\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\x11\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x12\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x13\x88\x01\x01\x12[\n\x0estandby_policy\x18\x84\x86\x8e\xee\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InstanceGroupManagerStandbyPolicyH\x14\x88\x01\x01\x12H\n\x0fstateful_policy\x18\x85\xc3\xd5\x16 \x01(\x0b\x32\'.google.cloud.compute.v1.StatefulPolicyH\x15\x88\x01\x01\x12K\n\x06status\x18\xf2\x9f\xb7V \x01(\x0b\x32\x33.google.cloud.compute.v1.InstanceGroupManagerStatusH\x16\x88\x01\x01\x12\x18\n\x0ctarget_pools\x18\xa9\x9f\xa0\xa0\x01 \x03(\t\x12\x1b\n\x0btarget_size\x18\xef\xf3\xfd\x1d \x01(\x05H\x17\x88\x01\x01\x12\x61\n\x12target_size_policy\x18\x82\xdb\xb3= \x01(\x0b\x32=.google.cloud.compute.v1.InstanceGroupManagerTargetSizePolicyH\x18\x88\x01\x01\x12#\n\x13target_stopped_size\x18\xa1\xd6\x93\x01 \x01(\x05H\x19\x88\x01\x01\x12&\n\x15target_suspended_size\x18\xd3\x88\xf4\x92\x01 \x01(\x05H\x1a\x88\x01\x01\x12X\n\rupdate_policy\x18\xe8\xca\xeaS \x01(\x0b\x32\x39.google.cloud.compute.v1.InstanceGroupManagerUpdatePolicyH\x1b\x88\x01\x01\x12I\n\x08versions\x18\x9b\xfd\xb9M \x03(\x0b\x32\x34.google.cloud.compute.v1.InstanceGroupManagerVersion\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x1c\x88\x01\x01\"n\n\x1bListManagedInstancesResults\x12,\n(UNDEFINED_LIST_MANAGED_INSTANCES_RESULTS\x10\x00\x12\x0f\n\x08PAGELESS\x10\xa8\xa9\xac\x0f\x12\x10\n\tPAGINATED\x10\xad\x85\x95\x13\x42\x17\n\x15_all_instances_configB\x15\n\x13_base_instance_nameB\x15\n\x13_creation_timestampB\x12\n\x10_current_actionsB\x0e\n\x0c_descriptionB\x16\n\x14_distribution_policyB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x1e\n\x1c_instance_flexibility_policyB\x11\n\x0f_instance_groupB\x1c\n\x1a_instance_lifecycle_policyB\x14\n\x12_instance_templateB\x07\n\x05_kindB!\n\x1f_list_managed_instances_resultsB\x07\n\x05_nameB\t\n\x07_regionB\x14\n\x12_resource_policiesB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\x11\n\x0f_standby_policyB\x12\n\x10_stateful_policyB\t\n\x07_statusB\x0e\n\x0c_target_sizeB\x15\n\x13_target_size_policyB\x16\n\x14_target_stopped_sizeB\x18\n\x16_target_suspended_sizeB\x10\n\x0e_update_policyB\x07\n\x05_zone\"\xd3\x04\n\"InstanceGroupManagerActionsSummary\x12\x1b\n\nabandoning\x18\xcd\xf2\xe8\xd1\x01 \x01(\x05H\x00\x88\x01\x01\x12\x18\n\x08\x63reating\x18\xb9\xdd\x85\x64 \x01(\x05H\x01\x88\x01\x01\x12)\n\x18\x63reating_without_retries\x18\xc9\xf6\xb1\xb0\x01 \x01(\x05H\x02\x88\x01\x01\x12\x19\n\x08\x64\x65leting\x18\xa8\xc7\xef\x86\x01 \x01(\x05H\x03\x88\x01\x01\x12\x14\n\x04none\x18\xb8\xde\xce\x01 \x01(\x05H\x04\x88\x01\x01\x12\x1b\n\nrecreating\x18\xec\xb3\xd6\xa1\x01 \x01(\x05H\x05\x88\x01\x01\x12\x1a\n\nrefreshing\x18\xa7\xa6\xc5\x66 \x01(\x05H\x06\x88\x01\x01\x12\x1b\n\nrestarting\x18\xf3\x96\xc4\xb1\x01 \x01(\x05H\x07\x88\x01\x01\x12\x18\n\x08resuming\x18\xaa\x9b\xf2_ \x01(\x05H\x08\x88\x01\x01\x12\x18\n\x08starting\x18\xc0\xc0\xf3s \x01(\x05H\t\x88\x01\x01\x12\x18\n\x08stopping\x18\xf4\xf0\x8a\x32 \x01(\x05H\n\x88\x01\x01\x12\x1a\n\nsuspending\x18\xa6\xfc\xf0\r \x01(\x05H\x0b\x88\x01\x01\x12\x1a\n\tverifying\x18\xc9\xa1\xac\xd7\x01 \x01(\x05H\x0c\x88\x01\x01\x42\r\n\x0b_abandoningB\x0b\n\t_creatingB\x1b\n\x19_creating_without_retriesB\x0b\n\t_deletingB\x07\n\x05_noneB\r\n\x0b_recreatingB\r\n\x0b_refreshingB\r\n\x0b_restartingB\x0b\n\t_resumingB\x0b\n\t_startingB\x0b\n\t_stoppingB\r\n\x0b_suspendingB\x0c\n\n_verifying\"\xdd\x03\n\"InstanceGroupManagerAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12X\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x46.google.cloud.compute.v1.InstanceGroupManagerAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x66\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12G\n\x05value\x18\x02 \x01(\x0b\x32\x38.google.cloud.compute.v1.InstanceGroupManagersScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x85\x01\n&InstanceGroupManagerAllInstancesConfig\x12L\n\nproperties\x18\xb3\x9a\xb6\x46 \x01(\x0b\x32\x30.google.cloud.compute.v1.InstancePropertiesPatchH\x00\x88\x01\x01\x42\r\n\x0b_properties\"\x90\x01\n%InstanceGroupManagerAutoHealingPolicy\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tH\x00\x88\x01\x01\x12!\n\x11initial_delay_sec\x18\xda\xf0\xc0} \x01(\x05H\x01\x88\x01\x01\x42\x0f\n\r_health_checkB\x14\n\x12_initial_delay_sec\"\xc4\x02\n-InstanceGroupManagerInstanceFlexibilityPolicy\x12~\n\x13instance_selections\x18\xd1\x84\xf9\n \x03(\x0b\x32^.google.cloud.compute.v1.InstanceGroupManagerInstanceFlexibilityPolicy.InstanceSelectionsEntry\x1a\x92\x01\n\x17InstanceSelectionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x66\n\x05value\x18\x02 \x01(\x0b\x32W.google.cloud.compute.v1.InstanceGroupManagerInstanceFlexibilityPolicyInstanceSelection:\x02\x38\x01\"y\n>InstanceGroupManagerInstanceFlexibilityPolicyInstanceSelection\x12\x18\n\rmachine_types\x18\x81\xdd\x81& \x03(\t\x12\x14\n\x04rank\x18\xac\x98\xd5\x01 \x01(\x05H\x00\x88\x01\x01\x42\x07\n\x05_rank\"\x89\x04\n+InstanceGroupManagerInstanceLifecyclePolicy\x12)\n\x19\x64\x65\x66\x61ult_action_on_failure\x18\xd5\xc4\xa2\x1d \x01(\tH\x00\x88\x01\x01\x12\'\n\x16\x66orce_update_on_repair\x18\xcb\xf9\xf2\xa9\x01 \x01(\tH\x01\x88\x01\x01\x12&\n\x16on_failed_health_check\x18\xc7\xd7\xfd\x12 \x01(\tH\x02\x88\x01\x01\"d\n\x16\x44\x65\x66\x61ultActionOnFailure\x12\'\n#UNDEFINED_DEFAULT_ACTION_ON_FAILURE\x10\x00\x12\x12\n\nDO_NOTHING\x10\xf9\xcf\x99\xd7\x01\x12\r\n\x06REPAIR\x10\x8d\xa7\xfc~\"O\n\x13\x46orceUpdateOnRepair\x12$\n UNDEFINED_FORCE_UPDATE_ON_REPAIR\x10\x00\x12\x07\n\x02NO\x10\xc1\x13\x12\t\n\x03YES\x10\xc7\xad\x05\"S\n\x13OnFailedHealthCheck\x12$\n UNDEFINED_ON_FAILED_HEALTH_CHECK\x10\x00\x12\x16\n\x0e\x44\x45\x46\x41ULT_ACTION\x10\x94\xac\x9e\xdd\x01\x42\x1c\n\x1a_default_action_on_failureB\x19\n\x17_force_update_on_repairB\x19\n\x17_on_failed_health_check\"\xb9\x02\n\x18InstanceGroupManagerList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManager\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb0\x06\n!InstanceGroupManagerResizeRequest\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x04\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x05\x88\x01\x01\x12I\n\x16requested_run_duration\x18\xf9\x8b\xd9n \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x06\x88\x01\x01\x12\x1a\n\tresize_by\x18\xc2\xcf\xc0\xfe\x01 \x01(\x05H\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\t\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\n\x88\x01\x01\x12X\n\x06status\x18\xf2\x9f\xb7V \x01(\x0b\x32@.google.cloud.compute.v1.InstanceGroupManagerResizeRequestStatusH\x0b\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0c\x88\x01\x01\"\x8f\x01\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0f\n\x08\x41\x43\x43\x45PTED\x10\xa7\x9f\xd2u\x12\x10\n\tCANCELLED\x10\xb1\xf2\x80\x14\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x19\n\x11STATE_UNSPECIFIED\x10\xc9\xd0\xbc\xe0\x01\x12\x11\n\tSUCCEEDED\x10\xc1\xa4\xdb\xf3\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x19\n\x17_requested_run_durationB\x0c\n\n_resize_byB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x08\n\x06_stateB\t\n\x07_statusB\x07\n\x05_zone\"\xe7\x01\n\'InstanceGroupManagerResizeRequestStatus\x12\x35\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x1e.google.cloud.compute.v1.ErrorH\x00\x88\x01\x01\x12j\n\x0clast_attempt\x18\xa4\xac\xa8\xcf\x01 \x01(\x0b\x32K.google.cloud.compute.v1.InstanceGroupManagerResizeRequestStatusLastAttemptH\x01\x88\x01\x01\x42\x08\n\x06_errorB\x0f\n\r_last_attempt\"u\n2InstanceGroupManagerResizeRequestStatusLastAttempt\x12\x35\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x1e.google.cloud.compute.v1.ErrorH\x00\x88\x01\x01\x42\x08\n\x06_error\"\xdc\x02\n.InstanceGroupManagerResizeRequestsListResponse\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12L\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32:.google.cloud.compute.v1.InstanceGroupManagerResizeRequest\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"[\n$InstanceGroupManagerResourcePolicies\x12\x1f\n\x0fworkload_policy\x18\xfa\x85\xda\x36 \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_workload_policy\"\xbc\x01\n!InstanceGroupManagerStandbyPolicy\x12!\n\x11initial_delay_sec\x18\xda\xf0\xc0} \x01(\x05H\x00\x88\x01\x01\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x01\x88\x01\x01\"?\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\r\n\x06MANUAL\x10\xc6\xb7\xf7\x38\x12\x14\n\x0eSCALE_OUT_POOL\x10\x82\xe4&B\x14\n\x12_initial_delay_secB\x07\n\x05_mode\"\xe9\x06\n\x1aInstanceGroupManagerStatus\x12k\n\x14\x61ll_instances_config\x18\x81\xae\xd8\x35 \x01(\x0b\x32\x45.google.cloud.compute.v1.InstanceGroupManagerStatusAllInstancesConfigH\x00\x88\x01\x01\x12r\n\x1e\x61pplied_accelerator_topologies\x18\xa3\xef\xc5\xe5\x01 \x03(\x0b\x32\x46.google.cloud.compute.v1.InstanceGroupManagerStatusAcceleratorTopology\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tH\x01\x88\x01\x01\x12r\n\x17\x62ulk_instance_operation\x18\x8a\xad\x9b\xef\x01 \x01(\x0b\x32H.google.cloud.compute.v1.InstanceGroupManagerStatusBulkInstanceOperationH\x02\x88\x01\x01\x12t\n\x19\x63urrent_instance_statuses\x18\xc4\xee\xbc\x80\x01 \x01(\x0b\x32H.google.cloud.compute.v1.InstanceGroupManagerStatusInstanceStatusSummaryH\x03\x88\x01\x01\x12\x19\n\tis_stable\x18\xf0\xef\xd8\x33 \x01(\x08H\x04\x88\x01\x01\x12U\n\x08stateful\x18\xcc\xe6\xc8t \x01(\x0b\x32;.google.cloud.compute.v1.InstanceGroupManagerStatusStatefulH\x05\x88\x01\x01\x12\x61\n\x0eversion_target\x18\xd8\xdd\xfe\x89\x01 \x01(\x0b\x32@.google.cloud.compute.v1.InstanceGroupManagerStatusVersionTargetH\x06\x88\x01\x01\x42\x17\n\x15_all_instances_configB\r\n\x0b_autoscalerB\x1a\n\x18_bulk_instance_operationB\x1c\n\x1a_current_instance_statusesB\x0c\n\n_is_stableB\x0b\n\t_statefulB\x11\n\x0f_version_target\"\xb9\x03\n-InstanceGroupManagerStatusAcceleratorTopology\x12%\n\x14\x61\x63\x63\x65lerator_topology\x18\xc3\xb3\xd2\xb9\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x01\x88\x01\x01\x12\x84\x01\n\rstate_details\x18\x94\xf9\xc8- \x01(\x0b\x32\x65.google.cloud.compute.v1.InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetailsH\x02\x88\x01\x01\"\x8d\x01\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x12\n\nACTIVATING\x10\xf0\xd9\xd1\xb4\x01\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x13\n\x0c\x44\x45\x41\x43TIVATING\x10\xb1\x90\xa2\x1b\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x11\n\nINCOMPLETE\x10\xde\xea\xd8\x05\x12\x13\n\x0cREACTIVATING\x10\xe3\xa6\xfexB\x17\n\x15_accelerator_topologyB\x08\n\x06_stateB\x10\n\x0e_state_details\"\xb8\x01\nLInstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails\x12\x35\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x1e.google.cloud.compute.v1.ErrorH\x00\x88\x01\x01\x12\x19\n\ttimestamp\x18\x96\xd2\xa4\x1a \x01(\tH\x01\x88\x01\x01\x42\x08\n\x06_errorB\x0c\n\n_timestamp\"\x8e\x01\n,InstanceGroupManagerStatusAllInstancesConfig\x12 \n\x10\x63urrent_revision\x18\xe1\x87\xa5\x12 \x01(\tH\x00\x88\x01\x01\x12\x19\n\teffective\x18\xa7\xd3\xd8\x43 \x01(\x08H\x01\x88\x01\x01\x42\x13\n\x11_current_revisionB\x0c\n\n_effective\"\xf7\x01\n/InstanceGroupManagerStatusBulkInstanceOperation\x12\x1c\n\x0bin_progress\x18\x87\xc0\xd7\x98\x01 \x01(\x08H\x00\x88\x01\x01\x12~\n\x13last_progress_check\x18\xbf\xa2\xbe\x63 \x01(\x0b\x32Y.google.cloud.compute.v1.InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheckH\x01\x88\x01\x01\x42\x0e\n\x0c_in_progressB\x16\n\x14_last_progress_check\"\xac\x01\n@InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck\x12\x35\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x1e.google.cloud.compute.v1.ErrorH\x00\x88\x01\x01\x12\x19\n\ttimestamp\x18\x96\xd2\xa4\x1a \x01(\tH\x01\x88\x01\x01\x42\x08\n\x06_errorB\x0c\n\n_timestamp\"\xdb\x04\n/InstanceGroupManagerStatusInstanceStatusSummary\x12\x1f\n\x0e\x64\x65provisioning\x18\xee\xcb\xb0\xdc\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1d\n\x0cnon_existent\x18\xc6\x87\xb2\xdf\x01 \x01(\x05H\x01\x88\x01\x01\x12\x18\n\x07pending\x18\x97\x93\xc2\xba\x01 \x01(\x05H\x02\x88\x01\x01\x12\x1c\n\x0cpending_stop\x18\xaa\xbb\xe6M \x01(\x05H\x03\x88\x01\x01\x12\x1c\n\x0cprovisioning\x18\xed\xa5\xdf\x39 \x01(\x05H\x04\x88\x01\x01\x12\x1a\n\trepairing\x18\xb5\xe2\xb4\x94\x01 \x01(\x05H\x05\x88\x01\x01\x12\x18\n\x07running\x18\xbf\xab\xbc\xe3\x01 \x01(\x05H\x06\x88\x01\x01\x12\x17\n\x07staging\x18\xbb\xb0\x98w \x01(\x05H\x07\x88\x01\x01\x12\x17\n\x07stopped\x18\xcd\xa3\xbe} \x01(\x05H\x08\x88\x01\x01\x12\x18\n\x08stopping\x18\xf4\xf0\x8a\x32 \x01(\x05H\t\x88\x01\x01\x12\x1a\n\tsuspended\x18\xdb\x9b\xd6\xe7\x01 \x01(\x05H\n\x88\x01\x01\x12\x1a\n\nsuspending\x18\xa6\xfc\xf0\r \x01(\x05H\x0b\x88\x01\x01\x12\x1b\n\nterminated\x18\xa3\x9c\xf4\x8f\x01 \x01(\x05H\x0c\x88\x01\x01\x42\x11\n\x0f_deprovisioningB\x0f\n\r_non_existentB\n\n\x08_pendingB\x0f\n\r_pending_stopB\x0f\n\r_provisioningB\x0c\n\n_repairingB\n\n\x08_runningB\n\n\x08_stagingB\n\n\x08_stoppedB\x0b\n\t_stoppingB\x0c\n\n_suspendedB\r\n\x0b_suspendingB\r\n\x0b_terminated\"\xf0\x01\n\"InstanceGroupManagerStatusStateful\x12#\n\x13has_stateful_config\x18\xf0\xe7\xd6\x34 \x01(\x08H\x00\x88\x01\x01\x12t\n\x14per_instance_configs\x18\xa9\xd5\xf8\xfa\x01 \x01(\x0b\x32M.google.cloud.compute.v1.InstanceGroupManagerStatusStatefulPerInstanceConfigsH\x01\x88\x01\x01\x42\x16\n\x14_has_stateful_configB\x17\n\x15_per_instance_configs\"h\n4InstanceGroupManagerStatusStatefulPerInstanceConfigs\x12\x1e\n\rall_effective\x18\x89\x91\xa7\xf6\x01 \x01(\x08H\x00\x88\x01\x01\x42\x10\n\x0e_all_effective\"U\n\'InstanceGroupManagerStatusVersionTarget\x12\x1b\n\nis_reached\x18\xbd\xfe\xc8\xce\x01 \x01(\x08H\x00\x88\x01\x01\x42\r\n\x0b_is_reached\"\x9a\x01\n$InstanceGroupManagerTargetSizePolicy\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x00\x88\x01\x01\"S\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\n\n\x04\x42ULK\x10\x92\x92}\x12\x12\n\nINDIVIDUAL\x10\x99\x9d\x9e\xd1\x01\x12\x17\n\x10UNSPECIFIED_MODE\x10\xcb\xc3\xce\x19\x42\x07\n\x05_mode\"\xdc\x06\n InstanceGroupManagerUpdatePolicy\x12-\n\x1cinstance_redistribution_type\x18\x98\xdf\xc4\x8b\x01 \x01(\tH\x00\x88\x01\x01\x12\x43\n\tmax_surge\x18\x93\xc9\xa3\x90\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FixedOrPercentH\x01\x88\x01\x01\x12I\n\x0fmax_unavailable\x18\xf5\xcb\x8b\xc1\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FixedOrPercentH\x02\x88\x01\x01\x12\x1f\n\x0eminimal_action\x18\x94\x8d\x82\x81\x01 \x01(\tH\x03\x88\x01\x01\x12.\n\x1emost_disruptive_allowed_action\x18\x8d\xce\xc2\x1f \x01(\tH\x04\x88\x01\x01\x12#\n\x12replacement_method\x18\xae\xcf\x9f\xf1\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x06\x88\x01\x01\"H\n\x1aInstanceRedistributionType\x12*\n&UNDEFINED_INSTANCE_REDISTRIBUTION_TYPE\x10\x00\"-\n\rMinimalAction\x12\x1c\n\x18UNDEFINED_MINIMAL_ACTION\x10\x00\"K\n\x1bMostDisruptiveAllowedAction\x12,\n(UNDEFINED_MOST_DISRUPTIVE_ALLOWED_ACTION\x10\x00\"[\n\x11ReplacementMethod\x12 \n\x1cUNDEFINED_REPLACEMENT_METHOD\x10\x00\x12\x10\n\x08RECREATE\x10\xef\xd9\x9b\xf9\x01\x12\x12\n\nSUBSTITUTE\x10\x9a\xa1\xfa\x85\x01\"1\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x15\n\rOPPORTUNISTIC\x10\xe9\xb7\xe8\xcc\x01\x42\x1f\n\x1d_instance_redistribution_typeB\x0c\n\n_max_surgeB\x12\n\x10_max_unavailableB\x11\n\x0f_minimal_actionB!\n\x1f_most_disruptive_allowed_actionB\x15\n\x13_replacement_methodB\x07\n\x05_type\"\xcc\x01\n\x1bInstanceGroupManagerVersion\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12\x44\n\x0btarget_size\x18\xef\xf3\xfd\x1d \x01(\x0b\x32\'.google.cloud.compute.v1.FixedOrPercentH\x02\x88\x01\x01\x42\x14\n\x12_instance_templateB\x07\n\x05_nameB\x0e\n\x0c_target_size\"D\n,InstanceGroupManagersAbandonInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"\xf5\x02\n(InstanceGroupManagersApplyUpdatesRequest\x12\x1e\n\rall_instances\x18\xe0\xba\xbe\xc0\x01 \x01(\x08H\x00\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\x12\x1f\n\x0eminimal_action\x18\x94\x8d\x82\x81\x01 \x01(\tH\x01\x88\x01\x01\x12.\n\x1emost_disruptive_allowed_action\x18\x8d\xce\xc2\x1f \x01(\tH\x02\x88\x01\x01\"-\n\rMinimalAction\x12\x1c\n\x18UNDEFINED_MINIMAL_ACTION\x10\x00\"K\n\x1bMostDisruptiveAllowedAction\x12,\n(UNDEFINED_MOST_DISRUPTIVE_ALLOWED_ACTION\x10\x00\x42\x10\n\x0e_all_instancesB\x11\n\x0f_minimal_actionB!\n\x1f_most_disruptive_allowed_action\"o\n+InstanceGroupManagersCreateInstancesRequest\x12@\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\"\x9e\x01\n+InstanceGroupManagersDeleteInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\x12\x32\n\"skip_instances_on_validation_error\x18\xa1\xf6\xaf\x13 \x01(\x08H\x00\x88\x01\x01\x42%\n#_skip_instances_on_validation_error\"D\n0InstanceGroupManagersDeletePerInstanceConfigsReq\x12\x10\n\x05names\x18\xc8\xae\xef\x31 \x03(\t\"\xa4\x01\n\'InstanceGroupManagersListErrorsResponse\x12\x44\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x32.google.cloud.compute.v1.InstanceManagedByIgmError\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_next_page_token\"\xb1\x01\n1InstanceGroupManagersListManagedInstancesResponse\x12G\n\x11managed_instances\x18\xde\x9b\xa9\xa0\x01 \x03(\x0b\x32(.google.cloud.compute.v1.ManagedInstance\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_next_page_token\"\xeb\x01\n/InstanceGroupManagersListPerInstanceConfigsResp\x12<\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x00\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x01\x88\x01\x01\x42\x12\n\x10_next_page_tokenB\n\n\x08_warning\"\x7f\n/InstanceGroupManagersPatchPerInstanceConfigsReq\x12L\n\x14per_instance_configs\x18\xa9\xd5\xf8\xfa\x01 \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\"E\n-InstanceGroupManagersRecreateInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"C\n+InstanceGroupManagersResumeInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"\xbb\x01\n\x1fInstanceGroupManagersScopedList\x12Q\n\x17instance_group_managers\x18\x90\xfa\x89\x66 \x03(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManager\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"k\n/InstanceGroupManagersSetInstanceTemplateRequest\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tH\x00\x88\x01\x01\x42\x14\n\x12_instance_template\"s\n*InstanceGroupManagersSetTargetPoolsRequest\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0ctarget_pools\x18\xa9\x9f\xa0\xa0\x01 \x03(\tB\x0e\n\x0c_fingerprint\"B\n*InstanceGroupManagersStartInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"l\n)InstanceGroupManagersStopInstancesRequest\x12\x1a\n\nforce_stop\x18\xd6\xa1\xa1@ \x01(\x08H\x00\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\tB\r\n\x0b_force_stop\"u\n,InstanceGroupManagersSuspendInstancesRequest\x12\x1d\n\rforce_suspend\x18\xe8\xed\x96\r \x01(\x08H\x00\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\tB\x10\n\x0e_force_suspend\"\x80\x01\n0InstanceGroupManagersUpdatePerInstanceConfigsReq\x12L\n\x14per_instance_configs\x18\xa9\xd5\xf8\xfa\x01 \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\"e\n!InstanceGroupsAddInstancesRequest\x12@\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32*.google.cloud.compute.v1.InstanceReference\"\xbe\x02\n\x1bInstanceGroupsListInstances\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x41\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32/.google.cloud.compute.v1.InstanceWithNamedPorts\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa1\x01\n\"InstanceGroupsListInstancesRequest\x12\x1e\n\x0einstance_state\x18\xe7\xf0\xfc+ \x01(\tH\x00\x88\x01\x01\"H\n\rInstanceState\x12\x1c\n\x18UNDEFINED_INSTANCE_STATE\x10\x00\x12\t\n\x03\x41LL\x10\x81\xfb\x03\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x42\x11\n\x0f_instance_state\"h\n$InstanceGroupsRemoveInstancesRequest\x12@\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32*.google.cloud.compute.v1.InstanceReference\"\xa6\x01\n\x18InstanceGroupsScopedList\x12\x43\n\x0finstance_groups\x18\xbe\xc1\xdf\xae\x01 \x03(\x0b\x32&.google.cloud.compute.v1.InstanceGroup\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x8e\x01\n\"InstanceGroupsSetNamedPortsRequest\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12;\n\x0bnamed_ports\x18\x8c\xc7\xf2\xcb\x01 \x03(\x0b\x32\".google.cloud.compute.v1.NamedPortB\x0e\n\x0c_fingerprint\"\xa1\x02\n\x0cInstanceList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x33\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32!.google.cloud.compute.v1.Instance\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xab\x02\n\x15InstanceListReferrers\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x34\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\".google.cloud.compute.v1.Reference\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbc\x02\n\x19InstanceManagedByIgmError\x12]\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x46.google.cloud.compute.v1.InstanceManagedByIgmErrorManagedInstanceErrorH\x00\x88\x01\x01\x12q\n\x17instance_action_details\x18\xa3\xfc\xab\x8b\x01 \x01(\x0b\x32G.google.cloud.compute.v1.InstanceManagedByIgmErrorInstanceActionDetailsH\x01\x88\x01\x01\x12\x19\n\ttimestamp\x18\x96\xd2\xa4\x1a \x01(\tH\x02\x88\x01\x01\x42\x08\n\x06_errorB\x1a\n\x18_instance_action_detailsB\x0c\n\n_timestamp\"\xf0\x03\n.InstanceManagedByIgmErrorInstanceActionDetails\x12\x16\n\x06\x61\x63tion\x18\xb6\xfc\xbdY \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x01\x88\x01\x01\x12I\n\x07version\x18\xd8\xb9\xd4\xa7\x01 \x01(\x0b\x32/.google.cloud.compute.v1.ManagedInstanceVersionH\x02\x88\x01\x01\"\x9c\x02\n\x06\x41\x63tion\x12\x14\n\x10UNDEFINED_ACTION\x10\x00\x12\x12\n\nABANDONING\x10\xcd\xca\x90\xb9\x01\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12 \n\x18\x43REATING_WITHOUT_RETRIES\x10\x89\xc6\xbe\xcc\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x12\n\nRECREATING\x10\xec\x8b\xfe\x88\x01\x12\x11\n\nREFRESHING\x10\xa7\xfe\xecM\x12\x12\n\nRESTARTING\x10\xf3\xee\xeb\x98\x01\x12\x10\n\x08RESUMING\x10\xaa\xfb\x89\xd5\x01\x12\x10\n\x08STARTING\x10\xc0\xa0\x8b\xe9\x01\x12\x10\n\x08STOPPING\x10\xf4\xd0\xa2\xa7\x01\x12\x12\n\nSUSPENDING\x10\xa6\xd4\x98\xf5\x01\x12\x10\n\tVERIFYING\x10\xa9\xc1\x8c\x08\x42\t\n\x07_actionB\x0b\n\t_instanceB\n\n\x08_version\"t\n-InstanceManagedByIgmErrorManagedInstanceError\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_codeB\n\n\x08_message\"\x82\x01\n\x13InstanceMoveRequest\x12 \n\x10\x64\x65stination_zone\x18\xbd\xe2\xef> \x01(\tH\x00\x88\x01\x01\x12 \n\x0ftarget_instance\x18\x83\x8f\x96\x8a\x01 \x01(\tH\x01\x88\x01\x01\x42\x13\n\x11_destination_zoneB\x12\n\x10_target_instance\"\x9f\x02\n\x0eInstanceParams\x12M\n\x1arequest_valid_for_duration\x18\xdd\x96\xb7\x37 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x00\x88\x01\x01\x12\x63\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32@.google.cloud.compute.v1.InstanceParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x1d\n\x1b_request_valid_for_duration\"\xd1\x11\n\x12InstanceProperties\x12\\\n\x19\x61\x64vanced_machine_features\x18\xb2\xe7\xaa\xc3\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.AdvancedMachineFeaturesH\x00\x88\x01\x01\x12\x1f\n\x0e\x63\x61n_ip_forward\x18\xfc\x86\x84\xdf\x01 \x01(\x08H\x01\x88\x01\x01\x12\x62\n\x1c\x63onfidential_instance_config\x18\xf5\x92\xfa\xe9\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.ConfidentialInstanceConfigH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x37\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32%.google.cloud.compute.v1.AttachedDisk\x12J\n\x12guest_accelerators\x18\xef\xcc\x87\xdd\x01 \x03(\x0b\x32*.google.cloud.compute.v1.AcceleratorConfig\x12*\n\x1akey_revocation_action_type\x18\xe2\xdc\xc0p \x01(\tH\x04\x88\x01\x01\x12K\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x37.google.cloud.compute.v1.InstanceProperties.LabelsEntry\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x05\x88\x01\x01\x12;\n\x08metadata\x18\xaf\xf6\xb5) \x01(\x0b\x32!.google.cloud.compute.v1.MetadataH\x06\x88\x01\x01\x12 \n\x10min_cpu_platform\x18\xf7\x9b\xeas \x01(\tH\x07\x88\x01\x01\x12H\n\x12network_interfaces\x18\x8b\xda\x92\x19 \x03(\x0b\x32).google.cloud.compute.v1.NetworkInterface\x12^\n\x1anetwork_performance_config\x18\xe2\x97\xf8\xbd\x01 \x01(\x0b\x32\x31.google.cloud.compute.v1.NetworkPerformanceConfigH\x08\x88\x01\x01\x12*\n\x1aprivate_ipv6_google_access\x18\x8e\xcc\x82\x17 \x01(\tH\t\x88\x01\x01\x12R\n\x14reservation_affinity\x18\xbb\xb8\xa2K \x01(\x0b\x32,.google.cloud.compute.v1.ReservationAffinityH\n\x88\x01\x01\x12g\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x44.google.cloud.compute.v1.InstanceProperties.ResourceManagerTagsEntry\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\x12@\n\nscheduling\x18\x94\xcb\xb1\xb8\x01 \x01(\x0b\x32#.google.cloud.compute.v1.SchedulingH\x0b\x88\x01\x01\x12\x45\n\x10service_accounts\x18\xb0\xc4\xab\x84\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.ServiceAccount\x12Y\n\x18shielded_instance_config\x18\xb5\x8b\x91\x06 \x01(\x0b\x32/.google.cloud.compute.v1.ShieldedInstanceConfigH\x0c\x88\x01\x01\x12\x33\n\x04tags\x18\x99\xe8\xd8\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.TagsH\r\x88\x01\x01\x12Z\n\x18workload_identity_config\x18\x9b\x82\xa2\xa1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.WorkloadIdentityConfigH\x0e\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8d\x01\n\x17KeyRevocationActionType\x12(\n$UNDEFINED_KEY_REVOCATION_ACTION_TYPE\x10\x00\x12.\n&KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED\x10\xda\x91\xde\xde\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x0b\n\x04STOP\x10\x82\x80\x9c\x01\"\xc0\x01\n\x17PrivateIpv6GoogleAccess\x12(\n$UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS\x10\x00\x12-\n%ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE\x10\xba\xca\x89\xcc\x01\x12+\n#ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE\x10\xd7\xfa\xb6\x89\x01\x12\x1f\n\x17INHERIT_FROM_SUBNETWORK\x10\xbf\xa8\xec\xfc\x01\x42\x1c\n\x1a_advanced_machine_featuresB\x11\n\x0f_can_ip_forwardB\x1f\n\x1d_confidential_instance_configB\x0e\n\x0c_descriptionB\x1d\n\x1b_key_revocation_action_typeB\x0f\n\r_machine_typeB\x0b\n\t_metadataB\x13\n\x11_min_cpu_platformB\x1d\n\x1b_network_performance_configB\x1d\n\x1b_private_ipv6_google_accessB\x17\n\x15_reservation_affinityB\r\n\x0b_schedulingB\x1b\n\x19_shielded_instance_configB\x07\n\x05_tagsB\x1b\n\x19_workload_identity_config\"\xa0\x02\n\x17InstancePropertiesPatch\x12P\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32<.google.cloud.compute.v1.InstancePropertiesPatch.LabelsEntry\x12S\n\x08metadata\x18\xaf\xf6\xb5) \x03(\x0b\x32>.google.cloud.compute.v1.InstancePropertiesPatch.MetadataEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\":\n\x11InstanceReference\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_instance\"\xd7\x01\n\x10InstanceSettings\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12K\n\x08metadata\x18\xaf\xf6\xb5) \x01(\x0b\x32\x31.google.cloud.compute.v1.InstanceSettingsMetadataH\x02\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x03\x88\x01\x01\x42\x0e\n\x0c_fingerprintB\x07\n\x05_kindB\x0b\n\t_metadataB\x07\n\x05_zone\"\xb7\x01\n\x18InstanceSettingsMetadata\x12N\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32<.google.cloud.compute.v1.InstanceSettingsMetadata.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x1a,\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x07\n\x05_kind\"\x9f\x04\n\x10InstanceTemplate\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x04\x88\x01\x01\x12G\n\nproperties\x18\xb3\x9a\xb6\x46 \x01(\x0b\x32+.google.cloud.compute.v1.InstancePropertiesH\x05\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12 \n\x0fsource_instance\x18\xb9\x98\xfd\xbc\x01 \x01(\tH\x08\x88\x01\x01\x12U\n\x16source_instance_params\x18\xcc\xd0\xc4@ \x01(\x0b\x32-.google.cloud.compute.v1.SourceInstanceParamsH\t\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\r\n\x0b_propertiesB\t\n\x07_regionB\x0c\n\n_self_linkB\x12\n\x10_source_instanceB\x19\n\x17_source_instance_params\"\xb8\x03\n\x1eInstanceTemplateAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12T\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x42.google.cloud.compute.v1.InstanceTemplateAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x62\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.google.cloud.compute.v1.InstanceTemplatesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb1\x02\n\x14InstanceTemplateList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12;\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32).google.cloud.compute.v1.InstanceTemplate\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xaf\x01\n\x1bInstanceTemplatesScopedList\x12I\n\x12instance_templates\x18\x8f\xb8\xa5\xdb\x01 \x03(\x0b\x32).google.cloud.compute.v1.InstanceTemplate\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x8e\x03\n\x16InstanceWithNamedPorts\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x00\x88\x01\x01\x12;\n\x0bnamed_ports\x18\x8c\xc7\xf2\xcb\x01 \x03(\x0b\x32\".google.cloud.compute.v1.NamedPort\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x01\x88\x01\x01\"\xec\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x16\n\x0e\x44\x45PROVISIONING\x10\xee\x93\xc4\xcc\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x14\n\x0cPROVISIONING\x10\xed\xf5\xda\x8a\x01\x12\x11\n\tREPAIRING\x10\x95\x82\x95\xc5\x01\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x12\x0f\n\x07STAGING\x10\x9b\xc8\xc6\xcd\x01\x12\x0f\n\x07STOPPED\x10\xad\xbb\xec\xd3\x01\x12\x10\n\x08STOPPING\x10\xf4\xd0\xa2\xa7\x01\x12\x10\n\tSUSPENDED\x10\xbb\xbb\xb6\x18\x12\x12\n\nSUSPENDING\x10\xa6\xd4\x98\xf5\x01\x12\x11\n\nTERMINATED\x10\xa3\xf4\x9bwB\x0b\n\t_instanceB\t\n\x07_status\"C\n#InstancesAddResourcePoliciesRequest\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\"\x8a\x02\n$InstancesBulkInsertOperationMetadata\x12t\n\x13per_location_status\x18\x9a\xe9\x84P \x03(\x0b\x32T.google.cloud.compute.v1.InstancesBulkInsertOperationMetadata.PerLocationStatusEntry\x1al\n\x16PerLocationStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x41\n\x05value\x18\x02 \x01(\x0b\x32\x32.google.cloud.compute.v1.BulkInsertOperationStatus:\x02\x38\x01\"\xd8\x01\n&InstancesGetEffectiveFirewallsResponse\x12t\n\x10\x66irewall_policys\x18\xc2\xca\xfc\xc3\x01 \x03(\x0b\x32V.google.cloud.compute.v1.InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy\x12\x38\n\tfirewalls\x18\xf3\xc6\xe8\x81\x01 \x03(\x0b\x32!.google.cloud.compute.v1.Firewall\"\xac\x04\n=InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy\x12\x1c\n\x0c\x64isplay_name\x18\xe8\x87\x91\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12O\n\x16packet_mirroring_rules\x18\xc4\xff\xc0\xfd\x01 \x03(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRule\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x02\x88\x01\x01\x12=\n\x05rules\x18\xf7\x91\xf5\x33 \x03(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRule\x12\x1b\n\nshort_name\x18\xee\xb8\xd0\xea\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x04\x88\x01\x01\"\x99\x01\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x10\n\tHIERARCHY\x10\x95\xc4\xaa!\x12\x0f\n\x07NETWORK\x10\x8e\xcc\xb3\xc5\x01\x12\x17\n\x10NETWORK_REGIONAL\x10\xb0\xe2\xfdZ\x12\x14\n\rSYSTEM_GLOBAL\x10\xb3\x97\xd4\x1c\x12\x16\n\x0fSYSTEM_REGIONAL\x10\xaf\x8c\x92M\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x0f\n\r_display_nameB\x07\n\x05_nameB\x0b\n\t_priorityB\r\n\x0b_short_nameB\x07\n\x05_type\"F\n&InstancesRemoveResourcePoliciesRequest\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\"\xc8\x02\n\"InstancesReportHostAsFaultyRequest\x12#\n\x13\x64isruption_schedule\x18\x83\xc5\xdb- \x01(\tH\x00\x88\x01\x01\x12`\n\rfault_reasons\x18\x92\xab\x91P \x03(\x0b\x32\x46.google.cloud.compute.v1.InstancesReportHostAsFaultyRequestFaultReason\"\x82\x01\n\x12\x44isruptionSchedule\x12!\n\x1dUNDEFINED_DISRUPTION_SCHEDULE\x10\x00\x12\'\n\x1f\x44ISRUPTION_SCHEDULE_UNSPECIFIED\x10\xdb\xee\xc8\x9e\x01\x12\x0e\n\x06\x46UTURE\x10\xc3\x83\xa2\xe2\x01\x12\x10\n\tIMMEDIATE\x10\x91\x8f\xf3HB\x16\n\x14_disruption_schedule\"\xae\x02\n-InstancesReportHostAsFaultyRequestFaultReason\x12\x19\n\x08\x62\x65havior\x18\xd2\xe4\xba\xd0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\"\xa6\x01\n\x08\x42\x65havior\x12\x16\n\x12UNDEFINED_BEHAVIOR\x10\x00\x12\x1b\n\x14\x42\x45HAVIOR_UNSPECIFIED\x10\xaa\xe9\xf0(\x12\x11\n\nCHIP_ERROR\x10\xb5\xc0\xbd}\x12\x12\n\x0bPERFORMANCE\x10\x90\xc8\xda@\x12\x1d\n\x16SILENT_DATA_CORRUPTION\x10\xa6\xf5\x8c\x35\x12\x1f\n\x17UNRECOVERABLE_GPU_ERROR\x10\x9b\x92\xb7\xad\x01\x42\x0b\n\t_behaviorB\x0e\n\x0c_description\"\x95\x01\n\x13InstancesScopedList\x12\x37\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32!.google.cloud.compute.v1.Instance\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xd7\x01\n\x19InstancesSetLabelsRequest\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x00\x88\x01\x01\x12R\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32>.google.cloud.compute.v1.InstancesSetLabelsRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x14\n\x12_label_fingerprint\"q\n#InstancesSetMachineResourcesRequest\x12J\n\x12guest_accelerators\x18\xef\xcc\x87\xdd\x01 \x03(\x0b\x32*.google.cloud.compute.v1.AcceleratorConfig\"O\n\x1eInstancesSetMachineTypeRequest\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_machine_type\"Z\n!InstancesSetMinCpuPlatformRequest\x12 \n\x10min_cpu_platform\x18\xf7\x9b\xeas \x01(\tH\x00\x88\x01\x01\x42\x13\n\x11_min_cpu_platform\"h\n\x17InstancesSetNameRequest\x12\x1d\n\x0c\x63urrent_name\x18\x91\xf3\xab\xbc\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\x0f\n\r_current_nameB\x07\n\x05_name\"w\n!InstancesSetSecurityPolicyRequest\x12\x1d\n\x12network_interfaces\x18\x8b\xda\x92\x19 \x03(\t\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_security_policy\"W\n!InstancesSetServiceAccountRequest\x12\x15\n\x05\x65mail\x18\x9c\x97\x89. \x01(\tH\x00\x88\x01\x01\x12\x11\n\x06scopes\x18\x9f\x99\x92O \x03(\tB\x08\n\x06_email\"w\n&InstancesStartWithEncryptionKeyRequest\x12M\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32;.google.cloud.compute.v1.CustomerEncryptionKeyProtectedDisk\"\xbd\x0b\n\x0fInstantSnapshot\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x06\x88\x01\x01\x12H\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x34.google.cloud.compute.v1.InstantSnapshot.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x46\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32..google.cloud.compute.v1.InstantSnapshotParamsH\x08\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\t\x88\x01\x01\x12W\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32\x36.google.cloud.compute.v1.InstantSnapshotResourceStatusH\n\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\x0b\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x0c\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\r\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x0e\x88\x01\x01\x12\x1c\n\x0bsource_disk\x18\xc1\xee\xb4\xd7\x01 \x01(\tH\x0f\x88\x01\x01\x12\x1f\n\x0esource_disk_id\x18\xd9\xcd\xc9\xd8\x01 \x01(\tH\x10\x88\x01\x01\x12.\n\x1dsource_instant_snapshot_group\x18\x86\xfe\xe7\xfa\x01 \x01(\tH\x11\x88\x01\x01\x12\x30\n source_instant_snapshot_group_id\x18\xf4\x99\xd7O \x01(\tH\x12\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x13\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x14\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\"u\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x13\n\x0bUNAVAILABLE\x10\xb0\xd8\xa5\xc5\x01\x42\x0f\n\r_architectureB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0f\n\r_disk_size_gbB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\t\n\x07_paramsB\t\n\x07_regionB\x12\n\x10_resource_statusB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x0e\n\x0c_source_diskB\x11\n\x0f_source_disk_idB \n\x1e_source_instant_snapshot_groupB#\n!_source_instant_snapshot_group_idB\t\n\x07_statusB\x07\n\x05_zone\"\xce\x03\n\x1dInstantSnapshotAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12S\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x41.google.cloud.compute.v1.InstantSnapshotAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.InstantSnapshotsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xdd\x05\n\x14InstantSnapshotGroup\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x04\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x05\x88\x01\x01\x12\\\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32;.google.cloud.compute.v1.InstantSnapshotGroupResourceStatusH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x08\x88\x01\x01\x12)\n\x18source_consistency_group\x18\xf4\xcc\xaf\xfd\x01 \x01(\tH\t\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\n\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0b\x88\x01\x01\"\x82\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x12\n\x10_resource_statusB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x1b\n\x19_source_consistency_groupB\t\n\x07_statusB\x07\n\x05_zone\"r\n\x1eInstantSnapshotGroupParameters\x12.\n\x1dsource_instant_snapshot_group\x18\x86\xfe\xe7\xfa\x01 \x01(\tH\x00\x88\x01\x01\x42 \n\x1e_source_instant_snapshot_group\"\xef\x01\n\"InstantSnapshotGroupResourceStatus\x12\x37\n&consistency_membership_resolution_time\x18\x9e\xb5\xa7\xa5\x01 \x01(\tH\x00\x88\x01\x01\x12U\n\x0bsource_info\x18\xd2\x9c\xbe\xd7\x01 \x01(\x0b\x32\x37.google.cloud.compute.v1.InstantSnapshotGroupSourceInfoH\x01\x88\x01\x01\x42)\n\'_consistency_membership_resolution_timeB\x0e\n\x0c_source_info\"\x99\x01\n\x1eInstantSnapshotGroupSourceInfo\x12\"\n\x11\x63onsistency_group\x18\x98\x8b\xa9\xf2\x01 \x01(\tH\x00\x88\x01\x01\x12$\n\x14\x63onsistency_group_id\x18\xa2\xca\xe8( \x01(\tH\x01\x88\x01\x01\x42\x14\n\x12_consistency_groupB\x17\n\x15_consistency_group_id\"\xaf\x02\n\x13InstantSnapshotList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.InstantSnapshot\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbf\x01\n\x15InstantSnapshotParams\x12j\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32G.google.cloud.compute.v1.InstantSnapshotParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"[\n\x1dInstantSnapshotResourceStatus\x12#\n\x12storage_size_bytes\x18\xf1\x8d\xe6\xb8\x01 \x01(\x03H\x00\x88\x01\x01\x42\x15\n\x13_storage_size_bytes\"\xac\x01\n\x1aInstantSnapshotsScopedList\x12G\n\x11instant_snapshots\x18\xd1\xbc\x97\x9d\x01 \x03(\x0b\x32(.google.cloud.compute.v1.InstantSnapshot\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"h\n\x0fInt64RangeMatch\x12\x1a\n\trange_end\x18\xd9\x95\xe0\x99\x01 \x01(\x03H\x00\x88\x01\x01\x12\x1b\n\x0brange_start\x18\xe0\xfd\xa2\x31 \x01(\x03H\x01\x88\x01\x01\x42\x0c\n\n_range_endB\x0e\n\x0c_range_start\"\x9b\x14\n\x0cInterconnect\x12\x1c\n\x0b\x61\x61i_enabled\x18\xcb\xa2\xb1\xb9\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1e\n\radmin_enabled\x18\xd1\xec\xc1\xd4\x01 \x01(\x08H\x01\x88\x01\x01\x12r\n\x1e\x61pplication_aware_interconnect\x18\x9e\xf8\xcd\xcc\x01 \x01(\x0b\x32\x41.google.cloud.compute.v1.InterconnectApplicationAwareInterconnectH\x02\x88\x01\x01\x12\x1e\n\x12\x61vailable_features\x18\xf3\xb9\xd6\xec\x01 \x03(\t\x12J\n\rcircuit_infos\x18\xaf\x83\xcdN \x03(\x0b\x32\x30.google.cloud.compute.v1.InterconnectCircuitInfo\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x03\x88\x01\x01\x12\x1d\n\rcustomer_name\x18\xcc\xdc\xdf\x01 \x01(\tH\x04\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x05\x88\x01\x01\x12T\n\x10\x65xpected_outages\x18\x9b\xea\x8e~ \x03(\x0b\x32\x37.google.cloud.compute.v1.InterconnectOutageNotification\x12\"\n\x11google_ip_address\x18\xa2\x85\xa5\xd3\x01 \x01(\tH\x06\x88\x01\x01\x12$\n\x13google_reference_id\x18\xd5\xb5\x8a\xff\x01 \x01(\tH\x07\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x08\x88\x01\x01\x12$\n\x18interconnect_attachments\x18\xff\xd2\xeb\xca\x01 \x03(\t\x12\x1e\n\x13interconnect_groups\x18\xa5\xad\x84q \x03(\t\x12\"\n\x11interconnect_type\x18\xcb\x98\xd3\xf5\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\n\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x0b\x88\x01\x01\x12\x45\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x31.google.cloud.compute.v1.Interconnect.LabelsEntry\x12\x1a\n\tlink_type\x18\xdf\x88\xbe\xf9\x01 \x01(\tH\x0c\x88\x01\x01\x12\x19\n\x08location\x18\xb5\xbf\xbe\x8a\x01 \x01(\tH\r\x88\x01\x01\x12\x44\n\x06macsec\x18\xa2\xc1\x97\xfc\x01 \x01(\x0b\x32+.google.cloud.compute.v1.InterconnectMacsecH\x0e\x88\x01\x01\x12\x1e\n\x0emacsec_enabled\x18\xa4\xa1\xcd\\ \x01(\x08H\x0f\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x10\x88\x01\x01\x12!\n\x11noc_contact_email\x18\x80\xf8\xda\x06 \x01(\tH\x11\x88\x01\x01\x12\"\n\x12operational_status\x18\xff\xb1\xf0_ \x01(\tH\x12\x88\x01\x01\x12\x43\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32+.google.cloud.compute.v1.InterconnectParamsH\x13\x88\x01\x01\x12\x1f\n\x0fpeer_ip_address\x18\xd9\x97\x87\x63 \x01(\tH\x14\x88\x01\x01\x12\'\n\x16provisioned_link_count\x18\xf5\xd2\xf6\xc3\x01 \x01(\x05H\x15\x88\x01\x01\x12 \n\x0fremote_location\x18\x8e\x8f\xd7\x9a\x01 \x01(\tH\x16\x88\x01\x01\x12\x1e\n\x12requested_features\x18\xee\xf3\xf7\xdb\x01 \x03(\t\x12$\n\x14requested_link_count\x18\xfb\xdb\xbd\x15 \x01(\x05H\x17\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x18\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x19\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x1a\x88\x01\x01\x12\x18\n\x07subzone\x18\xec\x83\xc7\x85\x01 \x01(\tH\x1b\x88\x01\x01\x12\x16\n\x0bwire_groups\x18\xce\xed\xb1\x13 \x03(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"5\n\x11\x41vailableFeatures\x12 \n\x1cUNDEFINED_AVAILABLE_FEATURES\x10\x00\"j\n\x10InterconnectType\x12\x1f\n\x1bUNDEFINED_INTERCONNECT_TYPE\x10\x00\x12\x10\n\tDEDICATED\x10\xcf\x9b\x9c{\x12\x12\n\nIT_PRIVATE\x10\xcf\x8c\x88\xa0\x01\x12\x0f\n\x07PARTNER\x10\xa8\xd1\xa1\xdc\x01\"\x8d\x01\n\x08LinkType\x12\x17\n\x13UNDEFINED_LINK_TYPE\x10\x00\x12\"\n\x1aLINK_TYPE_ETHERNET_100G_LR\x10\xe7\xf2\x81\xa1\x01\x12 \n\x19LINK_TYPE_ETHERNET_10G_LR\x10\xa5\xb9\xf1p\x12\"\n\x1bLINK_TYPE_ETHERNET_400G_LR4\x10\xca\xf4\xc8<\"`\n\x11OperationalStatus\x12 \n\x1cUNDEFINED_OPERATIONAL_STATUS\x10\x00\x12\x10\n\tOS_ACTIVE\x10\xc1\xfb\xc8\x1a\x12\x17\n\x10OS_UNPROVISIONED\x10\xc0\xc1\xaar\"5\n\x11RequestedFeatures\x12 \n\x1cUNDEFINED_REQUESTED_FEATURES\x10\x00\"C\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x15\n\rUNPROVISIONED\x10\xdb\xc7\xd7\xf6\x01\"F\n\x07Subzone\x12\x15\n\x11UNDEFINED_SUBZONE\x10\x00\x12\x11\n\tSUBZONE_A\x10\x8e\xad\x84\x8b\x01\x12\x11\n\tSUBZONE_B\x10\x8f\xad\x84\x8b\x01\x42\x0e\n\x0c_aai_enabledB\x10\n\x0e_admin_enabledB!\n\x1f_application_aware_interconnectB\x15\n\x13_creation_timestampB\x10\n\x0e_customer_nameB\x0e\n\x0c_descriptionB\x14\n\x12_google_ip_addressB\x16\n\x14_google_reference_idB\x05\n\x03_idB\x14\n\x12_interconnect_typeB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x0c\n\n_link_typeB\x0b\n\t_locationB\t\n\x07_macsecB\x11\n\x0f_macsec_enabledB\x07\n\x05_nameB\x14\n\x12_noc_contact_emailB\x15\n\x13_operational_statusB\t\n\x07_paramsB\x12\n\x10_peer_ip_addressB\x19\n\x17_provisioned_link_countB\x12\n\x10_remote_locationB\x17\n\x15_requested_link_countB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\x08\n\x06_stateB\n\n\x08_subzone\"\xa7\x04\n(InterconnectApplicationAwareInterconnect\x12\x87\x01\n\x1b\x62\x61ndwidth_percentage_policy\x18\xe9\xdc\x96Y \x01(\x0b\x32Z.google.cloud.compute.v1.InterconnectApplicationAwareInterconnectBandwidthPercentagePolicyH\x00\x88\x01\x01\x12#\n\x13profile_description\x18\xe6\xec\xa8} \x01(\tH\x01\x88\x01\x01\x12z\n\x19shape_average_percentages\x18\xd9\xb8\xf4{ \x03(\x0b\x32T.google.cloud.compute.v1.InterconnectApplicationAwareInterconnectBandwidthPercentage\x12}\n\x16strict_priority_policy\x18\xb7\x95\x97\x45 \x01(\x0b\x32U.google.cloud.compute.v1.InterconnectApplicationAwareInterconnectStrictPriorityPolicyH\x02\x88\x01\x01\x42\x1e\n\x1c_bandwidth_percentage_policyB\x16\n\x14_profile_descriptionB\x19\n\x17_strict_priority_policy\"\x88\x02\n;InterconnectApplicationAwareInterconnectBandwidthPercentage\x12\x1a\n\npercentage\x18\x9a\xe5\xb7H \x01(\rH\x00\x88\x01\x01\x12\x1d\n\rtraffic_class\x18\xb6\xf9\xbf^ \x01(\tH\x01\x88\x01\x01\"m\n\x0cTrafficClass\x12\x1b\n\x17UNDEFINED_TRAFFIC_CLASS\x10\x00\x12\t\n\x03TC1\x10\xa2\x87\x05\x12\t\n\x03TC2\x10\xa3\x87\x05\x12\t\n\x03TC3\x10\xa4\x87\x05\x12\t\n\x03TC4\x10\xa5\x87\x05\x12\t\n\x03TC5\x10\xa6\x87\x05\x12\t\n\x03TC6\x10\xa7\x87\x05\x42\r\n\x0b_percentageB\x10\n\x0e_traffic_class\"\xbb\x01\nAInterconnectApplicationAwareInterconnectBandwidthPercentagePolicy\x12v\n\x15\x62\x61ndwidth_percentages\x18\x8b\xfd\xa3o \x03(\x0b\x32T.google.cloud.compute.v1.InterconnectApplicationAwareInterconnectBandwidthPercentage\">\n.google.cloud.compute.v1.InterconnectAttachmentPartnerMetadataH\x1f\x88\x01\x01\x12\x65\n\x19private_interconnect_info\x18\x83\xec\x91q \x01(\x0b\x32:.google.cloud.compute.v1.InterconnectAttachmentPrivateInfoH \x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH!\x88\x01\x01\x12\x1f\n\x0eremote_service\x18\xbc\xff\xf2\xba\x01 \x01(\tH\"\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tH#\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H$\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH%\x88\x01\x01\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH&\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\'\x88\x01\x01\x12\x1e\n\rsubnet_length\x18\x88\xc4\xb7\x85\x01 \x01(\x05H(\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH)\x88\x01\x01\x12\x1d\n\rvlan_tag8021q\x18\x9c\xe8\x97\x39 \x01(\x05H*\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8f\x02\n\tBandwidth\x12\x17\n\x13UNDEFINED_BANDWIDTH\x10\x00\x12\x0f\n\x08\x42PS_100G\x10\xb0\x95\xd0\x17\x12\x0f\n\x08\x42PS_100M\x10\xb6\x95\xd0\x17\x12\x0f\n\x07\x42PS_10G\x10\x8e\x89\xf2\x84\x01\x12\x0e\n\x06\x42PS_1G\x10\xf0\xad\xb9\xa9\x01\x12\x0f\n\x08\x42PS_200M\x10\x95\xfe\xd1\x17\x12\x0f\n\x07\x42PS_20G\x10\xcf\x90\xf2\x84\x01\x12\x0e\n\x06\x42PS_2G\x10\x8f\xae\xb9\xa9\x01\x12\x0f\n\x08\x42PS_300M\x10\xf4\xe6\xd3\x17\x12\x0f\n\x08\x42PS_400G\x10\xcd\xcf\xd5\x17\x12\x0f\n\x08\x42PS_400M\x10\xd3\xcf\xd5\x17\x12\x0f\n\x08\x42PS_500M\x10\xb2\xb8\xd7\x17\x12\x0f\n\x07\x42PS_50G\x10\x92\xa7\xf2\x84\x01\x12\x0f\n\x07\x42PS_50M\x10\x98\xa7\xf2\x84\x01\x12\x0e\n\x06\x42PS_5G\x10\xec\xae\xb9\xa9\x01\"\x9f\x01\n\x16\x45\x64geAvailabilityDomain\x12&\n\"UNDEFINED_EDGE_AVAILABILITY_DOMAIN\x10\x00\x12\x1d\n\x15\x41VAILABILITY_DOMAIN_1\x10\xda\xfb\xd6\xa6\x01\x12\x1d\n\x15\x41VAILABILITY_DOMAIN_2\x10\xdb\xfb\xd6\xa6\x01\x12\x1f\n\x17\x41VAILABILITY_DOMAIN_ANY\x10\xb5\xea\xf7\xb2\x01\"A\n\nEncryption\x12\x18\n\x14UNDEFINED_ENCRYPTION\x10\x00\x12\x0c\n\x05IPSEC\x10\xaa\xa3\xa9!\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\"`\n\x11OperationalStatus\x12 \n\x1cUNDEFINED_OPERATIONAL_STATUS\x10\x00\x12\x10\n\tOS_ACTIVE\x10\xc1\xfb\xc8\x1a\x12\x17\n\x10OS_UNPROVISIONED\x10\xc0\xc1\xaar\"I\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\"\xc2\x01\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0e\n\x07\x44\x45\x46UNCT\x10\xaf\xbc\xa1\x37\x12 \n\x18PARTNER_REQUEST_RECEIVED\x10\xe8\xf0\xf2\xf4\x01\x12\x17\n\x10PENDING_CUSTOMER\x10\xa6\x83\xefO\x12\x17\n\x0fPENDING_PARTNER\x10\xe0\xfb\xfa\xb8\x01\x12\x19\n\x11STATE_UNSPECIFIED\x10\xc9\xd0\xbc\xe0\x01\x12\x15\n\rUNPROVISIONED\x10\xdb\xc7\xd7\xf6\x01\"m\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x10\n\tDEDICATED\x10\xcf\x9b\x9c{\x12\x14\n\x0cL2_DEDICATED\x10\xb6\x94\xc0\xa0\x01\x12\x0f\n\x07PARTNER\x10\xa8\xd1\xa1\xdc\x01\x12\x18\n\x10PARTNER_PROVIDER\x10\xa8\xf7\xb7\xe6\x01\x42\x10\n\x0e_admin_enabledB\x13\n\x11_attachment_groupB\x0c\n\n_bandwidthB$\n\"_candidate_cloud_router_ip_addressB&\n$_candidate_cloud_router_ipv6_addressB\'\n%_candidate_customer_router_ip_addressB)\n\'_candidate_customer_router_ipv6_addressB\x1a\n\x18_cloud_router_ip_addressB\x1c\n\x1a_cloud_router_ipv6_addressB!\n\x1f_cloud_router_ipv6_interface_idB\x1c\n\x1a_configuration_constraintsB\x15\n\x13_creation_timestampB\x1d\n\x1b_customer_router_ip_addressB\x1f\n\x1d_customer_router_ipv6_addressB$\n\"_customer_router_ipv6_interface_idB\x14\n\x12_dataplane_versionB\x0e\n\x0c_descriptionB\x1b\n\x19_edge_availability_domainB\r\n\x0b_encryptionB\x16\n\x14_google_reference_idB\x05\n\x03_idB\x0f\n\r_interconnectB\x07\n\x05_kindB\x10\n\x0e_l2_forwardingB\x14\n\x12_label_fingerprintB\x06\n\x04_mtuB\x07\n\x05_nameB\x15\n\x13_operational_statusB\x0e\n\x0c_pairing_keyB\t\n\x07_paramsB\x0e\n\x0c_partner_asnB\x13\n\x11_partner_metadataB\x1c\n\x1a_private_interconnect_infoB\t\n\x07_regionB\x11\n\x0f_remote_serviceB\t\n\x07_routerB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\r\n\x0b_stack_typeB\x08\n\x06_stateB\x10\n\x0e_subnet_lengthB\x07\n\x05_typeB\x10\n\x0e_vlan_tag8021q\"\xe3\x03\n$InterconnectAttachmentAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12Z\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32H.google.cloud.compute.v1.InterconnectAttachmentAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1ah\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12I\n\x05value\x18\x02 \x01(\x0b\x32:.google.cloud.compute.v1.InterconnectAttachmentsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb3\x02\n.InterconnectAttachmentConfigurationConstraints\x12\x18\n\x07\x62gp_md5\x18\x8a\xe8\xf3\xb1\x01 \x01(\tH\x00\x88\x01\x01\x12w\n\x13\x62gp_peer_asn_ranges\x18\x82\xbb\xf9\xe2\x01 \x03(\x0b\x32V.google.cloud.compute.v1.InterconnectAttachmentConfigurationConstraintsBgpPeerASNRange\"b\n\x06\x42gpMd5\x12\x15\n\x11UNDEFINED_BGP_MD5\x10\x00\x12\x14\n\x0cMD5_OPTIONAL\x10\x81\xa2\xe0\xfd\x01\x12\x13\n\x0cMD5_REQUIRED\x10\xc0\xe2\xfbg\x12\x16\n\x0fMD5_UNSUPPORTED\x10\xd4\xe1\xbb)B\n\n\x08_bgp_md5\"w\n=InterconnectAttachmentConfigurationConstraintsBgpPeerASNRange\x12\x12\n\x03max\x18\xe4\xca\x06 \x01(\rH\x00\x88\x01\x01\x12\x12\n\x03min\x18\xd2\xcc\x06 \x01(\rH\x01\x88\x01\x01\x42\x06\n\x04_maxB\x06\n\x04_min\"\x81\x07\n\x1bInterconnectAttachmentGroup\x12^\n\x0b\x61ttachments\x18\xb0\x97\xcf\x9f\x01 \x03(\x0b\x32\x45.google.cloud.compute.v1.InterconnectAttachmentGroup.AttachmentsEntry\x12[\n\nconfigured\x18\xbe\xf4\xfb\x8c\x01 \x01(\x0b\x32>.google.cloud.compute.v1.InterconnectAttachmentGroupConfiguredH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12S\n\x06intent\x18\x9c\xed\xc4\xcb\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InterconnectAttachmentGroupIntentH\x05\x88\x01\x01\x12#\n\x12interconnect_group\x18\x8e\xb7\xa9\xb9\x01 \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x07\x88\x01\x01\x12g\n\x11logical_structure\x18\xbd\x99\xf4\x43 \x01(\x0b\x32\x44.google.cloud.compute.v1.InterconnectAttachmentGroupLogicalStructureH\x08\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\t\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\n\x88\x01\x01\x1ar\n\x10\x41ttachmentsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12M\n\x05value\x18\x02 \x01(\x0b\x32>.google.cloud.compute.v1.InterconnectAttachmentGroupAttachment:\x02\x38\x01\x42\r\n\x0b_configuredB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x07\n\x05_etagB\x05\n\x03_idB\t\n\x07_intentB\x15\n\x13_interconnect_groupB\x07\n\x05_kindB\x14\n\x12_logical_structureB\x07\n\x05_nameB\x0c\n\n_self_link\"R\n%InterconnectAttachmentGroupAttachment\x12\x1a\n\nattachment\x18\xa3\xb2\xddW \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_attachment\"\xae\x01\n%InterconnectAttachmentGroupConfigured\x12p\n\x10\x61vailability_sla\x18\xc4\xb8\xb3\xe1\x01 \x01(\x0b\x32M.google.cloud.compute.v1.InterconnectAttachmentGroupConfiguredAvailabilitySLAH\x00\x88\x01\x01\x42\x13\n\x11_availability_sla\"\x8a\x03\n4InterconnectAttachmentGroupConfiguredAvailabilitySLA\x12\x1d\n\reffective_sla\x18\x90\xd5\xdf\x44 \x01(\tH\x00\x88\x01\x01\x12\x83\x01\n\x15intended_sla_blockers\x18\x84\xad\xe6\xd5\x01 \x03(\x0b\x32`.google.cloud.compute.v1.InterconnectAttachmentGroupConfiguredAvailabilitySLAIntendedSlaBlockers\"\x9a\x01\n\x0c\x45\x66\x66\x65\x63tiveSla\x12\x1b\n\x17UNDEFINED_EFFECTIVE_SLA\x10\x00\x12!\n\x19\x45\x46\x46\x45\x43TIVE_SLA_UNSPECIFIED\x10\xa8\xa7\x90\xea\x01\x12\r\n\x06NO_SLA\x10\x8a\xe3\xfeL\x12\x1b\n\x13PRODUCTION_CRITICAL\x10\xe5\xf8\xa7\xe0\x01\x12\x1e\n\x17PRODUCTION_NON_CRITICAL\x10\xb7\xbd\xfd\x37\x42\x10\n\x0e_effective_sla\"\xab\x04\nGInterconnectAttachmentGroupConfiguredAvailabilitySLAIntendedSlaBlockers\x12\x17\n\x0b\x61ttachments\x18\xb0\x97\xcf\x9f\x01 \x03(\t\x12\x1d\n\x0c\x62locker_type\x18\xdf\xa4\xe2\xb5\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x64ocumentation_link\x18\xdf\xd4\xc8, \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x65xplanation\x18\x99\x9c\xd7\xf0\x01 \x01(\tH\x02\x88\x01\x01\x12\x12\n\x06metros\x18\xfa\xec\x97\xfe\x01 \x03(\t\x12\x12\n\x07regions\x18\xff\xef\xf2\x05 \x03(\t\x12\x10\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\t\"\xf3\x01\n\x0b\x42lockerType\x12\x1a\n\x16UNDEFINED_BLOCKER_TYPE\x10\x00\x12 \n\x18\x42LOCKER_TYPE_UNSPECIFIED\x10\xd7\xc2\xf8\xcc\x01\x12\x1b\n\x13INCOMPATIBLE_METROS\x10\xc0\x9f\xbd\x8a\x01\x12\x1b\n\x14INCOMPATIBLE_REGIONS\x10\xd9\x8e\xfa\x02\x12\x1d\n\x16MISSING_GLOBAL_ROUTING\x10\xa3\xc8\x8eO\x12\x16\n\x0eNO_ATTACHMENTS\x10\x92\xdc\xd8\xd9\x01\x12\'\n NO_ATTACHMENTS_IN_METRO_AND_ZONE\x10\xa7\xc6\xd2\x18\x12\x0c\n\x05OTHER\x10\xf0\x8d\x82$B\x0f\n\r_blocker_typeB\x15\n\x13_documentation_linkB\x0e\n\x0c_explanation\"\x80\x02\n!InterconnectAttachmentGroupIntent\x12!\n\x10\x61vailability_sla\x18\xc4\xb8\xb3\xe1\x01 \x01(\tH\x00\x88\x01\x01\"\xa2\x01\n\x0f\x41vailabilitySla\x12\x1e\n\x1aUNDEFINED_AVAILABILITY_SLA\x10\x00\x12#\n\x1c\x41VAILABILITY_SLA_UNSPECIFIED\x10\xfc\xde\xaa\x05\x12\r\n\x06NO_SLA\x10\x8a\xe3\xfeL\x12\x1b\n\x13PRODUCTION_CRITICAL\x10\xe5\xf8\xa7\xe0\x01\x12\x1e\n\x17PRODUCTION_NON_CRITICAL\x10\xb7\xbd\xfd\x37\x42\x13\n\x11_availability_sla\"\x8d\x01\n+InterconnectAttachmentGroupLogicalStructure\x12^\n\x07regions\x18\xff\xef\xf2\x05 \x03(\x0b\x32J.google.cloud.compute.v1.InterconnectAttachmentGroupLogicalStructureRegion\"\xbb\x01\n1InterconnectAttachmentGroupLogicalStructureRegion\x12\x63\n\x06metros\x18\xfa\xec\x97\xfe\x01 \x03(\x0b\x32O.google.cloud.compute.v1.InterconnectAttachmentGroupLogicalStructureRegionMetro\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_region\"\xca\x01\n6InterconnectAttachmentGroupLogicalStructureRegionMetro\x12o\n\nfacilities\x18\x81\xc5\xf4\xff\x01 \x03(\x0b\x32W.google.cloud.compute.v1.InterconnectAttachmentGroupLogicalStructureRegionMetroFacility\x12\x15\n\x05metro\x18\x99\xda\xbe\x31 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_metro\"\xd7\x01\n>InterconnectAttachmentGroupLogicalStructureRegionMetroFacility\x12\x19\n\x08\x66\x61\x63ility\x18\xa3\xdd\xf9\xee\x01 \x01(\tH\x00\x88\x01\x01\x12m\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\x0b\x32[.google.cloud.compute.v1.InterconnectAttachmentGroupLogicalStructureRegionMetroFacilityZoneB\x0b\n\t_facility\"|\nBInterconnectAttachmentGroupLogicalStructureRegionMetroFacilityZone\x12\x17\n\x0b\x61ttachments\x18\xb0\x97\xcf\x9f\x01 \x03(\t\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_zone\"\xc4\x01\n8InterconnectAttachmentGroupsGetOperationalStatusResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12^\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32\x46.google.cloud.compute.v1.InterconnectAttachmentGroupsOperationalStatusH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_result\"\x88\x03\n(InterconnectAttachmentGroupsListResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x46\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x34.google.cloud.compute.v1.InterconnectAttachmentGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x88\x05\n-InterconnectAttachmentGroupsOperationalStatus\x12w\n\x13\x61ttachment_statuses\x18\xbc\xaf\x98\xea\x01 \x03(\x0b\x32V.google.cloud.compute.v1.InterconnectAttachmentGroupsOperationalStatusAttachmentStatus\x12[\n\nconfigured\x18\xbe\xf4\xfb\x8c\x01 \x01(\x0b\x32>.google.cloud.compute.v1.InterconnectAttachmentGroupConfiguredH\x00\x88\x01\x01\x12\x1d\n\x0cgroup_status\x18\xb2\xb3\xc5\xa1\x01 \x01(\tH\x01\x88\x01\x01\x12S\n\x06intent\x18\x9c\xed\xc4\xcb\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InterconnectAttachmentGroupIntentH\x02\x88\x01\x01\x12[\n\x0boperational\x18\xd2\xc7\xec= \x01(\x0b\x32>.google.cloud.compute.v1.InterconnectAttachmentGroupConfiguredH\x03\x88\x01\x01\"u\n\x0bGroupStatus\x12\x1a\n\x16UNDEFINED_GROUP_STATUS\x10\x00\x12\x10\n\x08\x44\x45GRADED\x10\xae\xa6\xa0\xbd\x01\x12\x11\n\nFULLY_DOWN\x10\x97\xb0\xeby\x12\x10\n\x08\x46ULLY_UP\x10\xd0\xbe\xb4\xf0\x01\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\r\n\x0b_configuredB\x0f\n\r_group_statusB\t\n\x07_intentB\x0e\n\x0c_operational\"\x94\x06\n=InterconnectAttachmentGroupsOperationalStatusAttachmentStatus\x12\x1e\n\radmin_enabled\x18\xd1\xec\xc1\xd4\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\nattachment\x18\xa3\xb2\xddW \x01(\tH\x01\x88\x01\x01\x12\x19\n\tis_active\x18\xbb\xd7\xe0\x36 \x01(\tH\x02\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x03\x88\x01\x01\"Z\n\x08IsActive\x12\x17\n\x13UNDEFINED_IS_ACTIVE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08INACTIVE\x10\xeb\x98\xf9\x80\x01\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\"\xcd\x03\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12!\n\x19\x41TTACHMENT_STATUS_UNKNOWN\x10\xf9\xde\xa5\xe1\x01\x12\x1b\n\x13\x43ONNECTION_DISABLED\x10\xbd\x95\xa9\xce\x01\x12\x16\n\x0f\x43ONNECTION_DOWN\x10\xe3\x8a\xca\x7f\x12\x15\n\rCONNECTION_UP\x10\x9c\xdf\x9e\xd9\x01\x12\x0e\n\x07\x44\x45\x46UNCT\x10\xaf\xbc\xa1\x37\x12)\n!IPSEC_CONFIGURATION_NEEDED_STATUS\x10\xfe\xb5\x87\xd9\x01\x12)\n!IPSEC_READY_TO_RESUME_FLOW_STATUS\x10\x84\x99\xc0\xb7\x01\x12\x19\n\x11IPV4_DOWN_IPV6_UP\x10\xb0\xda\xa8\x84\x01\x12\x19\n\x11IPV4_UP_IPV6_DOWN\x10\xb0\x9e\xda\x96\x01\x12 \n\x18PARTNER_REQUEST_RECEIVED\x10\xe8\xf0\xf2\xf4\x01\x12\x17\n\x10PENDING_CUSTOMER\x10\xa6\x83\xefO\x12\x17\n\x0fPENDING_PARTNER\x10\xe0\xfb\xfa\xb8\x01\x12\x13\n\x0bPROVISIONED\x10\x94\xb0\xd1\xa9\x01\x12\"\n\x1bROUTER_CONFIGURATION_BROKEN\x10\x94\x8d\xe2G\x12\x15\n\rUNPROVISIONED\x10\xdb\xc7\xd7\xf6\x01\x42\x10\n\x0e_admin_enabledB\r\n\x0b_attachmentB\x0c\n\n_is_activeB\t\n\x07_status\"\xdb\x04\n\"InterconnectAttachmentL2Forwarding\x12r\n\x12\x61ppliance_mappings\x18\xb7\xbf\xcb\xb2\x01 \x03(\x0b\x32R.google.cloud.compute.v1.InterconnectAttachmentL2Forwarding.ApplianceMappingsEntry\x12-\n\x1c\x64\x65\x66\x61ult_appliance_ip_address\x18\xec\xe3\xe8\xff\x01 \x01(\tH\x00\x88\x01\x01\x12\x66\n\rgeneve_header\x18\xa8\x95\xcc\x38 \x01(\x0b\x32G.google.cloud.compute.v1.InterconnectAttachmentL2ForwardingGeneveHeaderH\x01\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x02\x88\x01\x01\x12+\n\x1atunnel_endpoint_ip_address\x18\xef\xd6\xc1\xdf\x01 \x01(\tH\x03\x88\x01\x01\x1a\x85\x01\n\x16\x41pplianceMappingsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12Z\n\x05value\x18\x02 \x01(\x0b\x32K.google.cloud.compute.v1.InterconnectAttachmentL2ForwardingApplianceMapping:\x02\x38\x01\x42\x1f\n\x1d_default_appliance_ip_addressB\x10\n\x0e_geneve_headerB\n\n\x08_networkB\x1d\n\x1b_tunnel_endpoint_ip_address\"\xa8\x02\n2InterconnectAttachmentL2ForwardingApplianceMapping\x12$\n\x14\x61ppliance_ip_address\x18\xae\x95\xd3\x1b \x01(\tH\x00\x88\x01\x01\x12\x93\x01\n inner_vlan_to_appliance_mappings\x18\xa8\x8b\xb8. \x03(\x0b\x32\x66.google.cloud.compute.v1.InterconnectAttachmentL2ForwardingApplianceMappingInnerVlanToApplianceMapping\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\x17\n\x15_appliance_ip_addressB\x07\n\x05_name\"\xb8\x01\nMInterconnectAttachmentL2ForwardingApplianceMappingInnerVlanToApplianceMapping\x12+\n\x1ainner_appliance_ip_address\x18\xf7\x91\x98\xa7\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0finner_vlan_tags\x18\xcc\xc5\xcd\xcd\x01 \x03(\tB\x1d\n\x1b_inner_appliance_ip_address\"L\n.InterconnectAttachmentL2ForwardingGeneveHeader\x12\x12\n\x03vni\x18\xb1\x91\x07 \x01(\rH\x00\x88\x01\x01\x42\x06\n\x04_vni\"\xbd\x02\n\x1aInterconnectAttachmentList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x41\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32/.google.cloud.compute.v1.InterconnectAttachment\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xcd\x01\n\x1cInterconnectAttachmentParams\x12q\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32N.google.cloud.compute.v1.InterconnectAttachmentParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xbc\x01\n%InterconnectAttachmentPartnerMetadata\x12\"\n\x11interconnect_name\x18\x9c\xef\xc6\xf5\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0cpartner_name\x18\xa2\xa7\x90M \x01(\tH\x01\x88\x01\x01\x12\x1b\n\nportal_url\x18\x9c\xce\xad\x80\x01 \x01(\tH\x02\x88\x01\x01\x42\x14\n\x12_interconnect_nameB\x0f\n\r_partner_nameB\r\n\x0b_portal_url\"K\n!InterconnectAttachmentPrivateInfo\x12\x19\n\x08tag8021q\x18\xc0\xd1\xce\x81\x01 \x01(\rH\x00\x88\x01\x01\x42\x0b\n\t_tag8021q\"\xc1\x01\n!InterconnectAttachmentsScopedList\x12U\n\x18interconnect_attachments\x18\xff\xd2\xeb\xca\x01 \x03(\x0b\x32/.google.cloud.compute.v1.InterconnectAttachment\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xc5\x01\n\x17InterconnectCircuitInfo\x12\"\n\x12\x63ustomer_demarc_id\x18\x93\x8c\xdc\r \x01(\tH\x00\x88\x01\x01\x12!\n\x11google_circuit_id\x18\xf7\x8d\xf8| \x01(\tH\x01\x88\x01\x01\x12!\n\x10google_demarc_id\x18\xae\xdd\xdb\xd5\x01 \x01(\tH\x02\x88\x01\x01\x42\x15\n\x13_customer_demarc_idB\x14\n\x12_google_circuit_idB\x13\n\x11_google_demarc_id\"\x95\x05\n\x17InterconnectDiagnostics\x12P\n\narp_caches\x18\x91\xd6\xd8\xc5\x01 \x03(\x0b\x32\x38.google.cloud.compute.v1.InterconnectDiagnosticsARPEntry\x12(\n\x17\x62undle_aggregation_type\x18\x94\xc9\xb2\xcf\x01 \x01(\tH\x00\x88\x01\x01\x12)\n\x19\x62undle_operational_status\x18\xdc\x97\xe0\x32 \x01(\tH\x01\x88\x01\x01\x12L\n\x05links\x18\xb9\x9f\x8d\x31 \x03(\x0b\x32:.google.cloud.compute.v1.InterconnectDiagnosticsLinkStatus\x12\x1c\n\x0bmac_address\x18\x84\xd2\xc8\x9e\x01 \x01(\tH\x02\x88\x01\x01\"\x8a\x01\n\x15\x42undleAggregationType\x12%\n!UNDEFINED_BUNDLE_AGGREGATION_TYPE\x10\x00\x12#\n\x1c\x42UNDLE_AGGREGATION_TYPE_LACP\x10\xcd\xa2\x9e\r\x12%\n\x1e\x42UNDLE_AGGREGATION_TYPE_STATIC\x10\xd9\x98\x95\x18\"\x8f\x01\n\x17\x42undleOperationalStatus\x12\'\n#UNDEFINED_BUNDLE_OPERATIONAL_STATUS\x10\x00\x12&\n\x1e\x42UNDLE_OPERATIONAL_STATUS_DOWN\x10\x85\xae\xb4\xd8\x01\x12#\n\x1c\x42UNDLE_OPERATIONAL_STATUS_UP\x10\xbe\x83\xf9LB\x1a\n\x18_bundle_aggregation_typeB\x1c\n\x1a_bundle_operational_statusB\x0e\n\x0c_mac_address\"{\n\x1fInterconnectDiagnosticsARPEntry\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bmac_address\x18\x84\xd2\xc8\x9e\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_ip_addressB\x0e\n\x0c_mac_address\"\xfa\x01\n%InterconnectDiagnosticsLinkLACPStatus\x12 \n\x10google_system_id\x18\xa5\x85\xbf+ \x01(\tH\x00\x88\x01\x01\x12#\n\x12neighbor_system_id\x18\x9e\x98\xf9\xa3\x01 \x01(\tH\x01\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x02\x88\x01\x01\"=\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0f\n\x08\x44\x45TACHED\x10\xf2\xf6\xa1gB\x13\n\x11_google_system_idB\x15\n\x13_neighbor_system_idB\x08\n\x06_state\"\xe3\x01\n\'InterconnectDiagnosticsLinkOpticalPower\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05value\x18\xf1\xa2\xb2\x35 \x01(\x02H\x01\x88\x01\x01\"v\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x12\n\nHIGH_ALARM\x10\xd4\xf2\xcd\x91\x01\x12\x13\n\x0cHIGH_WARNING\x10\xdf\xeb\xafi\x12\x11\n\tLOW_ALARM\x10\xe6\xaa\xff\x96\x01\x12\x13\n\x0bLOW_WARNING\x10\xf1\xaa\xc6\xa1\x01\x12\x07\n\x02OK\x10\xdc\x13\x42\x08\n\x06_stateB\x08\n\x06_value\"\xf1\x06\n!InterconnectDiagnosticsLinkStatus\x12P\n\narp_caches\x18\x91\xd6\xd8\xc5\x01 \x03(\x0b\x32\x38.google.cloud.compute.v1.InterconnectDiagnosticsARPEntry\x12\x1a\n\ncircuit_id\x18\xb1\xfa\xafk \x01(\tH\x00\x88\x01\x01\x12\x1c\n\rgoogle_demarc\x18\x8c\x8f\x03 \x01(\tH\x01\x88\x01\x01\x12\\\n\x0blacp_status\x18\xaf\xc4\x9e\xac\x01 \x01(\x0b\x32>.google.cloud.compute.v1.InterconnectDiagnosticsLinkLACPStatusH\x02\x88\x01\x01\x12U\n\x06macsec\x18\xa2\xc1\x97\xfc\x01 \x01(\x0b\x32<.google.cloud.compute.v1.InterconnectDiagnosticsMacsecStatusH\x03\x88\x01\x01\x12\"\n\x12operational_status\x18\xff\xb1\xf0_ \x01(\tH\x04\x88\x01\x01\x12i\n\x17receiving_optical_power\x18\xdf\xad\xd8t \x01(\x0b\x32@.google.cloud.compute.v1.InterconnectDiagnosticsLinkOpticalPowerH\x05\x88\x01\x01\x12m\n\x1atransmitting_optical_power\x18\x9d\xba\x89\xdb\x01 \x01(\x0b\x32@.google.cloud.compute.v1.InterconnectDiagnosticsLinkOpticalPowerH\x06\x88\x01\x01\"\x7f\n\x11OperationalStatus\x12 \n\x1cUNDEFINED_OPERATIONAL_STATUS\x10\x00\x12$\n\x1cLINK_OPERATIONAL_STATUS_DOWN\x10\xfd\xe4\xa6\x86\x01\x12\"\n\x1aLINK_OPERATIONAL_STATUS_UP\x10\xb6\xb6\xed\x91\x01\x42\r\n\x0b_circuit_idB\x10\n\x0e_google_demarcB\x0e\n\x0c_lacp_statusB\t\n\x07_macsecB\x15\n\x13_operational_statusB\x1a\n\x18_receiving_optical_powerB\x1d\n\x1b_transmitting_optical_power\"n\n#InterconnectDiagnosticsMacsecStatus\x12\x12\n\x03\x63kn\x18\x86\x82\x06 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0boperational\x18\xd2\xc7\xec= \x01(\x08H\x01\x88\x01\x01\x42\x06\n\x04_cknB\x0e\n\x0c_operational\"\x94\x06\n\x11InterconnectGroup\x12Q\n\nconfigured\x18\xbe\xf4\xfb\x8c\x01 \x01(\x0b\x32\x34.google.cloud.compute.v1.InterconnectGroupConfiguredH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12I\n\x06intent\x18\x9c\xed\xc4\xcb\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.InterconnectGroupIntentH\x05\x88\x01\x01\x12X\n\rinterconnects\x18\xa5\xdb\x85\xf8\x01 \x03(\x0b\x32=.google.cloud.compute.v1.InterconnectGroup.InterconnectsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12_\n\x12physical_structure\x18\x8b\xd0\x90] \x01(\x0b\x32;.google.cloud.compute.v1.InterconnectGroupPhysicalStructureH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x1al\n\x12InterconnectsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x45\n\x05value\x18\x02 \x01(\x0b\x32\x36.google.cloud.compute.v1.InterconnectGroupInterconnect:\x02\x38\x01\x42\r\n\x0b_configuredB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x07\n\x05_etagB\x05\n\x03_idB\t\n\x07_intentB\x07\n\x05_kindB\x07\n\x05_nameB\x15\n\x13_physical_structureB\x0c\n\n_self_link\"\xa2\x01\n\x1bInterconnectGroupConfigured\x12k\n\x13topology_capability\x18\xe8\xd9\xe0\x44 \x01(\x0b\x32\x46.google.cloud.compute.v1.InterconnectGroupConfiguredTopologyCapabilityH\x00\x88\x01\x01\x42\x16\n\x14_topology_capability\"\xfc\x02\n-InterconnectGroupConfiguredTopologyCapability\x12\x8a\x01\n\x1cintended_capability_blockers\x18\xec\xfd\xc0\xfd\x01 \x03(\x0b\x32`.google.cloud.compute.v1.InterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockers\x12\x1d\n\rsupported_sla\x18\x97\xf4\xa2\x1c \x01(\tH\x00\x88\x01\x01\"\x8c\x01\n\x0cSupportedSla\x12\x1b\n\x17UNDEFINED_SUPPORTED_SLA\x10\x00\x12\r\n\x06NO_SLA\x10\x8a\xe3\xfeL\x12\x1b\n\x13PRODUCTION_CRITICAL\x10\xe5\xf8\xa7\xe0\x01\x12\x1e\n\x17PRODUCTION_NON_CRITICAL\x10\xb7\xbd\xfd\x37\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x10\n\x0e_supported_sla\"\x83\x04\nGInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockers\x12\x1d\n\x0c\x62locker_type\x18\xdf\xa4\xe2\xb5\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x64ocumentation_link\x18\xdf\xd4\xc8, \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x65xplanation\x18\x99\x9c\xd7\xf0\x01 \x01(\tH\x02\x88\x01\x01\x12\x16\n\nfacilities\x18\x81\xc5\xf4\xff\x01 \x03(\t\x12\x19\n\rinterconnects\x18\xa5\xdb\x85\xf8\x01 \x03(\t\x12\x12\n\x06metros\x18\xfa\xec\x97\xfe\x01 \x03(\t\x12\x10\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\t\"\xc5\x01\n\x0b\x42lockerType\x12\x1a\n\x16UNDEFINED_BLOCKER_TYPE\x10\x00\x12\x1b\n\x13INCOMPATIBLE_METROS\x10\xc0\x9f\xbd\x8a\x01\x12\x14\n\rNOT_AVAILABLE\x10\x9d\x80\x8d\x43\x12\x18\n\x10NO_INTERCONNECTS\x10\x87\xf7\xd2\xf9\x01\x12*\n\"NO_INTERCONNECTS_IN_METRO_AND_ZONE\x10\xdc\xba\xa2\xd2\x01\x12\x0c\n\x05OTHER\x10\xf0\x8d\x82$\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x0f\n\r_blocker_typeB\x15\n\x13_documentation_linkB\x0e\n\x0c_explanation\"\xf1\x01\n\x17InterconnectGroupIntent\x12#\n\x13topology_capability\x18\xe8\xd9\xe0\x44 \x01(\tH\x00\x88\x01\x01\"\x98\x01\n\x12TopologyCapability\x12!\n\x1dUNDEFINED_TOPOLOGY_CAPABILITY\x10\x00\x12\r\n\x06NO_SLA\x10\x8a\xe3\xfeL\x12\x1b\n\x13PRODUCTION_CRITICAL\x10\xe5\xf8\xa7\xe0\x01\x12\x1e\n\x17PRODUCTION_NON_CRITICAL\x10\xb7\xbd\xfd\x37\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x16\n\x14_topology_capability\"N\n\x1dInterconnectGroupInterconnect\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_interconnect\"{\n\"InterconnectGroupPhysicalStructure\x12U\n\x06metros\x18\xfa\xec\x97\xfe\x01 \x03(\x0b\x32\x41.google.cloud.compute.v1.InterconnectGroupPhysicalStructureMetros\"\xb0\x01\n(InterconnectGroupPhysicalStructureMetros\x12\x63\n\nfacilities\x18\x81\xc5\xf4\xff\x01 \x03(\x0b\x32K.google.cloud.compute.v1.InterconnectGroupPhysicalStructureMetrosFacilities\x12\x15\n\x05metro\x18\x99\xda\xbe\x31 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_metro\"\xc0\x01\n2InterconnectGroupPhysicalStructureMetrosFacilities\x12\x19\n\x08\x66\x61\x63ility\x18\xa3\xdd\xf9\xee\x01 \x01(\tH\x00\x88\x01\x01\x12\x62\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\x0b\x32P.google.cloud.compute.v1.InterconnectGroupPhysicalStructureMetrosFacilitiesZonesB\x0b\n\t_facility\"s\n7InterconnectGroupPhysicalStructureMetrosFacilitiesZones\x12\x19\n\rinterconnects\x18\xa5\xdb\x85\xf8\x01 \x03(\t\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_zone\"\xd0\x03\n\x1fInterconnectGroupsCreateMembers\x12(\n\x18intent_mismatch_behavior\x18\xc0\xd5\xb2N \x01(\tH\x00\x88\x01\x01\x12\x64\n\rinterconnects\x18\xa5\xdb\x85\xf8\x01 \x03(\x0b\x32I.google.cloud.compute.v1.InterconnectGroupsCreateMembersInterconnectInput\x12p\n\x15template_interconnect\x18\xb3\xb0\x95k \x01(\x0b\x32I.google.cloud.compute.v1.InterconnectGroupsCreateMembersInterconnectInputH\x01\x88\x01\x01\"t\n\x16IntentMismatchBehavior\x12&\n\"UNDEFINED_INTENT_MISMATCH_BEHAVIOR\x10\x00\x12\x0e\n\x06\x43REATE\x10\xfc\xa9\xe2\xb7\x01\x12\r\n\x06REJECT\x10\x9f\xcf\xf1~\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x1b\n\x19_intent_mismatch_behaviorB\x18\n\x16_template_interconnect\"\xbb\x07\n0InterconnectGroupsCreateMembersInterconnectInput\x12\x1e\n\radmin_enabled\x18\xd1\xec\xc1\xd4\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1d\n\rcustomer_name\x18\xcc\xdc\xdf\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x19\n\x08\x66\x61\x63ility\x18\xa3\xdd\xf9\xee\x01 \x01(\tH\x03\x88\x01\x01\x12\"\n\x11interconnect_type\x18\xcb\x98\xd3\xf5\x01 \x01(\tH\x04\x88\x01\x01\x12\x1a\n\tlink_type\x18\xdf\x88\xbe\xf9\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12!\n\x11noc_contact_email\x18\x80\xf8\xda\x06 \x01(\tH\x07\x88\x01\x01\x12 \n\x0fremote_location\x18\x8e\x8f\xd7\x9a\x01 \x01(\tH\x08\x88\x01\x01\x12\x1e\n\x12requested_features\x18\xee\xf3\xf7\xdb\x01 \x03(\t\x12$\n\x14requested_link_count\x18\xfb\xdb\xbd\x15 \x01(\x05H\t\x88\x01\x01\"j\n\x10InterconnectType\x12\x1f\n\x1bUNDEFINED_INTERCONNECT_TYPE\x10\x00\x12\x10\n\tDEDICATED\x10\xcf\x9b\x9c{\x12\x12\n\nIT_PRIVATE\x10\xcf\x8c\x88\xa0\x01\x12\x0f\n\x07PARTNER\x10\xa8\xd1\xa1\xdc\x01\"\x8d\x01\n\x08LinkType\x12\x17\n\x13UNDEFINED_LINK_TYPE\x10\x00\x12\"\n\x1aLINK_TYPE_ETHERNET_100G_LR\x10\xe7\xf2\x81\xa1\x01\x12 \n\x19LINK_TYPE_ETHERNET_10G_LR\x10\xa5\xb9\xf1p\x12\"\n\x1bLINK_TYPE_ETHERNET_400G_LR4\x10\xca\xf4\xc8<\"\x80\x01\n\x11RequestedFeatures\x12 \n\x1cUNDEFINED_REQUESTED_FEATURES\x10\x00\x12\x1d\n\x15IF_CROSS_SITE_NETWORK\x10\xb7\xa2\xd8\xdf\x01\x12\x17\n\x10IF_L2_FORWARDING\x10\xd4\xe7\xef;\x12\x11\n\tIF_MACSEC\x10\x84\xfc\xfa\xbc\x01\x42\x10\n\x0e_admin_enabledB\x10\n\x0e_customer_nameB\x0e\n\x0c_descriptionB\x0b\n\t_facilityB\x14\n\x12_interconnect_typeB\x0c\n\n_link_typeB\x07\n\x05_nameB\x14\n\x12_noc_contact_emailB\x12\n\x10_remote_locationB\x17\n\x15_requested_link_count\"\x87\x01\n&InterconnectGroupsCreateMembersRequest\x12Q\n\x07request\x18\x8f\xe5\xbb\n \x01(\x0b\x32\x38.google.cloud.compute.v1.InterconnectGroupsCreateMembersH\x00\x88\x01\x01\x42\n\n\x08_request\"\xb0\x01\n.InterconnectGroupsGetOperationalStatusResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12T\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32<.google.cloud.compute.v1.InterconnectGroupsOperationalStatusH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_result\"\xf4\x02\n\x1eInterconnectGroupsListResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12<\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32*.google.cloud.compute.v1.InterconnectGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xe8\x04\n#InterconnectGroupsOperationalStatus\x12Q\n\nconfigured\x18\xbe\xf4\xfb\x8c\x01 \x01(\x0b\x32\x34.google.cloud.compute.v1.InterconnectGroupConfiguredH\x00\x88\x01\x01\x12\x1d\n\x0cgroup_status\x18\xb2\xb3\xc5\xa1\x01 \x01(\tH\x01\x88\x01\x01\x12I\n\x06intent\x18\x9c\xed\xc4\xcb\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.InterconnectGroupIntentH\x02\x88\x01\x01\x12q\n\x15interconnect_statuses\x18\xb1\xe9\x83\xd5\x01 \x03(\x0b\x32N.google.cloud.compute.v1.InterconnectGroupsOperationalStatusInterconnectStatus\x12Q\n\x0boperational\x18\xd2\xc7\xec= \x01(\x0b\x32\x34.google.cloud.compute.v1.InterconnectGroupConfiguredH\x03\x88\x01\x01\"\x82\x01\n\x0bGroupStatus\x12\x1a\n\x16UNDEFINED_GROUP_STATUS\x10\x00\x12\x10\n\x08\x44\x45GRADED\x10\xae\xa6\xa0\xbd\x01\x12\x11\n\nFULLY_DOWN\x10\x97\xb0\xeby\x12\x10\n\x08\x46ULLY_UP\x10\xd0\xbe\xb4\xf0\x01\x12 \n\x19GROUPS_STATUS_UNSPECIFIED\x10\x95\x8d\xf3|B\r\n\x0b_configuredB\x0f\n\r_group_statusB\t\n\x07_intentB\x0e\n\x0c_operational\"\x87\x03\n5InterconnectGroupsOperationalStatusInterconnectStatus\x12\x1e\n\radmin_enabled\x18\xd1\xec\xc1\xd4\x01 \x01(\x08H\x00\x88\x01\x01\x12N\n\x0b\x64iagnostics\x18\xac\xb3\xfa\x9e\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.InterconnectDiagnosticsH\x01\x88\x01\x01\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tH\x02\x88\x01\x01\x12\x19\n\tis_active\x18\xbb\xd7\xe0\x36 \x01(\tH\x03\x88\x01\x01\"d\n\x08IsActive\x12\x17\n\x13UNDEFINED_IS_ACTIVE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08INACTIVE\x10\xeb\x98\xf9\x80\x01\x12\x1d\n\x15IS_ACTIVE_UNSPECIFIED\x10\x93\xc1\x8d\x83\x01\x42\x10\n\x0e_admin_enabledB\x0e\n\x0c_diagnosticsB\x0f\n\r_interconnectB\x0c\n\n_is_active\"\xa9\x02\n\x10InterconnectList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x37\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32%.google.cloud.compute.v1.Interconnect\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xe3\x0c\n\x14InterconnectLocation\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tH\x00\x88\x01\x01\x12!\n\x11\x61vailability_zone\x18\x90\xd0\xc7K \x01(\tH\x01\x88\x01\x01\x12\x1e\n\x12\x61vailable_features\x18\xf3\xb9\xd6\xec\x01 \x03(\t\x12 \n\x14\x61vailable_link_types\x18\xaa\xd6\xf9\xf2\x01 \x03(\t\x12\x14\n\x04\x63ity\x18\xeb\xb2\xba\x01 \x01(\tH\x02\x88\x01\x01\x12\x19\n\tcontinent\x18\xb4\xdb\xd0? \x01(\tH\x03\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x04\x88\x01\x01\x12p\n\x1d\x63ross_site_interconnect_infos\x18\x8d\xdf\xc3v \x03(\x0b\x32\x46.google.cloud.compute.v1.InterconnectLocationCrossSiteInterconnectInfo\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x05\x88\x01\x01\x12\"\n\x11\x66\x61\x63ility_provider\x18\x8d\xa0\xa6\xfe\x01 \x01(\tH\x06\x88\x01\x01\x12-\n\x1d\x66\x61\x63ility_provider_facility_id\x18\x85\xbe\xce) \x01(\tH\x07\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x08\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\n\x88\x01\x01\x12&\n\x15peeringdb_facility_id\x18\xb6\xba\xed\xff\x01 \x01(\tH\x0b\x88\x01\x01\x12Q\n\x0cregion_infos\x18\xfa\xe8\xee\x94\x01 \x03(\x0b\x32\x37.google.cloud.compute.v1.InterconnectLocationRegionInfo\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\x12<\n0single_region_production_critical_peer_locations\x18\xcf\x9b\xcb\xd1\x01 \x03(\t\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\r\x88\x01\x01\x12\x1c\n\x0csupports_pzs\x18\xee\xf6\x85( \x01(\x08H\x0e\x88\x01\x01\"\x80\x01\n\x11\x41vailableFeatures\x12 \n\x1cUNDEFINED_AVAILABLE_FEATURES\x10\x00\x12\x1d\n\x15IF_CROSS_SITE_NETWORK\x10\xb7\xa2\xd8\xdf\x01\x12\x17\n\x10IF_L2_FORWARDING\x10\xd4\xe7\xef;\x12\x11\n\tIF_MACSEC\x10\x84\xfc\xfa\xbc\x01\"\xa2\x01\n\x12\x41vailableLinkTypes\x12\"\n\x1eUNDEFINED_AVAILABLE_LINK_TYPES\x10\x00\x12\"\n\x1aLINK_TYPE_ETHERNET_100G_LR\x10\xe7\xf2\x81\xa1\x01\x12 \n\x19LINK_TYPE_ETHERNET_10G_LR\x10\xa5\xb9\xf1p\x12\"\n\x1bLINK_TYPE_ETHERNET_400G_LR4\x10\xca\xf4\xc8<\"\xea\x01\n\tContinent\x12\x17\n\x13UNDEFINED_CONTINENT\x10\x00\x12\x0e\n\x06\x41\x46RICA\x10\xfa\x9c\xaf\x97\x01\x12\x0f\n\x08\x41SIA_PAC\x10\xfd\xf6\x8e\x39\x12\x0f\n\x08\x43_AFRICA\x10\xf6\x93\xaa\"\x12\x12\n\nC_ASIA_PAC\x10\xf9\x8f\x86\xde\x01\x12\x0f\n\x08\x43_EUROPE\x10\x9e\xca\xc5_\x12\x17\n\x0f\x43_NORTH_AMERICA\x10\x98\x9b\xbb\x83\x01\x12\x17\n\x0f\x43_SOUTH_AMERICA\x10\xe0\x8c\xb0\xbd\x01\x12\x0e\n\x06\x45UROPE\x10\xa2\xd3\xca\xd4\x01\x12\x15\n\rNORTH_AMERICA\x10\x94\xd9\xd0\xd5\x01\x12\x14\n\rSOUTH_AMERICA\x10\xdc\xca\xc5\x0f\"A\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x11\n\tAVAILABLE\x10\xa9\xb5\xe6\xd2\x01\x12\x0e\n\x06\x43LOSED\x10\xec\xaa\xa3\xb5\x01\x42\n\n\x08_addressB\x14\n\x12_availability_zoneB\x07\n\x05_cityB\x0c\n\n_continentB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x14\n\x12_facility_providerB \n\x1e_facility_provider_facility_idB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x18\n\x16_peeringdb_facility_idB\x0c\n\n_self_linkB\t\n\x07_statusB\x0f\n\r_supports_pzs\"N\n-InterconnectLocationCrossSiteInterconnectInfo\x12\x14\n\x04\x63ity\x18\xeb\xb2\xba\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_city\"\xb9\x02\n\x18InterconnectLocationList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.InterconnectLocation\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xfb\x02\n\x1eInterconnectLocationRegionInfo\x12 \n\x0f\x65xpected_rtt_ms\x18\xfa\x83\xbe\xc9\x01 \x01(\x03H\x00\x88\x01\x01\x12%\n\x15l2_forwarding_enabled\x18\x98\xdf\x8bs \x01(\x08H\x01\x88\x01\x01\x12!\n\x11location_presence\x18\xc5\x94\xb4\x30 \x01(\tH\x02\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x03\x88\x01\x01\"\x85\x01\n\x10LocationPresence\x12\x1f\n\x1bUNDEFINED_LOCATION_PRESENCE\x10\x00\x12\x0e\n\x06GLOBAL\x10\xa3\xef\xef\xeb\x01\x12\x14\n\x0cLOCAL_REGION\x10\xe8\xec\xb5\xc0\x01\x12\x11\n\tLP_GLOBAL\x10\xbe\xdd\xeb\xcc\x01\x12\x17\n\x0fLP_LOCAL_REGION\x10\xc3\xda\xfd\xe8\x01\x42\x12\n\x10_expected_rtt_msB\x18\n\x16_l2_forwarding_enabledB\x14\n\x12_location_presenceB\t\n\x07_region\"\x94\x01\n\x12InterconnectMacsec\x12\x1a\n\tfail_open\x18\xcb\x95\xfb\xfd\x01 \x01(\x08H\x00\x88\x01\x01\x12T\n\x0fpre_shared_keys\x18\xf2\xcb\xb5\xc8\x01 \x03(\x0b\x32\x37.google.cloud.compute.v1.InterconnectMacsecPreSharedKeyB\x0c\n\n_fail_open\"v\n\x18InterconnectMacsecConfig\x12Z\n\x0fpre_shared_keys\x18\xf2\xcb\xb5\xc8\x01 \x03(\x0b\x32=.google.cloud.compute.v1.InterconnectMacsecConfigPreSharedKey\"\xa8\x01\n$InterconnectMacsecConfigPreSharedKey\x12\x12\n\x03\x63\x61k\x18\xcd\xff\x05 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03\x63kn\x18\x86\x82\x06 \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x03\x88\x01\x01\x42\x06\n\x04_cakB\x06\n\x04_cknB\x07\n\x05_nameB\r\n\x0b_start_time\"j\n\x1eInterconnectMacsecPreSharedKey\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\r\n\x0b_start_time\"\x85\x05\n\x1eInterconnectOutageNotification\x12\x1c\n\x11\x61\x66\x66\x65\x63ted_circuits\x18\x95\xfe\xdeT \x03(\t\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08\x65nd_time\x18\xb1\xa7\xe7\x36 \x01(\x03H\x01\x88\x01\x01\x12\x1b\n\nissue_type\x18\xe0\xfd\xa0\xb0\x01 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x03\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\x04\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\x03H\x05\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x06\x88\x01\x01\"w\n\tIssueType\x12\x18\n\x14UNDEFINED_ISSUE_TYPE\x10\x00\x12\x10\n\tIT_OUTAGE\x10\x85\xe1\xe8S\x12\x18\n\x11IT_PARTIAL_OUTAGE\x10\xa3\xca\xf5+\x12\r\n\x06OUTAGE\x10\xf1\xa5\x8f]\x12\x15\n\x0ePARTIAL_OUTAGE\x10\x8f\xb7\x8f\x46\"C\n\x06Source\x12\x14\n\x10UNDEFINED_SOURCE\x10\x00\x12\x0e\n\x06GOOGLE\x10\xb9\xa4\x99\xed\x01\x12\x13\n\x0bNSRC_GOOGLE\x10\xe2\xff\xba\xf3\x01\"x\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\tCANCELLED\x10\xb1\xf2\x80\x14\x12\x11\n\tCOMPLETED\x10\xab\x8c\xe4\x93\x01\x12\x10\n\tNS_ACTIVE\x10\xc0\x9d\xb7x\x12\x13\n\x0bNS_CANCELED\x10\xd3\x93\xc7\xf1\x01\x42\x0e\n\x0c_descriptionB\x0b\n\t_end_timeB\r\n\x0b_issue_typeB\x07\n\x05_nameB\t\n\x07_sourceB\r\n\x0b_start_timeB\x08\n\x06_state\"\xb9\x01\n\x12InterconnectParams\x12g\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x44.google.cloud.compute.v1.InterconnectParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8a\x0c\n\x1aInterconnectRemoteLocation\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tH\x00\x88\x01\x01\x12~\n$attachment_configuration_constraints\x18\xd1\xe8\xeb\x9b\x01 \x01(\x0b\x32G.google.cloud.compute.v1.InterconnectAttachmentConfigurationConstraintsH\x01\x88\x01\x01\x12\x14\n\x04\x63ity\x18\xeb\xb2\xba\x01 \x01(\tH\x02\x88\x01\x01\x12[\n\x0b\x63onstraints\x18\xb6\xcc\xee\x01 \x01(\x0b\x32>.google.cloud.compute.v1.InterconnectRemoteLocationConstraintsH\x03\x88\x01\x01\x12\x19\n\tcontinent\x18\xb4\xdb\xd0? \x01(\tH\x04\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x05\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x06\x88\x01\x01\x12\"\n\x11\x66\x61\x63ility_provider\x18\x8d\xa0\xa6\xfe\x01 \x01(\tH\x07\x88\x01\x01\x12-\n\x1d\x66\x61\x63ility_provider_facility_id\x18\x85\xbe\xce) \x01(\tH\x08\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\t\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\n\x88\x01\x01\x12\x14\n\x04lacp\x18\xa2\xa1\xca\x01 \x01(\tH\x0b\x88\x01\x01\x12$\n\x14max_lag_size100_gbps\x18\xb5\xff\xf6t \x01(\x05H\x0c\x88\x01\x01\x12$\n\x13max_lag_size10_gbps\x18\x95\xe6\x98\x8c\x01 \x01(\x05H\r\x88\x01\x01\x12$\n\x14max_lag_size400_gbps\x18\xd2\x8c\x85\x32 \x01(\x05H\x0e\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0f\x88\x01\x01\x12&\n\x15peeringdb_facility_id\x18\xb6\xba\xed\xff\x01 \x01(\tH\x10\x88\x01\x01\x12j\n\x15permitted_connections\x18\xae\xb3\xe5\xd2\x01 \x03(\x0b\x32G.google.cloud.compute.v1.InterconnectRemoteLocationPermittedConnections\x12\x1f\n\x0eremote_service\x18\xbc\xff\xf2\xba\x01 \x01(\tH\x11\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x12\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x13\x88\x01\x01\"\x82\x01\n\tContinent\x12\x17\n\x13UNDEFINED_CONTINENT\x10\x00\x12\x0e\n\x06\x41\x46RICA\x10\xfa\x9c\xaf\x97\x01\x12\x0f\n\x08\x41SIA_PAC\x10\xfd\xf6\x8e\x39\x12\x0e\n\x06\x45UROPE\x10\xa2\xd3\xca\xd4\x01\x12\x15\n\rNORTH_AMERICA\x10\x94\xd9\xd0\xd5\x01\x12\x14\n\rSOUTH_AMERICA\x10\xdc\xca\xc5\x0f\"K\n\x04Lacp\x12\x12\n\x0eUNDEFINED_LACP\x10\x00\x12\x16\n\x0eLACP_SUPPORTED\x10\xb1\x8a\xf6\xa1\x01\x12\x17\n\x10LACP_UNSUPPORTED\x10\xf8\xf3\x9e\x61\"A\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x11\n\tAVAILABLE\x10\xa9\xb5\xe6\xd2\x01\x12\x0e\n\x06\x43LOSED\x10\xec\xaa\xa3\xb5\x01\x42\n\n\x08_addressB\'\n%_attachment_configuration_constraintsB\x07\n\x05_cityB\x0e\n\x0c_constraintsB\x0c\n\n_continentB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x14\n\x12_facility_providerB \n\x1e_facility_provider_facility_idB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_lacpB\x17\n\x15_max_lag_size100_gbpsB\x16\n\x14_max_lag_size10_gbpsB\x17\n\x15_max_lag_size400_gbpsB\x07\n\x05_nameB\x18\n\x16_peeringdb_facility_idB\x11\n\x0f_remote_serviceB\x0c\n\n_self_linkB\t\n\x07_status\"\xc5\x04\n%InterconnectRemoteLocationConstraints\x12*\n\x19port_pair_remote_location\x18\xa7\xb2\xbc\xec\x01 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0eport_pair_vlan\x18\xea\xf2\x83\xe4\x01 \x01(\tH\x01\x88\x01\x01\x12t\n\x13subnet_length_range\x18\xc6\xb0\xfbW \x01(\x0b\x32O.google.cloud.compute.v1.InterconnectRemoteLocationConstraintsSubnetLengthRangeH\x02\x88\x01\x01\"\x9c\x01\n\x16PortPairRemoteLocation\x12\'\n#UNDEFINED_PORT_PAIR_REMOTE_LOCATION\x10\x00\x12)\n\"PORT_PAIR_MATCHING_REMOTE_LOCATION\x10\xd3\x8b\xec\x62\x12.\n\'PORT_PAIR_UNCONSTRAINED_REMOTE_LOCATION\x10\xa5\xaa\xf3\x1c\"q\n\x0cPortPairVlan\x12\x1c\n\x18UNDEFINED_PORT_PAIR_VLAN\x10\x00\x12\x1e\n\x17PORT_PAIR_MATCHING_VLAN\x10\xbe\xe8\xacw\x12#\n\x1cPORT_PAIR_UNCONSTRAINED_VLAN\x10\xac\x88\xc7SB\x1c\n\x1a_port_pair_remote_locationB\x11\n\x0f_port_pair_vlanB\x16\n\x14_subnet_length_range\"p\n6InterconnectRemoteLocationConstraintsSubnetLengthRange\x12\x12\n\x03max\x18\xe4\xca\x06 \x01(\x05H\x00\x88\x01\x01\x12\x12\n\x03min\x18\xd2\xcc\x06 \x01(\x05H\x01\x88\x01\x01\x42\x06\n\x04_maxB\x06\n\x04_min\"\xc5\x02\n\x1eInterconnectRemoteLocationList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x45\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x33.google.cloud.compute.v1.InterconnectRemoteLocation\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"r\n.InterconnectRemoteLocationPermittedConnections\x12&\n\x15interconnect_location\x18\xc6\xd8\xdb\xea\x01 \x01(\tH\x00\x88\x01\x01\x42\x18\n\x16_interconnect_location\"z\n#InterconnectsGetDiagnosticsResponse\x12H\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32\x30.google.cloud.compute.v1.InterconnectDiagnosticsH\x00\x88\x01\x01\x42\t\n\x07_result\"\x9b\x01\n$InterconnectsGetMacsecConfigResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12I\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32\x31.google.cloud.compute.v1.InterconnectMacsecConfigH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_result\"\xe9\x01\n\x1cInvalidateCacheUrlMapRequest\x12\x61\n cache_invalidation_rule_resource\x18\xad\xc3\x93\x95\x01 \x01(\x0b\x32..google.cloud.compute.v1.CacheInvalidationRuleB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"D\n\x05Items\x12\x12\n\x03key\x18\xdf\xbc\x06 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05value\x18\xf1\xa2\xb2\x35 \x01(\tH\x01\x88\x01\x01\x42\x06\n\x04_keyB\x08\n\x06_value\"\x9f\t\n\x07License\x12\'\n\x1c\x61llowed_replacement_licenses\x18\x96\x9c\xa7] \x03(\t\x12\"\n\x12\x61ppendable_to_disk\x18\x96\x8e\x8b\x08 \x01(\x08H\x00\x88\x01\x01\x12 \n\x0f\x63harges_use_fee\x18\xce\xa1\xca\xb1\x01 \x01(\x08H\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12!\n\x15incompatible_licenses\x18\x98\xb0\xb0\x9f\x01 \x03(\t\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\x0clicense_code\x18\xab\xc6Y \x01(\x04H\x06\x88\x01\x01\x12\x44\n\x11minimum_retention\x18\xad\xe0\x8cJ \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x07\x88\x01\x01\x12\"\n\x11multi_tenant_only\x18\x9b\xe0\xeb\x82\x01 \x01(\x08H\x08\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\t\x88\x01\x01\x12\x1b\n\nos_license\x18\xe6\xa9\xd8\xe8\x01 \x01(\x08H\n\x88\x01\x01\x12>\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32&.google.cloud.compute.v1.LicenseParamsH\x0b\x88\x01\x01\x12#\n\x13removable_from_disk\x18\xae\x85\xaa\x0c \x01(\x08H\x0c\x88\x01\x01\x12\'\n\x1crequired_coattached_licenses\x18\x81\xba\xcd= \x03(\t\x12[\n\x15resource_requirements\x18\xa1\xb2\x97\x66 \x01(\x0b\x32\x34.google.cloud.compute.v1.LicenseResourceRequirementsH\r\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0e\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x0f\x88\x01\x01\x12!\n\x10sole_tenant_only\x18\xb7\x8b\xee\xcb\x01 \x01(\x08H\x10\x88\x01\x01\x12\x1c\n\x0ctransferable\x18\xc5\xbf\x89\x02 \x01(\x08H\x11\x88\x01\x01\x12 \n\x10update_timestamp\x18\xa0\xea\xd2\x39 \x01(\tH\x12\x88\x01\x01\x42\x15\n\x13_appendable_to_diskB\x12\n\x10_charges_use_feeB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x0f\n\r_license_codeB\x14\n\x12_minimum_retentionB\x14\n\x12_multi_tenant_onlyB\x07\n\x05_nameB\r\n\x0b_os_licenseB\t\n\x07_paramsB\x16\n\x14_removable_from_diskB\x18\n\x16_resource_requirementsB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x13\n\x11_sole_tenant_onlyB\x0f\n\r_transferableB\x13\n\x11_update_timestamp\"\x94\x04\n\x0bLicenseCode\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12J\n\rlicense_alias\x18\xd2\x91\xe2\x14 \x03(\x0b\x32\x30.google.cloud.compute.v1.LicenseCodeLicenseAlias\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x04\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x05\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x06\x88\x01\x01\x12\x1c\n\x0ctransferable\x18\xc5\xbf\x89\x02 \x01(\x08H\x07\x88\x01\x01\"\x7f\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x0e\n\x07\x45NABLED\x10\xa1\xae\xecV\x12\x11\n\nRESTRICTED\x10\xdb\xe8\xdb|\x12\x19\n\x11STATE_UNSPECIFIED\x10\xc9\xd0\xbc\xe0\x01\x12\x11\n\nTERMINATED\x10\xa3\xf4\x9bwB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x0c\n\n_self_linkB\x08\n\x06_stateB\x0f\n\r_transferable\"q\n\x17LicenseCodeLicenseAlias\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0c\n\n_self_link\"\xaf\x01\n\rLicenseParams\x12\x62\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32?.google.cloud.compute.v1.LicenseParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x9c\x01\n\x19LicenseResourceCommitment\x12\x16\n\x06\x61mount\x18\xd8\xa0\xe9] \x01(\x03H\x00\x88\x01\x01\x12!\n\x11\x63ores_per_license\x18\x94\xc8\xbe\x0f \x01(\tH\x01\x88\x01\x01\x12\x17\n\x07license\x18\xc1\x88\xc2O \x01(\tH\x02\x88\x01\x01\x42\t\n\x07_amountB\x14\n\x12_cores_per_licenseB\n\n\x08_license\"\x8d\x01\n\x1bLicenseResourceRequirements\x12$\n\x13min_guest_cpu_count\x18\xa4\xd4\xf4\xe3\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1e\n\rmin_memory_mb\x18\xe6\xd7\xd9\xf0\x01 \x01(\x05H\x01\x88\x01\x01\x42\x16\n\x14_min_guest_cpu_countB\x10\n\x0e_min_memory_mb\"\x89\x02\n\x14LicensesListResponse\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x32\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32 .google.cloud.compute.v1.License\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x01\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x02\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x03\x88\x01\x01\x42\x05\n\x03_idB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb3\x02\n\x1bListAcceleratorTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xae\x02\n\x14ListAddressesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa8\x01\n%ListAssociationsFirewallPolicyRequest\x12*\n\x1ainclude_inherited_policies\x18\x8c\x9c\xb2\x0f \x01(\x08H\x00\x88\x01\x01\x12 \n\x0ftarget_resource\x18\xfc\xed\xea\xde\x01 \x01(\tH\x01\x88\x01\x01\x42\x1d\n\x1b_include_inherited_policiesB\x12\n\x10_target_resource\"i\n1ListAssociationsOrganizationSecurityPolicyRequest\x12 \n\x0ftarget_resource\x18\xfc\xed\xea\xde\x01 \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_target_resource\"\xae\x02\n\x16ListAutoscalersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc7\x02\n-ListAvailableFeaturesRegionSslPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa9\x02\n\'ListAvailableFeaturesSslPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9b\x02\n\x19ListBackendBucketsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9c\x02\n\x1aListBackendServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x8b\x06\n\x1bListBgpRoutesRoutersRequest\x12\x1e\n\x0e\x61\x64\x64ress_family\x18\x8f\xc4\xecR \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x64\x65stination_prefix\x18\xe3\xbf\xe9} \x01(\tH\x01\x88\x01\x01\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x03\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x04\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04peer\x18\xe2\xe2\xd1\x01 \x01(\tH\x06\x88\x01\x01\x12\x1f\n\x0epolicy_applied\x18\xf0\xd4\xf8\xb4\x01 \x01(\x08H\x07\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x08\x88\x01\x01\x12\x1b\n\nroute_type\x18\xf0\xb6\x9e\xb3\x01 \x01(\tH\t\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\"f\n\rAddressFamily\x12\x1c\n\x18UNDEFINED_ADDRESS_FAMILY\x10\x00\x12\x0b\n\x04IPV4\x10\x85\xcc\x89\x01\x12\x0b\n\x04IPV6\x10\x87\xcc\x89\x01\x12\x1d\n\x16UNSPECIFIED_IP_VERSION\x10\xc8\xe7\xe3\"\"g\n\tRouteType\x12\x18\n\x14UNDEFINED_ROUTE_TYPE\x10\x00\x12\x11\n\nADVERTISED\x10\x9d\x92\xd7\t\x12\x0e\n\x07LEARNED\x10\xc3\xcb\xc9n\x12\x1d\n\x16UNSPECIFIED_ROUTE_TYPE\x10\xb8\xd3\xa4vB\x11\n\x0f_address_familyB\x15\n\x13_destination_prefixB\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x07\n\x05_peerB\x11\n\x0f_policy_appliedB\x19\n\x17_return_partial_successB\r\n\x0b_route_type\"\x9e\x02\n\x1cListCrossSiteNetworksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xac\x02\n\x14ListDiskTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa8\x02\n\x10ListDisksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd3\x02\n\x1cListDisksStoragePoolsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x1d\n\x0cstorage_pool\x18\xe0\xc6\xf1\xab\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xe6\x02\n&ListErrorsInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xee\x02\n,ListErrorsRegionInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa0\x02\n\x1eListExternalVpnGatewaysRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xae\x02\n\x1bListFirewallPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tH\x04\x88\x01\x01\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x0c\n\n_parent_idB\x19\n\x17_return_partial_success\"\x96\x02\n\x14ListFirewallsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb4\x02\n\x1aListForwardingRulesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb5\x02\n\x1dListFutureReservationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9c\x02\n\x1aListGlobalAddressesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa2\x02\n ListGlobalForwardingRulesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa8\x02\n&ListGlobalNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9d\x02\n\x1bListGlobalOperationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xba\x02\n\'ListGlobalOrganizationOperationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tH\x04\x88\x01\x01\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x0c\n\n_parent_idB\x19\n\x17_return_partial_success\"\xaa\x02\n(ListGlobalPublicDelegatedPrefixesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x99\x02\n\x17ListHealthChecksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x93\x02\n\x11ListImagesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xed\x02\n-ListInstanceGroupManagerResizeRequestsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb8\x02\n ListInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb1\x02\n\x19ListInstanceGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9e\x02\n\x1cListInstanceTemplatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd9\x03\n\"ListInstancesInstanceGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12}\n/instance_groups_list_instances_request_resource\x18\x9f\xa8\x8c\xe3\x01 \x01(\x0b\x32;.google.cloud.compute.v1.InstanceGroupsListInstancesRequestB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xee\x03\n(ListInstancesRegionInstanceGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x89\x01\n6region_instance_groups_list_instances_request_resource\x18\xd4\xa9\x80\x17 \x01(\x0b\x32\x41.google.cloud.compute.v1.RegionInstanceGroupsListInstancesRequestB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xac\x02\n\x14ListInstancesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xf2\x02\n\x19ListInstantSnapshotGroups\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.InstantSnapshotGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb8\x02\n ListInstantSnapshotGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb3\x02\n\x1bListInstantSnapshotsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa9\x02\n\'ListInterconnectAttachmentGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbc\x02\n\"ListInterconnectAttachmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9f\x02\n\x1dListInterconnectGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa2\x02\n ListInterconnectLocationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa8\x02\n&ListInterconnectRemoteLocationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9a\x02\n\x18ListInterconnectsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x95\x02\n\x13ListLicensesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9a\x02\n\x18ListMachineImagesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xaf\x02\n\x17ListMachineTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xf0\x02\n0ListManagedInstancesInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xf8\x02\n6ListManagedInstancesRegionInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb7\x02\n\x1dListNetworkAttachmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb8\x02\n ListNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xe1\x02\n6ListNetworkEndpointsGlobalNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xff\x03\n0ListNetworkEndpointsNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x8b\x01\n7network_endpoint_groups_list_endpoints_request_resource\x18\x8e\x98\xaf\x1c \x01(\x0b\x32\x42.google.cloud.compute.v1.NetworkEndpointGroupsListEndpointsRequestB\x03\xe0\x41\x02\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xf9\x02\n6ListNetworkEndpointsRegionNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\'\n\x16network_endpoint_group\x18\x86\xcb\xf3\xce\x01 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa4\x02\n\"ListNetworkFirewallPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9c\x02\n\x1aListNetworkProfilesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x95\x02\n\x13ListNetworksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xad\x02\n\x15ListNodeGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb2\x02\n\x18ListNodeTemplatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xac\x02\n\x14ListNodeTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xcf\x02\n\x1aListNodesNodeGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xba\x02\n\'ListOrganizationSecurityPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tH\x04\x88\x01\x01\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x0c\n\n_parent_idB\x19\n\x17_return_partial_success\"\xb5\x02\n\x1bListPacketMirroringsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x80\x04\n ListPeeringRoutesNetworksRequest\x12\x19\n\tdirection\x18\xff\x8e\x80\x35 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x02\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x03\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x04\x88\x01\x01\x12\x1c\n\x0cpeering_name\x18\xaa\xd0\x80w \x01(\tH\x05\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x06\x88\x01\x01\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x07\x88\x01\x01\"H\n\tDirection\x12\x17\n\x13UNDEFINED_DIRECTION\x10\x00\x12\x10\n\x08INCOMING\x10\xa6\xd0\xb7\xa1\x01\x12\x10\n\x08OUTGOING\x10\xec\xc6\xcc\x92\x01\x42\x0c\n\n_directionB\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x0f\n\r_peering_nameB\t\n\x07_regionB\x19\n\x17_return_partial_success\"\xf2\x02\n2ListPerInstanceConfigsInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xfa\x02\n8ListPerInstanceConfigsRegionInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd5\x02\nBListPreconfiguredExpressionSetsOrganizationSecurityPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tH\x04\x88\x01\x01\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x05\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x0c\n\n_parent_idB\x19\n\x17_return_partial_success\"\xb8\x02\n6ListPreconfiguredExpressionSetsSecurityPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9c\x02\n\x1aListPreviewFeaturesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa5\x02\n#ListPublicAdvertisedPrefixesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbc\x02\n\"ListPublicDelegatedPrefixesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xcf\x02\n\x1dListReferrersInstancesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb6\x02\n\x1cListRegionAutoscalersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb9\x02\n\x1fListRegionBackendBucketsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xba\x02\n ListRegionBackendServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb6\x02\n\x1cListRegionCommitmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc0\x02\n&ListRegionCompositeHealthChecksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb4\x02\n\x1aListRegionDiskTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb0\x02\n\x16ListRegionDisksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc4\x02\n*ListRegionHealthAggregationPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbe\x02\n$ListRegionHealthCheckServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb7\x02\n\x1dListRegionHealthChecksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb8\x02\n\x1eListRegionHealthSourcesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xf5\x02\n3ListRegionInstanceGroupManagerResizeRequestsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc0\x02\n&ListRegionInstanceGroupManagersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb9\x02\n\x1fListRegionInstanceGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbc\x02\n\"ListRegionInstanceTemplatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc0\x02\n&ListRegionInstantSnapshotGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbb\x02\n!ListRegionInstantSnapshotsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc0\x02\n&ListRegionNetworkEndpointGroupsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc2\x02\n(ListRegionNetworkFirewallPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc0\x02\n&ListRegionNotificationEndpointsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb5\x02\n\x1bListRegionOperationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbb\x02\n!ListRegionSecurityPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb4\x02\n\x1aListRegionSnapshotsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xba\x02\n ListRegionSslCertificatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb6\x02\n\x1cListRegionSslPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbc\x02\n\"ListRegionTargetHttpProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbd\x02\n#ListRegionTargetHttpsProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbb\x02\n!ListRegionTargetTcpProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb2\x02\n\x18ListRegionUrlMapsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb0\x02\n\x16ListRegionZonesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x94\x02\n\x12ListRegionsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd1\x02\n\x1cListReservationBlocksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd1\x02\n\x1bListReservationSlotsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd5\x02\n\x1fListReservationSubBlocksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xaf\x02\n\x17ListReservationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb5\x02\n\x1bListResourcePoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd1\x02\n\x1fListRoutePoliciesRoutersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xac\x02\n\x12ListRoutersRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x93\x02\n\x11ListRoutesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9d\x02\n\x1bListSecurityPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb7\x02\n\x1dListServiceAttachmentsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x96\x02\n\x14ListSnapshotsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9c\x02\n\x1aListSslCertificatesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x98\x02\n\x16ListSslPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb3\x02\n\x1bListStoragePoolTypesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xaf\x02\n\x17ListStoragePoolsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x99\x03\n\x16ListSubnetworksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x15\n\x05views\x18\xee\xb4\xc0\x35 \x01(\tH\x05\x88\x01\x01\"F\n\x05Views\x12\x13\n\x0fUNDEFINED_VIEWS\x10\x00\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\x12\x18\n\x10WITH_UTILIZATION\x10\x89\xa0\xaf\xf0\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x08\n\x06_views\"\x9e\x02\n\x1cListTargetGrpcProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9e\x02\n\x1cListTargetHttpProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9f\x02\n\x1dListTargetHttpsProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb2\x02\n\x1aListTargetInstancesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb0\x02\n\x16ListTargetPoolsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9d\x02\n\x1bListTargetSslProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x9d\x02\n\x1bListTargetTcpProxiesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb6\x02\n\x1cListTargetVpnGatewaysRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x94\x02\n\x12ListUrlMapsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa1\x02\n\x1fListUsableBackendBucketsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xa2\x02\n ListUsableBackendServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbf\x02\n%ListUsableRegionBackendBucketsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xc0\x02\n&ListUsableRegionBackendServicesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xd4\x02\n\x1cListUsableSubnetworksRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12 \n\x0fservice_project\x18\x8f\xe7\x80\xfd\x01 \x01(\tH\x05\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_successB\x12\n\x10_service_project\"\xb0\x02\n\x16ListVpnGatewaysRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xaf\x02\n\x15ListVpnTunnelsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xbb\x02\n\x15ListWireGroupsRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x8d\x03\n\x1bListXpnHostsProjectsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12n\n(projects_list_xpn_hosts_request_resource\x18\x97\xd0\xceq \x01(\x0b\x32\x34.google.cloud.compute.v1.ProjectsListXpnHostsRequestB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xb1\x02\n\x19ListZoneOperationsRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\xba\x02\n\"ListZoneVmExtensionPoliciesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x92\x02\n\x10ListZonesRequest\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bmax_results\x18\x9b\xc8\x8b\x1a \x01(\rH\x01\x88\x01\x01\x12\x18\n\x08order_by\x18\xe8\xfd\xc7L \x01(\tH\x02\x88\x01\x01\x12\x1a\n\npage_token\x18\xc9\xb0\xc4\t \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\'\n\x16return_partial_success\x18\xb6\xa4\xcf\xf6\x01 \x01(\x08H\x04\x88\x01\x01\x42\t\n\x07_filterB\x0e\n\x0c_max_resultsB\x0b\n\t_order_byB\r\n\x0b_page_tokenB\x19\n\x17_return_partial_success\"\x8f\x01\n\tLocalDisk\x12\x1a\n\ndisk_count\x18\xed\xaf\x9dW \x01(\x05H\x00\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x05H\x01\x88\x01\x01\x12\x19\n\tdisk_type\x18\x9c\xe9\xac, \x01(\tH\x02\x88\x01\x01\x42\r\n\x0b_disk_countB\x0f\n\r_disk_size_gbB\x0c\n\n_disk_type\"\\\n\x10LocalizedMessage\x12\x17\n\x06locale\x18\xda\x9c\xd8\xf4\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x01\x88\x01\x01\x42\t\n\x07_localeB\n\n\x08_message\"\x9e\x03\n\x0eLocationPolicy\x12M\n\tlocations\x18\xde\xae\x91\xc5\x01 \x03(\x0b\x32\x36.google.cloud.compute.v1.LocationPolicy.LocationsEntry\x12\x1d\n\x0ctarget_shape\x18\xf3\xe6\xbb\xa1\x01 \x01(\tH\x00\x88\x01\x01\x12J\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\x0b\x32\x38.google.cloud.compute.v1.LocationPolicyZoneConfiguration\x1a\x61\n\x0eLocationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12>\n\x05value\x18\x02 \x01(\x0b\x32/.google.cloud.compute.v1.LocationPolicyLocation:\x02\x38\x01\"^\n\x0bTargetShape\x12\x1a\n\x16UNDEFINED_TARGET_SHAPE\x10\x00\x12\t\n\x03\x41NY\x10\xcc\xfb\x03\x12\x16\n\x0f\x41NY_SINGLE_ZONE\x10\xd0\xa6\x91\x1d\x12\x10\n\x08\x42\x41LANCED\x10\x88\xba\xad\xdf\x01\x42\x0f\n\r_target_shape\"\x8e\x02\n\x16LocationPolicyLocation\x12W\n\x0b\x63onstraints\x18\xb6\xcc\xee\x01 \x01(\x0b\x32:.google.cloud.compute.v1.LocationPolicyLocationConstraintsH\x00\x88\x01\x01\x12\x1a\n\npreference\x18\xdb\xf9\xf2G \x01(\tH\x01\x88\x01\x01\"`\n\nPreference\x12\x18\n\x14UNDEFINED_PREFERENCE\x10\x00\x12\x0c\n\x05\x41LLOW\x10\xa9\xd6\xde\x1d\x12\n\n\x04\x44\x45NY\x10\x8c\xec\x7f\x12\x1e\n\x16PREFERENCE_UNSPECIFIED\x10\xb3\xeb\xce\xec\x01\x42\x0e\n\x0c_constraintsB\r\n\x0b_preference\"M\n!LocationPolicyLocationConstraints\x12\x1a\n\tmax_count\x18\xf4\xfc\x92\x89\x01 \x01(\x05H\x00\x88\x01\x01\x42\x0c\n\n_max_count\"@\n\x1fLocationPolicyZoneConfiguration\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_zone\"\xb4\x0b\n\x0cMachineImage\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0bguest_flush\x18\xdd\x93\xec\xb7\x01 \x01(\x08H\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12P\n\x13instance_properties\x18\x9d\x9e\xd8\x66 \x01(\x0b\x32+.google.cloud.compute.v1.InstancePropertiesH\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x06\x88\x01\x01\x12\x45\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x31.google.cloud.compute.v1.MachineImage.LabelsEntry\x12]\n\x1cmachine_image_encryption_key\x18\xff\xff\xe7\xfb\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12\x43\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32+.google.cloud.compute.v1.MachineImageParamsH\t\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\n\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x0b\x88\x01\x01\x12;\n\x0bsaved_disks\x18\xbe\xed\xc0\xbd\x01 \x03(\x0b\x32\".google.cloud.compute.v1.SavedDisk\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\x12Y\n\x1bsource_disk_encryption_keys\x18\xb2\xf8\xcf\xb0\x01 \x03(\x0b\x32\x30.google.cloud.compute.v1.SourceDiskEncryptionKey\x12 \n\x0fsource_instance\x18\xb9\x98\xfd\xbc\x01 \x01(\tH\r\x88\x01\x01\x12^\n\x1asource_instance_properties\x18\xf9\xd1\xcb\xe2\x01 \x01(\x0b\x32\x31.google.cloud.compute.v1.SourceInstancePropertiesH\x0e\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x0f\x88\x01\x01\x12\x1d\n\x11storage_locations\x18\x9a\xed\xb3\x9c\x01 \x03(\t\x12#\n\x13total_storage_bytes\x18\xec\x87\x84\' \x01(\x03H\x10\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"s\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x10\n\tUPLOADING\x10\xa1\x9c\xcd\x7f\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_guest_flushB\x05\n\x03_idB\x16\n\x14_instance_propertiesB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x1f\n\x1d_machine_image_encryption_keyB\x07\n\x05_nameB\t\n\x07_paramsB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\x12\n\x10_source_instanceB\x1d\n\x1b_source_instance_propertiesB\t\n\x07_statusB\x16\n\x14_total_storage_bytes\"\xa9\x02\n\x10MachineImageList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x37\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32%.google.cloud.compute.v1.MachineImage\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb9\x01\n\x12MachineImageParams\x12g\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x44.google.cloud.compute.v1.MachineImageParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8b\x08\n\x0bMachineType\x12?\n\x0c\x61\x63\x63\x65lerators\x18\xe8\xd6\xc5\x80\x01 \x03(\x0b\x32%.google.cloud.compute.v1.Accelerators\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12N\n\x12\x62undled_local_ssds\x18\x80\xe7\xe0\xb8\x01 \x01(\x0b\x32).google.cloud.compute.v1.BundledLocalSsdsH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12\x1b\n\nguest_cpus\x18\xd2\xcb\xc8\xbb\x01 \x01(\x05H\x05\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x1e\n\x0eimage_space_gb\x18\x98\xf2\xf5# \x01(\x05H\x07\x88\x01\x01\x12\x1e\n\ris_shared_cpu\x18\x83\xda\xcf\xf8\x01 \x01(\x08H\x08\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\t\x88\x01\x01\x12)\n\x18maximum_persistent_disks\x18\x8d\xf6\xce\xec\x01 \x01(\x05H\n\x88\x01\x01\x12\x30\n maximum_persistent_disks_size_gb\x18\xa7\x95\xc8I \x01(\x03H\x0b\x88\x01\x01\x12\x19\n\tmemory_mb\x18\x93\x93\xa8\x37 \x01(\x05H\x0c\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\r\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0e\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0f\x88\x01\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\x42\x0f\n\r_architectureB\x15\n\x13_bundled_local_ssdsB\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\r\n\x0b_guest_cpusB\x05\n\x03_idB\x11\n\x0f_image_space_gbB\x10\n\x0e_is_shared_cpuB\x07\n\x05_kindB\x1b\n\x19_maximum_persistent_disksB#\n!_maximum_persistent_disks_size_gbB\x0c\n\n_memory_mbB\x07\n\x05_nameB\x0c\n\n_self_linkB\x07\n\x05_zone\"\xc2\x03\n\x19MachineTypeAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12O\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32=.google.cloud.compute.v1.MachineTypeAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a]\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12>\n\x05value\x18\x02 \x01(\x0b\x32/.google.cloud.compute.v1.MachineTypesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa7\x02\n\x0fMachineTypeList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x36\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32$.google.cloud.compute.v1.MachineType\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x9f\x01\n\x16MachineTypesScopedList\x12>\n\rmachine_types\x18\x81\xdd\x81& \x03(\x0b\x32$.google.cloud.compute.v1.MachineType\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x82\x0b\n\x0fManagedInstance\x12\x1e\n\x0e\x63urrent_action\x18\xbc\xa7\x8dU \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x01\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x02\x88\x01\x01\x12S\n\x0finstance_health\x18\xc6\x92\xbc\xb6\x01 \x03(\x0b\x32\x36.google.cloud.compute.v1.ManagedInstanceInstanceHealth\x12\x1f\n\x0finstance_status\x18\xdc\xad\x9fS \x01(\tH\x03\x88\x01\x01\x12R\n\x0clast_attempt\x18\xa4\xac\xa8\xcf\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.ManagedInstanceLastAttemptH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12T\n\x1bpreserved_state_from_config\x18\xe2\xeb\x85/ \x01(\x0b\x32\'.google.cloud.compute.v1.PreservedStateH\x06\x88\x01\x01\x12U\n\x1bpreserved_state_from_policy\x18\xd2\xaf\xbe\xe0\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.PreservedStateH\x07\x88\x01\x01\x12{\n\"properties_from_flexibility_policy\x18\xc1\xc5\x94J \x01(\x0b\x32G.google.cloud.compute.v1.ManagedInstancePropertiesFromFlexibilityPolicyH\x08\x88\x01\x01\x12I\n\x07version\x18\xd8\xb9\xd4\xa7\x01 \x01(\x0b\x32/.google.cloud.compute.v1.ManagedInstanceVersionH\t\x88\x01\x01\"\x85\x02\n\rCurrentAction\x12\x1c\n\x18UNDEFINED_CURRENT_ACTION\x10\x00\x12\x12\n\nABANDONING\x10\xcd\xca\x90\xb9\x01\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12 \n\x18\x43REATING_WITHOUT_RETRIES\x10\x89\xc6\xbe\xcc\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x12\n\nRECREATING\x10\xec\x8b\xfe\x88\x01\x12\x11\n\nREFRESHING\x10\xa7\xfe\xecM\x12\x12\n\nRESTARTING\x10\xf3\xee\xeb\x98\x01\x12\x10\n\x08RESUMING\x10\xaa\xfb\x89\xd5\x01\x12\x10\n\x08STARTING\x10\xc0\xa0\x8b\xe9\x01\x12\x10\n\tVERIFYING\x10\xa9\xc1\x8c\x08\"\xfd\x01\n\x0eInstanceStatus\x12\x1d\n\x19UNDEFINED_INSTANCE_STATUS\x10\x00\x12\x16\n\x0e\x44\x45PROVISIONING\x10\xee\x93\xc4\xcc\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x14\n\x0cPROVISIONING\x10\xed\xf5\xda\x8a\x01\x12\x11\n\tREPAIRING\x10\x95\x82\x95\xc5\x01\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x12\x0f\n\x07STAGING\x10\x9b\xc8\xc6\xcd\x01\x12\x0f\n\x07STOPPED\x10\xad\xbb\xec\xd3\x01\x12\x10\n\x08STOPPING\x10\xf4\xd0\xa2\xa7\x01\x12\x10\n\tSUSPENDED\x10\xbb\xbb\xb6\x18\x12\x12\n\nSUSPENDING\x10\xa6\xd4\x98\xf5\x01\x12\x11\n\nTERMINATED\x10\xa3\xf4\x9bwB\x11\n\x0f_current_actionB\x05\n\x03_idB\x0b\n\t_instanceB\x12\n\x10_instance_statusB\x0f\n\r_last_attemptB\x07\n\x05_nameB\x1e\n\x1c_preserved_state_from_configB\x1e\n\x1c_preserved_state_from_policyB%\n#_properties_from_flexibility_policyB\n\n\x08_version\"\xa6\x02\n\x1dManagedInstanceInstanceHealth\x12&\n\x15\x64\x65tailed_health_state\x18\x9d\xd0\xb4\xf3\x01 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tH\x01\x88\x01\x01\"\x92\x01\n\x13\x44\x65tailedHealthState\x12#\n\x1fUNDEFINED_DETAILED_HEALTH_STATE\x10\x00\x12\x10\n\x08\x44RAINING\x10\xea\xd5\x8c\xe5\x01\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12\x0f\n\x07TIMEOUT\x10\xc1\xb2\xeb\xe3\x01\x12\x11\n\tUNHEALTHY\x10\xc4\xb9\xad\xdc\x01\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\x42\x18\n\x16_detailed_health_stateB\x0f\n\r_health_check\"{\n\x1aManagedInstanceLastAttempt\x12R\n\x06\x65rrors\x18\xeb\xde\xd5\x96\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.ManagedInstanceLastAttemptErrorsH\x00\x88\x01\x01\x42\t\n\x07_errors\"W\n ManagedInstanceLastAttemptErrors\x12\x33\n\x06\x65rrors\x18\xeb\xde\xd5\x96\x01 \x03(\x0b\x32\x1f.google.cloud.compute.v1.Errors\"_\n.ManagedInstancePropertiesFromFlexibilityPolicy\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_machine_type\"q\n\x16ManagedInstanceVersion\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\x14\n\x12_instance_templateB\x07\n\x05_name\"\x88\x01\n\x08Metadata\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12\x30\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1e.google.cloud.compute.v1.Items\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_fingerprintB\x07\n\x05_kind\"\x8f\x02\n\x0eMetadataFilter\x12L\n\rfilter_labels\x18\xa6\xf5\xe8\x92\x01 \x03(\x0b\x32\x31.google.cloud.compute.v1.MetadataFilterLabelMatch\x12%\n\x15\x66ilter_match_criteria\x18\xc0\xd0\xb6r \x01(\tH\x00\x88\x01\x01\"n\n\x13\x46ilterMatchCriteria\x12#\n\x1fUNDEFINED_FILTER_MATCH_CRITERIA\x10\x00\x12\x10\n\tMATCH_ALL\x10\xe7\xe7\x92V\x12\x10\n\tMATCH_ANY\x10\xb2\xe8\x92V\x12\x0e\n\x07NOT_SET\x10\xb6\x99\x84NB\x18\n\x16_filter_match_criteria\"Z\n\x18MetadataFilterLabelMatch\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05value\x18\xf1\xa2\xb2\x35 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\x08\n\x06_value\"\x8b\x02\n\x12MoveAddressRequest\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12l\n®ion_addresses_move_request_resource\x18\xc4\xb0\x88\xc3\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.RegionAddressesMoveRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbd\x01\n\x16MoveDiskProjectRequest\x12U\n\x1a\x64isk_move_request_resource\x18\xca\xc2\xa0\x95\x01 \x01(\x0b\x32(.google.cloud.compute.v1.DiskMoveRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x90\x01\n\x19MoveFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12&\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tB\x0f\xe0\x41\x02\xf2G\tparent_id\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf0\x01\n\x18MoveGlobalAddressRequest\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tB\x03\xe0\x41\x02\x12l\n&global_addresses_move_request_resource\x18\xf3\xf1\xb1\x90\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.GlobalAddressesMoveRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc9\x01\n\x1aMoveInstanceProjectRequest\x12]\n\x1einstance_move_request_resource\x18\xc2\xbc\xce\x94\x01 \x01(\x0b\x32,.google.cloud.compute.v1.InstanceMoveRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xab\x01\n%MoveOrganizationSecurityPolicyRequest\x12(\n\tparent_id\x18\xd0\xe1\x9a\xdb\x01 \x01(\tB\x0c\xf2G\tparent_idH\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0c\n\n_parent_idB\r\n\x0b_request_id\"I\n\tNamedPort\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x01\x88\x01\x01\x42\x07\n\x05_nameB\x07\n\x05_port\"\x88\x01\n\tNatIpInfo\x12S\n\x14nat_ip_info_mappings\x18\x9c\x80\x8es \x03(\x0b\x32\x32.google.cloud.compute.v1.NatIpInfoNatIpInfoMapping\x12\x19\n\x08nat_name\x18\xe9\xad\xf8\xca\x01 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_nat_name\"\xf2\x01\n\x19NatIpInfoNatIpInfoMapping\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06nat_ip\x18\x85\xd2\x88\n \x01(\tH\x01\x88\x01\x01\x12\x15\n\x05usage\x18\xa1\xfb\x99\x35 \x01(\tH\x02\x88\x01\x01\"5\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\n\n\x04\x41UTO\x10\xaf\xab{\x12\r\n\x06MANUAL\x10\xc6\xb7\xf7\x38\";\n\x05Usage\x12\x13\n\x0fUNDEFINED_USAGE\x10\x00\x12\r\n\x06IN_USE\x10\xcd\xce\xa5\x08\x12\x0e\n\x06UNUSED\x10\xd6\xf3\xfb\xab\x01\x42\x07\n\x05_modeB\t\n\x07_nat_ipB\x08\n\x06_usage\"J\n\x11NatIpInfoResponse\x12\x35\n\x06result\x18\x9d\x90\xb7\x42 \x03(\x0b\x32\".google.cloud.compute.v1.NatIpInfo\"\xed\t\n\x07Network\x12\x1b\n\x0bI_pv4_range\x18\xb6\xb0\x9f\x1c \x01(\tH\x00\x88\x01\x01\x12\'\n\x17\x61uto_create_subnetworks\x18\x92\xc8\x92z \x01(\x08H\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12)\n\x18\x65nable_ula_internal_ipv6\x18\x98\x8f\x88\xca\x01 \x01(\x08H\x04\x88\x01\x01\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tH\x05\x88\x01\x01\x12\x1d\n\rgateway_i_pv4\x18\xdd\xd8\x99U \x01(\tH\x06\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x07\x88\x01\x01\x12$\n\x13internal_ipv6_range\x18\xa7\xcf\xa6\x84\x01 \x01(\tH\x08\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\t\x88\x01\x01\x12\x12\n\x03mtu\x18\xae\xcf\x06 \x01(\x05H\n\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0b\x88\x01\x01\x12\x39\n)network_firewall_policy_enforcement_order\x18\xd0\x82\x8d\x03 \x01(\tH\x0c\x88\x01\x01\x12\x1f\n\x0fnetwork_profile\x18\x98\xf9\xc5R \x01(\tH\r\x88\x01\x01\x12>\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32&.google.cloud.compute.v1.NetworkParamsH\x0e\x88\x01\x01\x12<\n\x08peerings\x18\xb3\xaa\xa9! \x03(\x0b\x32\'.google.cloud.compute.v1.NetworkPeering\x12N\n\x0erouting_config\x18\xdb\xa9\xd3\xf9\x01 \x01(\x0b\x32-.google.cloud.compute.v1.NetworkRoutingConfigH\x0f\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x10\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x11\x88\x01\x01\x12\x17\n\x0bsubnetworks\x18\xc5\xd4\xa5\xc6\x01 \x03(\t\"\xa0\x01\n%NetworkFirewallPolicyEnforcementOrder\x12\x37\n3UNDEFINED_NETWORK_FIREWALL_POLICY_ENFORCEMENT_ORDER\x10\x00\x12\x1d\n\x16\x41\x46TER_CLASSIC_FIREWALL\x10\xd0\xfc\xdaI\x12\x1f\n\x17\x42\x45\x46ORE_CLASSIC_FIREWALL\x10\xed\xed\xb1\xa1\x01\x42\x0e\n\x0c_I_pv4_rangeB\x1a\n\x18_auto_create_subnetworksB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x1b\n\x19_enable_ula_internal_ipv6B\x12\n\x10_firewall_policyB\x10\n\x0e_gateway_i_pv4B\x05\n\x03_idB\x16\n\x14_internal_ipv6_rangeB\x07\n\x05_kindB\x06\n\x04_mtuB\x07\n\x05_nameB,\n*_network_firewall_policy_enforcement_orderB\x12\n\x10_network_profileB\t\n\x07_paramsB\x11\n\x0f_routing_configB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_id\"\xa7\x06\n\x11NetworkAttachment\x12]\n\x14\x63onnection_endpoints\x18\xdd\xa2\xbe\x9b\x01 \x03(\x0b\x32;.google.cloud.compute.v1.NetworkAttachmentConnectedEndpoint\x12&\n\x15\x63onnection_preference\x18\xdc\xf9\xa4\x88\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x07\x88\x01\x01\x12 \n\x15producer_accept_lists\x18\xab\x9a\xda` \x03(\t\x12 \n\x15producer_reject_lists\x18\x82\xfd\xfa\x01 \x03(\t\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\n\x88\x01\x01\x12\x17\n\x0bsubnetworks\x18\xc5\xd4\xa5\xc6\x01 \x03(\t\"|\n\x14\x43onnectionPreference\x12#\n\x1fUNDEFINED_CONNECTION_PREFERENCE\x10\x00\x12\x17\n\x10\x41\x43\x43\x45PT_AUTOMATIC\x10\x94\xf7\xf0#\x12\x15\n\rACCEPT_MANUAL\x10\xdd\xed\xf1\xb1\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x42\x18\n\x16_connection_preferenceB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_regionB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_id\"\xbb\x03\n\x1fNetworkAttachmentAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12U\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x43.google.cloud.compute.v1.NetworkAttachmentAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x63\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x44\n\x05value\x18\x02 \x01(\x0b\x32\x35.google.cloud.compute.v1.NetworkAttachmentsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbf\x04\n\"NetworkAttachmentConnectedEndpoint\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0cipv6_address\x18\x9c\xb3\xef\xa2\x01 \x01(\tH\x01\x88\x01\x01\x12\"\n\x11project_id_or_num\x18\xa8\x8a\xe5\xa6\x01 \x01(\tH\x02\x88\x01\x01\x12#\n\x18secondary_ip_cidr_ranges\x18\x94\xb2\xf0\x37 \x03(\t\x12!\n\x10service_class_id\x18\x8c\xb7\xcb\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x04\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\x05\x88\x01\x01\x12&\n\x15subnetwork_cidr_range\x18\xa3\xdb\xdf\xb6\x01 \x01(\tH\x06\x88\x01\x01\"\x94\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0f\n\x08\x41\x43\x43\x45PTED\x10\xa7\x9f\xd2u\x12\x0e\n\x06\x43LOSED\x10\xec\xaa\xa3\xb5\x01\x12\x17\n\x0fNEEDS_ATTENTION\x10\xbc\x8b\xa2\xa4\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x0f\n\x08REJECTED\x10\xfe\x88\x84S\x12\x19\n\x12STATUS_UNSPECIFIED\x10\xca\xcc\x8b\x14\x42\r\n\x0b_ip_addressB\x0f\n\r_ipv6_addressB\x14\n\x12_project_id_or_numB\x13\n\x11_service_class_idB\t\n\x07_statusB\r\n\x0b_subnetworkB\x18\n\x16_subnetwork_cidr_range\"\xb3\x02\n\x15NetworkAttachmentList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12<\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32*.google.cloud.compute.v1.NetworkAttachment\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb2\x01\n\x1cNetworkAttachmentsScopedList\x12K\n\x13network_attachments\x18\x9f\xde\xd6\xf8\x01 \x03(\x0b\x32*.google.cloud.compute.v1.NetworkAttachment\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xc4\x03\n\x1aNetworkEdgeSecurityService\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x06\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\t\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x12\n\x10_security_policyB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_id\"\x8e\x04\n(NetworkEdgeSecurityServiceAggregatedList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12^\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32L.google.cloud.compute.v1.NetworkEdgeSecurityServiceAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x1al\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12M\n\x05value\x18\x02 \x01(\x0b\x32>.google.cloud.compute.v1.NetworkEdgeSecurityServicesScopedList:\x02\x38\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xce\x01\n%NetworkEdgeSecurityServicesScopedList\x12^\n\x1enetwork_edge_security_services\x18\xac\xcb\xf8\x10 \x03(\x0b\x32\x33.google.cloud.compute.v1.NetworkEdgeSecurityService\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x9e\x03\n\x0fNetworkEndpoint\x12Q\n\x0b\x61nnotations\x18\xa4\xf6\xb5\x35 \x03(\x0b\x32\x39.google.cloud.compute.v1.NetworkEndpoint.AnnotationsEntry\x12\'\n\x17\x63lient_destination_port\x18\x86\x88\x82; \x01(\x05H\x00\x88\x01\x01\x12\x14\n\x04\x66qdn\x18\x95\xa5\xc0\x01 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x02\x88\x01\x01\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x03\x88\x01\x01\x12\x1d\n\x0cipv6_address\x18\x9c\xb3\xef\xa2\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x05\x88\x01\x01\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x1a\n\x18_client_destination_portB\x07\n\x05_fqdnB\x0b\n\t_instanceB\r\n\x0b_ip_addressB\x0f\n\r_ipv6_addressB\x07\n\x05_port\"\x89\x0b\n\x14NetworkEndpointGroup\x12V\n\x0b\x61nnotations\x18\xa4\xf6\xb5\x35 \x03(\x0b\x32>.google.cloud.compute.v1.NetworkEndpointGroup.AnnotationsEntry\x12S\n\napp_engine\x18\xa0\x8c\xc0\xa2\x01 \x01(\x0b\x32\x36.google.cloud.compute.v1.NetworkEndpointGroupAppEngineH\x00\x88\x01\x01\x12[\n\x0e\x63loud_function\x18\xa2\xe5\xf3\xf7\x01 \x01(\x0b\x32:.google.cloud.compute.v1.NetworkEndpointGroupCloudFunctionH\x01\x88\x01\x01\x12P\n\tcloud_run\x18\x81\xcb\xfa\x34 \x01(\x0b\x32\x35.google.cloud.compute.v1.NetworkEndpointGroupCloudRunH\x02\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x03\x88\x01\x01\x12\x1d\n\x0c\x64\x65\x66\x61ult_port\x18\xbf\xf7\xf0\xc9\x01 \x01(\x05H\x04\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x05\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\t\x88\x01\x01\x12%\n\x15network_endpoint_type\x18\xd3\xc6\xb4\x38 \x01(\tH\n\x88\x01\x01\x12N\n\x08psc_data\x18\xc9\xdb\xa6\" \x01(\x0b\x32\x34.google.cloud.compute.v1.NetworkEndpointGroupPscDataH\x0b\x88\x01\x01\x12#\n\x12psc_target_service\x18\xe6\xc2\xaa\x80\x01 \x01(\tH\x0c\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\r\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0e\x88\x01\x01\x12\x14\n\x04size\x18\x81\xc0\xd7\x01 \x01(\x05H\x0f\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\x10\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x11\x88\x01\x01\x1a\x32\n\x10\x41nnotationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8a\x02\n\x13NetworkEndpointType\x12#\n\x1fUNDEFINED_NETWORK_ENDPOINT_TYPE\x10\x00\x12\x11\n\tGCE_VM_IP\x10\xd9\xed\xd0\xbf\x01\x12\x16\n\x0eGCE_VM_IP_PORT\x10\xa7\xe4\xa5\xef\x01\x12\x18\n\x11GCE_VM_IP_PORTMAP\x10\xb5\xe3\xf0\n\x12\x1a\n\x12INTERNET_FQDN_PORT\x10\xed\xd0\xdb\xc0\x01\x12\x18\n\x10INTERNET_IP_PORT\x10\x9b\xdb\xe5\xe3\x01\x12\x1f\n\x17NON_GCP_PRIVATE_IP_PORT\x10\xe0\x93\xb7\xa0\x01\x12\x1e\n\x17PRIVATE_SERVICE_CONNECT\x10\xc4\xf4\xf9\x16\x12\x12\n\nSERVERLESS\x10\xdc\xc6\xfd\x80\x01\x42\r\n\x0b_app_engineB\x11\n\x0f_cloud_functionB\x0c\n\n_cloud_runB\x15\n\x13_creation_timestampB\x0f\n\r_default_portB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_networkB\x18\n\x16_network_endpoint_typeB\x0b\n\t_psc_dataB\x15\n\x13_psc_target_serviceB\t\n\x07_regionB\x0c\n\n_self_linkB\x07\n\x05_sizeB\r\n\x0b_subnetworkB\x07\n\x05_zone\"\xdd\x03\n\"NetworkEndpointGroupAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12X\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x46.google.cloud.compute.v1.NetworkEndpointGroupAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x66\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12G\n\x05value\x18\x02 \x01(\x0b\x32\x38.google.cloud.compute.v1.NetworkEndpointGroupsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x92\x01\n\x1dNetworkEndpointGroupAppEngine\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08url_mask\x18\xbc\x8f\xa4\x31 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x07version\x18\xd8\xb9\xd4\xa7\x01 \x01(\tH\x02\x88\x01\x01\x42\n\n\x08_serviceB\x0b\n\t_url_maskB\n\n\x08_version\"r\n!NetworkEndpointGroupCloudFunction\x12\x19\n\x08\x66unction\x18\xd8\xe7\xbd\x92\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08url_mask\x18\xbc\x8f\xa4\x31 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_functionB\x0b\n\t_url_mask\"\x87\x01\n\x1cNetworkEndpointGroupCloudRun\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03tag\x18\x9a\xff\x06 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x08url_mask\x18\xbc\x8f\xa4\x31 \x01(\tH\x02\x88\x01\x01\x42\n\n\x08_serviceB\x06\n\x04_tagB\x0b\n\t_url_mask\"\xb9\x02\n\x18NetworkEndpointGroupList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.NetworkEndpointGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbd\x03\n\x1bNetworkEndpointGroupPscData\x12%\n\x14\x63onsumer_psc_address\x18\xac\xad\xeb\xd7\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\rproducer_port\x18\x8e\xda\xc1\xc3\x01 \x01(\x05H\x01\x88\x01\x01\x12\"\n\x11psc_connection_id\x18\xdd\xa5\xa3\x8b\x01 \x01(\x04H\x02\x88\x01\x01\x12%\n\x15psc_connection_status\x18\xb4\xc9\xe7W \x01(\tH\x03\x88\x01\x01\"\xb0\x01\n\x13PscConnectionStatus\x12#\n\x1fUNDEFINED_PSC_CONNECTION_STATUS\x10\x00\x12\x0f\n\x08\x41\x43\x43\x45PTED\x10\xa7\x9f\xd2u\x12\x0e\n\x06\x43LOSED\x10\xec\xaa\xa3\xb5\x01\x12\x17\n\x0fNEEDS_ATTENTION\x10\xbc\x8b\xa2\xa4\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x0f\n\x08REJECTED\x10\xfe\x88\x84S\x12\x19\n\x12STATUS_UNSPECIFIED\x10\xca\xcc\x8b\x14\x42\x17\n\x15_consumer_psc_addressB\x10\n\x0e_producer_portB\x14\n\x12_psc_connection_idB\x18\n\x16_psc_connection_status\"u\n+NetworkEndpointGroupsAttachEndpointsRequest\x12\x46\n\x11network_endpoints\x18\xad\x91\xbaG \x03(\x0b\x32(.google.cloud.compute.v1.NetworkEndpoint\"u\n+NetworkEndpointGroupsDetachEndpointsRequest\x12\x46\n\x11network_endpoints\x18\xad\x91\xbaG \x03(\x0b\x32(.google.cloud.compute.v1.NetworkEndpoint\"\xa4\x01\n)NetworkEndpointGroupsListEndpointsRequest\x12\x1e\n\rhealth_status\x18\xb5\xd6\xba\xb5\x01 \x01(\tH\x00\x88\x01\x01\"E\n\x0cHealthStatus\x12\x1b\n\x17UNDEFINED_HEALTH_STATUS\x10\x00\x12\x0b\n\x04SHOW\x10\xfd\xa5\x9b\x01\x12\x0b\n\x04SKIP\x10\xff\xba\x9b\x01\x42\x10\n\x0e_health_status\"\xab\x02\n)NetworkEndpointGroupsListNetworkEndpoints\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12J\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x38.google.cloud.compute.v1.NetworkEndpointWithHealthStatus\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x03\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\n\n\x08_warning\"\xbb\x01\n\x1fNetworkEndpointGroupsScopedList\x12Q\n\x17network_endpoint_groups\x18\xad\x97\xff\r \x03(\x0b\x32-.google.cloud.compute.v1.NetworkEndpointGroup\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xcf\x01\n\x1fNetworkEndpointWithHealthStatus\x12K\n\x07healths\x18\x97\x93\xad{ \x03(\x0b\x32\x37.google.cloud.compute.v1.HealthStatusForNetworkEndpoint\x12J\n\x10network_endpoint\x18\x86\x91\x8a\x1b \x01(\x0b\x32(.google.cloud.compute.v1.NetworkEndpointH\x00\x88\x01\x01\x42\x13\n\x11_network_endpoint\"\xda\x03\n#NetworkFirewallPolicyAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12Y\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32G.google.cloud.compute.v1.NetworkFirewallPolicyAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.FirewallPoliciesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x91\x0c\n\x10NetworkInterface\x12@\n\x0e\x61\x63\x63\x65ss_configs\x18\x96\xbb\xfa\x34 \x03(\x0b\x32%.google.cloud.compute.v1.AccessConfig\x12\x41\n\x0f\x61lias_ip_ranges\x18\xbf\x83\xdcN \x03(\x0b\x32%.google.cloud.compute.v1.AliasIpRange\x12&\n\x15\x65nable_vpc_scoped_dns\x18\xcc\xf8\x92\x87\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x01\x88\x01\x01\x12\x1a\n\nigmp_query\x18\xca\xa4\xb6\x0e \x01(\tH\x02\x88\x01\x01\x12+\n\x1binternal_ipv6_prefix_length\x18\x9d\x83\x99\x61 \x01(\x05H\x03\x88\x01\x01\x12\x46\n\x13ipv6_access_configs\x18\xee\xe5\xc4\xe6\x01 \x03(\x0b\x32%.google.cloud.compute.v1.AccessConfig\x12!\n\x10ipv6_access_type\x18\xdd\xf5\xd1\xf0\x01 \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x0cipv6_address\x18\x9c\xb3\xef\xa2\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x08\x88\x01\x01\x12\"\n\x12network_attachment\x18\xd4\x97\x8fk \x01(\tH\t\x88\x01\x01\x12\x1b\n\x0bnetwork_i_p\x18\x89\xb1\xe5\x62 \x01(\tH\n\x88\x01\x01\x12\x18\n\x08nic_type\x18\x91\xc6\xc2\x1c \x01(\tH\x0b\x88\x01\x01\x12 \n\x0fparent_nic_name\x18\xd7\xac\xd7\xc7\x01 \x01(\tH\x0c\x88\x01\x01\x12\x1c\n\x0bqueue_count\x18\xe1\xf8\x97\xf0\x01 \x01(\x05H\r\x88\x01\x01\x12!\n\x10service_class_id\x18\x8c\xb7\xcb\xc9\x01 \x01(\tH\x0e\x88\x01\x01\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH\x0f\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\x10\x88\x01\x01\x12\x14\n\x04vlan\x18\xe3\x8a\xdd\x01 \x01(\x05H\x11\x88\x01\x01\"X\n\tIgmpQuery\x12\x18\n\x14UNDEFINED_IGMP_QUERY\x10\x00\x12\x1a\n\x13IGMP_QUERY_DISABLED\x10\xf1\xb1\xbe\r\x12\x15\n\rIGMP_QUERY_V2\x10\xd1\xe9\x82\x9f\x01\"y\n\x0eIpv6AccessType\x12\x1e\n\x1aUNDEFINED_IPV6_ACCESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\x12$\n\x1cUNSPECIFIED_IPV6_ACCESS_TYPE\x10\xa5\xf6\xa4\x95\x01\"\x89\x01\n\x07NicType\x12\x16\n\x12UNDEFINED_NIC_TYPE\x10\x00\x12\x0c\n\x05GVNIC\x10\x99\x95\xc3 \x12\x0b\n\x04IDPF\x10\xd1\xf0\x88\x01\x12\x0c\n\x05IRDMA\x10\x8f\x86\xac!\x12\x0c\n\x05MRDMA\x10\x93\xc2\x8d#\x12\x1b\n\x14UNSPECIFIED_NIC_TYPE\x10\xd9\xbe\x92 \x12\x12\n\nVIRTIO_NET\x10\xd9\xb6\xcb\xd7\x01\"{\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\x12\x10\n\tIPV6_ONLY\x10\xe4\xad\xfc%\x12\x1e\n\x16UNSPECIFIED_STACK_TYPE\x10\xd9\xd1\x91\x8e\x01\x42\x18\n\x16_enable_vpc_scoped_dnsB\x0e\n\x0c_fingerprintB\r\n\x0b_igmp_queryB\x1e\n\x1c_internal_ipv6_prefix_lengthB\x13\n\x11_ipv6_access_typeB\x0f\n\r_ipv6_addressB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_networkB\x15\n\x13_network_attachmentB\x0e\n\x0c_network_i_pB\x0b\n\t_nic_typeB\x12\n\x10_parent_nic_nameB\x0e\n\x0c_queue_countB\x13\n\x11_service_class_idB\r\n\x0b_stack_typeB\r\n\x0b_subnetworkB\x07\n\x05_vlan\"\x9f\x02\n\x0bNetworkList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x32\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32 .google.cloud.compute.v1.Network\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xaf\x01\n\rNetworkParams\x12\x62\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32?.google.cloud.compute.v1.NetworkParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xce\x08\n\x0eNetworkPeering\x12\"\n\x12\x61uto_create_routes\x18\xdd\xe2\xb2\x1b \x01(\x08H\x00\x88\x01\x01\x12[\n\x11\x63onnection_status\x18\xf3\xf0\xd1\xfa\x01 \x01(\x0b\x32\x37.google.cloud.compute.v1.NetworkPeeringConnectionStatusH\x01\x88\x01\x01\x12&\n\x16\x65xchange_subnet_routes\x18\xd0\xca\xc6\x0c \x01(\x08H\x02\x88\x01\x01\x12$\n\x14\x65xport_custom_routes\x18\x8d\xa5\xdf\x1c \x01(\x08H\x03\x88\x01\x01\x12\x33\n#export_subnet_routes_with_public_ip\x18\xe2\xea\xd9. \x01(\x08H\x04\x88\x01\x01\x12$\n\x14import_custom_routes\x18\xbe\xf1\xb3^ \x01(\x08H\x05\x88\x01\x01\x12\x33\n#import_subnet_routes_with_public_ip\x18\x91\x8e\xf0\x06 \x01(\x08H\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x08\x88\x01\x01\x12\x18\n\x08peer_mtu\x18\xd1\x8e\x97! \x01(\x05H\t\x88\x01\x01\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH\n\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x0b\x88\x01\x01\x12\x1d\n\rstate_details\x18\x94\xf9\xc8- \x01(\tH\x0c\x88\x01\x01\x12\x1f\n\x0fupdate_strategy\x18\xa9\xdc\xf5\x02 \x01(\tH\r\x88\x01\x01\"I\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\">\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08INACTIVE\x10\xeb\x98\xf9\x80\x01\"j\n\x0eUpdateStrategy\x12\x1d\n\x19UNDEFINED_UPDATE_STRATEGY\x10\x00\x12\x10\n\tCONSENSUS\x10\xd7\xf8\xfc`\x12\x12\n\x0bINDEPENDENT\x10\xda\x96\xc8<\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x15\n\x13_auto_create_routesB\x14\n\x12_connection_statusB\x19\n\x17_exchange_subnet_routesB\x17\n\x15_export_custom_routesB&\n$_export_subnet_routes_with_public_ipB\x17\n\x15_import_custom_routesB&\n$_import_subnet_routes_with_public_ipB\x07\n\x05_nameB\n\n\x08_networkB\x0b\n\t_peer_mtuB\r\n\x0b_stack_typeB\x08\n\x06_stateB\x10\n\x0e_state_detailsB\x12\n\x10_update_strategy\"\xcc\x03\n\x1eNetworkPeeringConnectionStatus\x12g\n\x0f\x63onsensus_state\x18\xc9\xbd\x8b\xb5\x01 \x01(\x0b\x32\x45.google.cloud.compute.v1.NetworkPeeringConnectionStatusConsensusStateH\x00\x88\x01\x01\x12r\n\x15traffic_configuration\x18\xb4\xd4\xb6? \x01(\x0b\x32K.google.cloud.compute.v1.NetworkPeeringConnectionStatusTrafficConfigurationH\x01\x88\x01\x01\x12\x1f\n\x0fupdate_strategy\x18\xa9\xdc\xf5\x02 \x01(\tH\x02\x88\x01\x01\"j\n\x0eUpdateStrategy\x12\x1d\n\x19UNDEFINED_UPDATE_STRATEGY\x10\x00\x12\x10\n\tCONSENSUS\x10\xd7\xf8\xfc`\x12\x12\n\x0bINDEPENDENT\x10\xda\x96\xc8<\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x12\n\x10_consensus_stateB\x18\n\x16_traffic_configurationB\x12\n\x10_update_strategy\"\xe6\x03\n,NetworkPeeringConnectionStatusConsensusState\x12\x1e\n\rdelete_status\x18\x86\xc2\xc2\xe6\x01 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\rupdate_status\x18\xa8\xa0\xeb~ \x01(\tH\x01\x88\x01\x01\"\xa8\x01\n\x0c\x44\x65leteStatus\x12\x1b\n\x17UNDEFINED_DELETE_STATUS\x10\x00\x12\x1b\n\x13\x44\x45LETE_ACKNOWLEDGED\x10\xdc\xae\x8e\x9b\x01\x12!\n\x19\x44\x45LETE_STATUS_UNSPECIFIED\x10\xde\x8a\xc5\xbc\x01\x12\x1d\n\x16LOCAL_DELETE_REQUESTED\x10\xae\xb8\xb3l\x12\x1c\n\x15PEER_DELETE_REQUESTED\x10\xf7\xd5\xab^\"\xa7\x01\n\x0cUpdateStatus\x12\x1b\n\x17UNDEFINED_UPDATE_STATUS\x10\x00\x12\x0e\n\x07IN_SYNC\x10\xf5\xe2\x8a\x01\x12\"\n\x1bPENDING_LOCAL_ACKNOWLEDMENT\x10\xc0\xcd\xd1m\x12$\n\x1cPENDING_PEER_ACKNOWLEDGEMENT\x10\xc5\x8d\xae\xc8\x01\x12 \n\x19UPDATE_STATUS_UNSPECIFIED\x10\x80\xa3\xcf\x39\x42\x10\n\x0e_delete_statusB\x10\n\x0e_update_status\"\xad\x04\n2NetworkPeeringConnectionStatusTrafficConfiguration\x12-\n\x1c\x65xport_custom_routes_to_peer\x18\xf4\x99\xca\x88\x01 \x01(\x08H\x00\x88\x01\x01\x12;\n+export_subnet_routes_with_public_ip_to_peer\x18\xc9\x95\xfe\x03 \x01(\x08H\x01\x88\x01\x01\x12/\n\x1eimport_custom_routes_from_peer\x18\x96\xd5\x87\xbe\x01 \x01(\x08H\x02\x88\x01\x01\x12=\n-import_subnet_routes_with_public_ip_from_peer\x18\xa9\xda\xf5o \x01(\x08H\x03\x88\x01\x01\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH\x04\x88\x01\x01\"I\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\nB\x1f\n\x1d_export_custom_routes_to_peerB.\n,_export_subnet_routes_with_public_ip_to_peerB!\n\x1f_import_custom_routes_from_peerB0\n._import_subnet_routes_with_public_ip_from_peerB\r\n\x0b_stack_type\"\xce\x01\n\x18NetworkPerformanceConfig\x12+\n\x1btotal_egress_bandwidth_tier\x18\xff\x9f\x85> \x01(\tH\x00\x88\x01\x01\"e\n\x18TotalEgressBandwidthTier\x12)\n%UNDEFINED_TOTAL_EGRESS_BANDWIDTH_TIER\x10\x00\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\x12\x0e\n\x06TIER_1\x10\x94\xca\xf1\x9b\x01\x42\x1e\n\x1c_total_egress_bandwidth_tier\"\xed\x04\n\x0eNetworkProfile\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12P\n\x08\x66\x65\x61tures\x18\xbd\xc8\xb3u \x01(\x0b\x32\x36.google.cloud.compute.v1.NetworkProfileNetworkFeaturesH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12J\n\x08location\x18\xb5\xbf\xbe\x8a\x01 \x01(\x0b\x32/.google.cloud.compute.v1.NetworkProfileLocationH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12P\n\x0cprofile_type\x18\x90\xc0\xcdG \x01(\x0b\x32\x32.google.cloud.compute.v1.NetworkProfileProfileTypeH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\n\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0b\n\t_featuresB\x05\n\x03_idB\x07\n\x05_kindB\x0b\n\t_locationB\x07\n\x05_nameB\x0f\n\r_profile_typeB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x07\n\x05_zone\"\x92\x01\n\x16NetworkProfileLocation\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05scope\x18\xd4\xfc\x8c\x34 \x01(\tH\x01\x88\x01\x01\"8\n\x05Scope\x12\x13\n\x0fUNDEFINED_SCOPE\x10\x00\x12\r\n\x06REGION\x10\xf4\xb5\xec~\x12\x0b\n\x04ZONE\x10\xac\xb7\xa8\x01\x42\x07\n\x05_nameB\x08\n\x06_scope\"\xb9\x36\n\x1dNetworkProfileNetworkFeatures\x12\x1c\n\x10\x61\x64\x64ress_purposes\x18\x80\xde\xbd\xce\x01 \x03(\t\x12\'\n\x16\x61llow_address_creation\x18\x80\xa2\x83\xd7\x01 \x01(\tH\x00\x88\x01\x01\x12&\n\x15\x61llow_alias_ip_ranges\x18\xc9\x91\xb1\xda\x01 \x01(\tH\x01\x88\x01\x01\x12&\n\x16\x61llow_auto_mode_subnet\x18\x9f\x82\xc9H \x01(\tH\x02\x88\x01\x01\x12\'\n\x17\x61llow_class_d_firewalls\x18\x9b\xe3\xe0> \x01(\tH\x03\x88\x01\x01\x12\x1f\n\x0f\x61llow_cloud_nat\x18\xa1\xd5\xc1y \x01(\tH\x04\x88\x01\x01\x12#\n\x12\x61llow_cloud_router\x18\xc9\xcb\x8d\xd7\x01 \x01(\tH\x05\x88\x01\x01\x12,\n\x1c\x61llow_default_nic_attachment\x18\xae\xee\xda\x19 \x01(\tH\x06\x88\x01\x01\x12(\n\x18\x61llow_external_ip_access\x18\xbe\xb9\xdc> \x01(\tH\x07\x88\x01\x01\x12%\n\x15\x61llow_firewall_policy\x18\xdb\x98\x9by \x01(\tH\x08\x88\x01\x01\x12#\n\x12\x61llow_interconnect\x18\xc4\x93\xe1\x85\x01 \x01(\tH\t\x88\x01\x01\x12$\n\x13\x61llow_ip_forwarding\x18\x9f\xdd\xe8\xee\x01 \x01(\tH\n\x88\x01\x01\x12$\n\x14\x61llow_load_balancing\x18\xb6\x98\xc1j \x01(\tH\x0b\x88\x01\x01\x12/\n\x1f\x61llow_multi_nic_in_same_network\x18\xfc\xb4\x8a* \x01(\tH\x0c\x88\x01\x01\x12\x33\n\"allow_multi_nic_in_same_subnetwork\x18\xe0\x91\xcd\x84\x01 \x01(\tH\r\x88\x01\x01\x12\x1f\n\x0f\x61llow_multicast\x18\x82\xc5\x9f\x05 \x01(\tH\x0e\x88\x01\x01\x12\x1a\n\tallow_ncc\x18\xd8\xde\xc6\xb1\x01 \x01(\tH\x0f\x88\x01\x01\x12\'\n\x17\x61llow_network_migration\x18\x87\xa7\x9fr \x01(\tH\x10\x88\x01\x01\x12\'\n\x16\x61llow_packet_mirroring\x18\x82\xee\x9f\xf4\x01 \x01(\tH\x11\x88\x01\x01\x12,\n\x1b\x61llow_private_google_access\x18\xf8\xff\xd5\xb2\x01 \x01(\tH\x12\x88\x01\x01\x12\x1a\n\tallow_psc\x18\xca\xf1\xc6\xb1\x01 \x01(\tH\x13\x88\x01\x01\x12*\n\x1a\x61llow_same_network_unicast\x18\xfb\xa8\xf1O \x01(\tH\x14\x88\x01\x01\x12#\n\x13\x61llow_static_routes\x18\xc5\x9f\xabX \x01(\tH\x15\x88\x01\x01\x12$\n\x14\x61llow_sub_interfaces\x18\xef\xb2\xf0u \x01(\tH\x16\x88\x01\x01\x12*\n\x19\x61llow_subnetwork_creation\x18\x9a\x94\x83\xdb\x01 \x01(\tH\x17\x88\x01\x01\x12)\n\x18\x61llow_vpc_firewall_rules\x18\xc4\xc7\xdf\xf2\x01 \x01(\tH\x18\x88\x01\x01\x12!\n\x11\x61llow_vpc_peering\x18\xf4\xcb\x83\x37 \x01(\tH\x19\x88\x01\x01\x12\x1a\n\tallow_vpn\x18\xfe\x9d\xc7\xb1\x01 \x01(\tH\x1a\x88\x01\x01\x12!\n\x15\x66irewall_policy_types\x18\x8b\x80\xa9\xba\x01 \x03(\t\x12\x1a\n\x0finterface_types\x18\xf3\xb3\xaaK \x03(\t\x12\x1a\n\tmulticast\x18\xf8\x97\xd8\xc0\x01 \x01(\tH\x1b\x88\x01\x01\x12\x37\n&predefined_network_internal_ipv6_range\x18\xdd\x82\xd7\xfb\x01 \x01(\tH\x1c\x88\x01\x01\x12y\n\x1cpredefined_subnetwork_ranges\x18\xce\xc4\xf3\xc2\x01 \x03(\x0b\x32O.google.cloud.compute.v1.NetworkProfileNetworkFeaturesPredefinedSubnetworkRange\x12\x1b\n\x0fsubnet_purposes\x18\xb7\x9b\xd8\x8f\x01 \x03(\t\x12\x1e\n\x12subnet_stack_types\x18\xa0\xec\xb7\xf8\x01 \x03(\t\x12\x1f\n\x13subnetwork_purposes\x18\xc6\xa0\xf1\xfb\x01 \x03(\t\x12\"\n\x16subnetwork_stack_types\x18\xb1\xea\xa5\xd0\x01 \x03(\t\x12\x17\n\x07unicast\x18\xaf\x90\x91w \x01(\tH\x1d\x88\x01\x01\"\xf3\x01\n\x0f\x41\x64\x64ressPurposes\x12\x1e\n\x1aUNDEFINED_ADDRESS_PURPOSES\x10\x00\x12\x14\n\x0c\x44NS_RESOLVER\x10\xfc\xdc\x83\xe3\x01\x12\x13\n\x0cGCE_ENDPOINT\x10\xab\xc4\xf5m\x12\x1a\n\x12IPSEC_INTERCONNECT\x10\x83\xd2\xaa\xa2\x01\x12\x0f\n\x08NAT_AUTO\x10\xad\xb4\x85N\x12\x1e\n\x17PRIVATE_SERVICE_CONNECT\x10\xc4\xf4\xf9\x16\x12\x12\n\nSERVERLESS\x10\xdc\xc6\xfd\x80\x01\x12\x1f\n\x17SHARED_LOADBALANCER_VIP\x10\xd4\xd3\xb3\x8c\x01\x12\x13\n\x0bVPC_PEERING\x10\xaa\xf3\x8e\xbf\x01\"\x7f\n\x14\x41llowAddressCreation\x12$\n UNDEFINED_ALLOW_ADDRESS_CREATION\x10\x00\x12\x1f\n\x18\x41\x44\x44RESS_CREATION_ALLOWED\x10\xb3\xc2\xdeV\x12 \n\x18\x41\x44\x44RESS_CREATION_BLOCKED\x10\xf7\x82\x8a\xff\x01\"{\n\x12\x41llowAliasIpRanges\x12#\n\x1fUNDEFINED_ALLOW_ALIAS_IP_RANGES\x10\x00\x12\x1f\n\x17\x41LIAS_IP_RANGES_ALLOWED\x10\xe8\x9d\xd5\xdd\x01\x12\x1f\n\x17\x41LIAS_IP_RANGES_BLOCKED\x10\xac\xde\x80\x86\x01\"~\n\x13\x41llowAutoModeSubnet\x12$\n UNDEFINED_ALLOW_AUTO_MODE_SUBNET\x10\x00\x12 \n\x18\x41UTO_MODE_SUBNET_ALLOWED\x10\xb2\xac\xbb\xba\x01\x12\x1f\n\x18\x41UTO_MODE_SUBNET_BLOCKED\x10\xf6\xec\xe6\x62\"\x82\x01\n\x14\x41llowClassDFirewalls\x12%\n!UNDEFINED_ALLOW_CLASS_D_FIREWALLS\x10\x00\x12!\n\x19\x43LASS_D_FIREWALLS_ALLOWED\x10\xfa\xcf\x85\xa6\x01\x12 \n\x19\x43LASS_D_FIREWALLS_BLOCKED\x10\xbe\x90\xb1N\"b\n\rAllowCloudNat\x12\x1d\n\x19UNDEFINED_ALLOW_CLOUD_NAT\x10\x00\x12\x18\n\x11\x43LOUD_NAT_ALLOWED\x10\xa0\xba\xa2u\x12\x18\n\x11\x43LOUD_NAT_BLOCKED\x10\xe4\xfa\xcd\x1d\"o\n\x10\x41llowCloudRouter\x12 \n\x1cUNDEFINED_ALLOW_CLOUD_ROUTER\x10\x00\x12\x1c\n\x14\x43LOUD_ROUTER_ALLOWED\x10\xfc\xc3\x9d\xae\x01\x12\x1b\n\x14\x43LOUD_ROUTER_BLOCKED\x10\xc0\x84\xc9V\"\x96\x01\n\x19\x41llowDefaultNicAttachment\x12*\n&UNDEFINED_ALLOW_DEFAULT_NIC_ATTACHMENT\x10\x00\x12%\n\x1e\x44\x45\x46\x41ULT_NIC_ATTACHMENT_ALLOWED\x10\x81\x9c\xc2\x05\x12&\n\x1e\x44\x45\x46\x41ULT_NIC_ATTACHMENT_BLOCKED\x10\xc5\xdc\xed\xad\x01\"\x86\x01\n\x15\x41llowExternalIpAccess\x12&\n\"UNDEFINED_ALLOW_EXTERNAL_IP_ACCESS\x10\x00\x12!\n\x1a\x45XTERNAL_IP_ACCESS_ALLOWED\x10\xd1\x98\x9d\x34\x12\"\n\x1a\x45XTERNAL_IP_ACCESS_BLOCKED\x10\x95\xd9\xc8\xdc\x01\"{\n\x13\x41llowFirewallPolicy\x12#\n\x1fUNDEFINED_ALLOW_FIREWALL_POLICY\x10\x00\x12\x1f\n\x17\x46IREWALL_POLICY_ALLOWED\x10\x9a\xb9\x9f\xb9\x01\x12\x1e\n\x17\x46IREWALL_POLICY_BLOCKED\x10\xde\xf9\xca\x61\"p\n\x11\x41llowInterconnect\x12 \n\x1cUNDEFINED_ALLOW_INTERCONNECT\x10\x00\x12\x1b\n\x14INTERCONNECT_ALLOWED\x10\xd7\xa5\xd3M\x12\x1c\n\x14INTERCONNECT_BLOCKED\x10\x9b\xe6\xfe\xf5\x01\"s\n\x11\x41llowIpForwarding\x12!\n\x1dUNDEFINED_ALLOW_IP_FORWARDING\x10\x00\x12\x1c\n\x15IP_FORWARDING_ALLOWED\x10\xde\xd8\xe1H\x12\x1d\n\x15IP_FORWARDING_BLOCKED\x10\xa2\x99\x8d\xf1\x01\"w\n\x12\x41llowLoadBalancing\x12\"\n\x1eUNDEFINED_ALLOW_LOAD_BALANCING\x10\x00\x12\x1d\n\x16LOAD_BALANCING_ALLOWED\x10\xa9\xf1\xc5\r\x12\x1e\n\x16LOAD_BALANCING_BLOCKED\x10\xed\xb1\xf1\xb5\x01\"\xa1\x01\n\x1a\x41llowMultiNicInSameNetwork\x12-\n)UNDEFINED_ALLOW_MULTI_NIC_IN_SAME_NETWORK\x10\x00\x12)\n!MULTI_NIC_IN_SAME_NETWORK_ALLOWED\x10\xdb\xfb\x96\xda\x01\x12)\n!MULTI_NIC_IN_SAME_NETWORK_BLOCKED\x10\x9f\xbc\xc2\x82\x01\"\xac\x01\n\x1d\x41llowMultiNicInSameSubnetwork\x12\x30\n,UNDEFINED_ALLOW_MULTI_NIC_IN_SAME_SUBNETWORK\x10\x00\x12,\n$MULTI_NIC_IN_SAME_SUBNETWORK_ALLOWED\x10\xb3\xec\xac\x89\x01\x12+\n$MULTI_NIC_IN_SAME_SUBNETWORK_BLOCKED\x10\xf7\xac\xd8\x31\"d\n\x0e\x41llowMulticast\x12\x1d\n\x19UNDEFINED_ALLOW_MULTICAST\x10\x00\x12\x18\n\x11MULTICAST_ALLOWED\x10\xa1\xf0\xa7\x15\x12\x19\n\x11MULTICAST_BLOCKED\x10\xe5\xb0\xd3\xbd\x01\"M\n\x08\x41llowNcc\x12\x17\n\x13UNDEFINED_ALLOW_NCC\x10\x00\x12\x13\n\x0bNCC_ALLOWED\x10\xf7\xa6\xe5\xde\x01\x12\x13\n\x0bNCC_BLOCKED\x10\xbb\xe7\x90\x87\x01\"\x83\x01\n\x15\x41llowNetworkMigration\x12%\n!UNDEFINED_ALLOW_NETWORK_MIGRATION\x10\x00\x12 \n\x19NETWORK_MIGRATION_ALLOWED\x10\x86\xa4\xee\x06\x12!\n\x19NETWORK_MIGRATION_BLOCKED\x10\xca\xe4\x99\xaf\x01\"\x7f\n\x14\x41llowPacketMirroring\x12$\n UNDEFINED_ALLOW_PACKET_MIRRORING\x10\x00\x12\x1f\n\x18PACKET_MIRRORING_ALLOWED\x10\xf5\xd1\x88,\x12 \n\x18PACKET_MIRRORING_BLOCKED\x10\xb9\x92\xb4\xd4\x01\"\x91\x01\n\x18\x41llowPrivateGoogleAccess\x12)\n%UNDEFINED_ALLOW_PRIVATE_GOOGLE_ACCESS\x10\x00\x12$\n\x1dPRIVATE_GOOGLE_ACCESS_ALLOWED\x10\x97\xe5\xa3i\x12$\n\x1dPRIVATE_GOOGLE_ACCESS_BLOCKED\x10\xdb\xa5\xcf\x11\"L\n\x08\x41llowPsc\x12\x17\n\x13UNDEFINED_ALLOW_PSC\x10\x00\x12\x12\n\x0bPSC_ALLOWED\x10\xe9\x95\xe7Q\x12\x13\n\x0bPSC_BLOCKED\x10\xad\xd6\x92\xfa\x01\"\x8e\x01\n\x17\x41llowSameNetworkUnicast\x12(\n$UNDEFINED_ALLOW_SAME_NETWORK_UNICAST\x10\x00\x12#\n\x1cSAME_NETWORK_UNICAST_ALLOWED\x10\xce\xa8\x95L\x12$\n\x1cSAME_NETWORK_UNICAST_BLOCKED\x10\x92\xe9\xc0\xf4\x01\"s\n\x11\x41llowStaticRoutes\x12!\n\x1dUNDEFINED_ALLOW_STATIC_ROUTES\x10\x00\x12\x1d\n\x15STATIC_ROUTES_ALLOWED\x10\x84\xaf\x86\xc3\x01\x12\x1c\n\x15STATIC_ROUTES_BLOCKED\x10\xc8\xef\xb1k\"u\n\x12\x41llowSubInterfaces\x12\"\n\x1eUNDEFINED_ALLOW_SUB_INTERFACES\x10\x00\x12\x1c\n\x15SUBINTERFACES_ALLOWED\x10\xc3\xb5\xd5K\x12\x1d\n\x15SUBINTERFACES_BLOCKED\x10\x87\xf6\x80\xf4\x01\"\x8b\x01\n\x17\x41llowSubnetworkCreation\x12\'\n#UNDEFINED_ALLOW_SUBNETWORK_CREATION\x10\x00\x12\"\n\x1bSUBNETWORK_CREATION_ALLOWED\x10\xd9\x80\xcfK\x12#\n\x1bSUBNETWORK_CREATION_BLOCKED\x10\x9d\xc1\xfa\xf3\x01\"\x87\x01\n\x15\x41llowVpcFirewallRules\x12&\n\"UNDEFINED_ALLOW_VPC_FIREWALL_RULES\x10\x00\x12\"\n\x1aVPC_FIREWALL_RULES_ALLOWED\x10\xd7\xfa\xb9\xe9\x01\x12\"\n\x1aVPC_FIREWALL_RULES_BLOCKED\x10\x9b\xbb\xe5\x91\x01\"j\n\x0f\x41llowVpcPeering\x12\x1f\n\x1bUNDEFINED_ALLOW_VPC_PEERING\x10\x00\x12\x1a\n\x13VPC_PEERING_ALLOWED\x10\xf3\xc7\xd6|\x12\x1a\n\x13VPC_PEERING_BLOCKED\x10\xb7\x88\x82%\"L\n\x08\x41llowVpn\x12\x17\n\x13UNDEFINED_ALLOW_VPN\x10\x00\x12\x12\n\x0bVPN_ALLOWED\x10\x9d\xda\xa9M\x12\x13\n\x0bVPN_BLOCKED\x10\xe1\x9a\xd5\xf5\x01\"f\n\x13\x46irewallPolicyTypes\x12#\n\x1fUNDEFINED_FIREWALL_POLICY_TYPES\x10\x00\x12\x17\n\x10RDMA_ROCE_POLICY\x10\x99\xb5\xf7\x46\x12\x11\n\nVPC_POLICY\x10\xe8\x8a\xb8#\"\x97\x01\n\x0eInterfaceTypes\x12\x1d\n\x19UNDEFINED_INTERFACE_TYPES\x10\x00\x12\x0c\n\x05GVNIC\x10\x99\x95\xc3 \x12\x0b\n\x04IDPF\x10\xd1\xf0\x88\x01\x12\x0c\n\x05IRDMA\x10\x8f\x86\xac!\x12\x0c\n\x05MRDMA\x10\x93\xc2\x8d#\x12\x1b\n\x14UNSPECIFIED_NIC_TYPE\x10\xd9\xbe\x92 \x12\x12\n\nVIRTIO_NET\x10\xd9\xb6\xcb\xd7\x01\"R\n\tMulticast\x12\x17\n\x13UNDEFINED_MULTICAST\x10\x00\x12\x15\n\rMULTICAST_SDN\x10\xb6\xbe\xe3\xfd\x01\x12\x15\n\rMULTICAST_ULL\x10\xae\xcf\xe3\xfd\x01\"w\n\x0eSubnetPurposes\x12\x1d\n\x19UNDEFINED_SUBNET_PURPOSES\x10\x00\x12&\n\x1eSUBNET_PURPOSE_CUSTOM_HARDWARE\x10\xd3\xdd\x82\x87\x01\x12\x1e\n\x16SUBNET_PURPOSE_PRIVATE\x10\xc0\xec\xe8\xc0\x01\"\xa0\x01\n\x10SubnetStackTypes\x12 \n\x1cUNDEFINED_SUBNET_STACK_TYPES\x10\x00\x12\"\n\x1bSUBNET_STACK_TYPE_IPV4_IPV6\x10\x95\x97\xe2\x13\x12\"\n\x1bSUBNET_STACK_TYPE_IPV4_ONLY\x10\xba\xfa\xec\x13\x12\"\n\x1bSUBNET_STACK_TYPE_IPV6_ONLY\x10\xf8\xdc\x93/\"\xef\x01\n\x12SubnetworkPurposes\x12!\n\x1dUNDEFINED_SUBNETWORK_PURPOSES\x10\x00\x12\x1b\n\x14GLOBAL_MANAGED_PROXY\x10\xf2\xcb\xe0p\x12#\n\x1cINTERNAL_HTTPS_LOAD_BALANCER\x10\xd9\xb6\xcev\x12\x16\n\x0ePEER_MIGRATION\x10\x91\xaa\xc7\xea\x01\x12\x0f\n\x07PRIVATE\x10\xe3\xe2\xb2\xc0\x01\x12\x13\n\x0bPRIVATE_NAT\x10\xa5\xc8\xae\xaf\x01\x12\x17\n\x10PRIVATE_RFC_1918\x10\xdb\xfe\xc5y\x12\x1d\n\x16REGIONAL_MANAGED_PROXY\x10\xee\xb6\xfdH\"r\n\x14SubnetworkStackTypes\x12$\n UNDEFINED_SUBNETWORK_STACK_TYPES\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\x12\x10\n\tIPV6_ONLY\x10\xe4\xad\xfc%\"J\n\x07Unicast\x12\x15\n\x11UNDEFINED_UNICAST\x10\x00\x12\x13\n\x0bUNICAST_SDN\x10\xed\xc7\x96\xb5\x01\x12\x13\n\x0bUNICAST_ULL\x10\xe5\xd8\x96\xb5\x01\x42\x19\n\x17_allow_address_creationB\x18\n\x16_allow_alias_ip_rangesB\x19\n\x17_allow_auto_mode_subnetB\x1a\n\x18_allow_class_d_firewallsB\x12\n\x10_allow_cloud_natB\x15\n\x13_allow_cloud_routerB\x1f\n\x1d_allow_default_nic_attachmentB\x1b\n\x19_allow_external_ip_accessB\x18\n\x16_allow_firewall_policyB\x15\n\x13_allow_interconnectB\x16\n\x14_allow_ip_forwardingB\x17\n\x15_allow_load_balancingB\"\n _allow_multi_nic_in_same_networkB%\n#_allow_multi_nic_in_same_subnetworkB\x12\n\x10_allow_multicastB\x0c\n\n_allow_nccB\x1a\n\x18_allow_network_migrationB\x19\n\x17_allow_packet_mirroringB\x1e\n\x1c_allow_private_google_accessB\x0c\n\n_allow_pscB\x1d\n\x1b_allow_same_network_unicastB\x16\n\x14_allow_static_routesB\x17\n\x15_allow_sub_interfacesB\x1c\n\x1a_allow_subnetwork_creationB\x1b\n\x19_allow_vpc_firewall_rulesB\x14\n\x12_allow_vpc_peeringB\x0c\n\n_allow_vpnB\x0c\n\n_multicastB)\n\'_predefined_network_internal_ipv6_rangeB\n\n\x08_unicast\"\x90\x01\n6NetworkProfileNetworkFeaturesPredefinedSubnetworkRange\x12\x1a\n\nipv6_range\x18\xe5\x81\xef\x17 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bname_prefix\x18\xc6\xa5\xddp \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_ipv6_rangeB\x0e\n\x0c_name_prefix\"\x88\x04\n\x19NetworkProfileProfileType\x12\x1d\n\x0cnetwork_type\x18\xab\xb5\xdc\xf6\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0crdma_subtype\x18\x81\x8b\x8e\' \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0bull_subtype\x18\xf0\xa7\xfc, \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0bvpc_subtype\x18\xa4\xc8\x86\xaa\x01 \x01(\tH\x03\x88\x01\x01\"L\n\x0bNetworkType\x12\x1a\n\x16UNDEFINED_NETWORK_TYPE\x10\x00\x12\x0b\n\x04RDMA\x10\xc6\x9e\x99\x01\x12\t\n\x03ULL\x10\x95\x91\x05\x12\t\n\x03VPC\x10\xc9\x99\x05\"Z\n\x0bRdmaSubtype\x12\x1a\n\x16UNDEFINED_RDMA_SUBTYPE\x10\x00\x12\x0e\n\x06\x46\x41LCON\x10\xd1\x89\xab\xd9\x01\x12\x0b\n\x04ROCE\x10\xdf\xee\x99\x01\x12\x12\n\nROCE_METAL\x10\x87\x94\xed\xc8\x01\"M\n\nUllSubtype\x12\x19\n\x15UNDEFINED_ULL_SUBTYPE\x10\x00\x12\x10\n\x08OPERATOR\x10\xa4\xb1\xc0\x86\x01\x12\x12\n\x0bPARTICIPANT\x10\x93\x86\xc6p\"8\n\nVpcSubtype\x12\x19\n\x15UNDEFINED_VPC_SUBTYPE\x10\x00\x12\x0f\n\x08REGIONAL\x10\x9f\xec\x80,B\x0f\n\r_network_typeB\x0f\n\r_rdma_subtypeB\x0e\n\x0c_ull_subtypeB\x0e\n\x0c_vpc_subtype\"\xee\x02\n\x1bNetworkProfilesListResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.NetworkProfile\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xae\x06\n\x14NetworkRoutingConfig\x12&\n\x16\x62gp_always_compare_med\x18\xb6\xe2\xce\x65 \x01(\x08H\x00\x88\x01\x01\x12-\n\x1c\x62gp_best_path_selection_mode\x18\xe9\xfb\xc5\x97\x01 \x01(\tH\x01\x88\x01\x01\x12&\n\x15\x62gp_inter_region_cost\x18\xe1\xf9\xae\xdc\x01 \x01(\tH\x02\x88\x01\x01\x12\x30\n effective_bgp_always_compare_med\x18\xce\xf5\xad\x66 \x01(\x08H\x03\x88\x01\x01\x12/\n\x1f\x65\x66\x66\x65\x63tive_bgp_inter_region_cost\x18\xc9\xc0\xa1X \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x0crouting_mode\x18\xfc\xba\xc8\xe2\x01 \x01(\tH\x05\x88\x01\x01\"g\n\x18\x42gpBestPathSelectionMode\x12*\n&UNDEFINED_BGP_BEST_PATH_SELECTION_MODE\x10\x00\x12\r\n\x06LEGACY\x10\xc9\xcf\xf7,\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\"b\n\x12\x42gpInterRegionCost\x12#\n\x1fUNDEFINED_BGP_INTER_REGION_COST\x10\x00\x12\x17\n\x0f\x41\x44\x44_COST_TO_MED\x10\xdc\xe7\xf6\xe9\x01\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\"L\n\x1b\x45\x66\x66\x65\x63tiveBgpInterRegionCost\x12-\n)UNDEFINED_EFFECTIVE_BGP_INTER_REGION_COST\x10\x00\"J\n\x0bRoutingMode\x12\x1a\n\x16UNDEFINED_ROUTING_MODE\x10\x00\x12\x0e\n\x06GLOBAL\x10\xa3\xef\xef\xeb\x01\x12\x0f\n\x08REGIONAL\x10\x9f\xec\x80,B\x19\n\x17_bgp_always_compare_medB\x1f\n\x1d_bgp_best_path_selection_modeB\x18\n\x16_bgp_inter_region_costB#\n!_effective_bgp_always_compare_medB\"\n _effective_bgp_inter_region_costB\x0f\n\r_routing_mode\"\x84\x02\n\x19NetworksAddPeeringRequest\x12\"\n\x12\x61uto_create_routes\x18\xdd\xe2\xb2\x1b \x01(\x08H\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12I\n\x0fnetwork_peering\x18\xaf\x8c\xec\x9c\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.NetworkPeeringH\x02\x88\x01\x01\x12\x1d\n\x0cpeer_network\x18\xd1\xe0\xdb\xee\x01 \x01(\tH\x03\x88\x01\x01\x42\x15\n\x13_auto_create_routesB\x07\n\x05_nameB\x12\n\x10_network_peeringB\x0f\n\r_peer_network\"\xd6\x01\n%NetworksGetEffectiveFirewallsResponse\x12s\n\x10\x66irewall_policys\x18\xc2\xca\xfc\xc3\x01 \x03(\x0b\x32U.google.cloud.compute.v1.NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy\x12\x38\n\tfirewalls\x18\xf3\xc6\xe8\x81\x01 \x03(\x0b\x32!.google.cloud.compute.v1.Firewall\"\xf3\x03\n.google.cloud.compute.v1.NodeTemplateAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a^\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12?\n\x05value\x18\x02 \x01(\x0b\x32\x30.google.cloud.compute.v1.NodeTemplatesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa9\x02\n\x10NodeTemplateList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x37\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32%.google.cloud.compute.v1.NodeTemplate\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x8e\x01\n\x1fNodeTemplateNodeTypeFlexibility\x12\x14\n\x04\x63pus\x18\xcb\xe7\xba\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\tlocal_ssd\x18\xb0\xbe\xbc\xc1\x01 \x01(\tH\x01\x88\x01\x01\x12\x17\n\x06memory\x18\x81\xfa\x8a\xfe\x01 \x01(\tH\x02\x88\x01\x01\x42\x07\n\x05_cpusB\x0c\n\n_local_ssdB\t\n\x07_memory\"\xa3\x01\n\x17NodeTemplatesScopedList\x12\x41\n\x0enode_templates\x18\xbc\xa2\xed\xa8\x01 \x03(\x0b\x32%.google.cloud.compute.v1.NodeTemplate\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xc6\x04\n\x08NodeType\x12\x1d\n\x0c\x63pu_platform\x18\xaa\xea\xd1\xc3\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\nguest_cpus\x18\xd2\xcb\xc8\xbb\x01 \x01(\x05H\x04\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12\x1d\n\x0clocal_ssd_gb\x18\xca\x88\xff\x9c\x01 \x01(\x05H\x07\x88\x01\x01\x12\x18\n\x07max_vms\x18\xc1\x96\xd5\x92\x01 \x01(\x05H\x08\x88\x01\x01\x12\x19\n\tmemory_mb\x18\x93\x93\xa8\x37 \x01(\x05H\t\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\n\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0b\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0c\x88\x01\x01\x42\x0f\n\r_cpu_platformB\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\r\n\x0b_guest_cpusB\x05\n\x03_idB\x07\n\x05_kindB\x0f\n\r_local_ssd_gbB\n\n\x08_max_vmsB\x0c\n\n_memory_mbB\x07\n\x05_nameB\x0c\n\n_self_linkB\x07\n\x05_zone\"\xb9\x03\n\x16NodeTypeAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12L\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32:.google.cloud.compute.v1.NodeTypeAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aZ\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12;\n\x05value\x18\x02 \x01(\x0b\x32,.google.cloud.compute.v1.NodeTypesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa1\x02\n\x0cNodeTypeList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x33\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32!.google.cloud.compute.v1.NodeType\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x97\x01\n\x13NodeTypesScopedList\x12\x39\n\nnode_types\x18\xfc\xbf\xf5\xe5\x01 \x03(\x0b\x32!.google.cloud.compute.v1.NodeType\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x90\x03\n\x14NotificationEndpoint\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12Y\n\rgrpc_settings\x18\xa4\xc6\xc0\xd9\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.NotificationEndpointGrpcSettingsH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x10\n\x0e_grpc_settingsB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x0c\n\n_self_link\"\xdd\x03\n\"NotificationEndpointAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12X\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x46.google.cloud.compute.v1.NotificationEndpointAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x66\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12G\n\x05value\x18\x02 \x01(\x0b\x32\x38.google.cloud.compute.v1.NotificationEndpointsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb7\x02\n NotificationEndpointGrpcSettings\x12\x1a\n\tauthority\x18\xc3\x8e\xd0\xbf\x01 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08\x65ndpoint\x18\x95\xbb\x9c> \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x0cpayload_name\x18\x9c\xb5\x9c\x8f\x01 \x01(\tH\x02\x88\x01\x01\x12\x43\n\x0fresend_interval\x18\xc9\xb8\x88\xe4\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x03\x88\x01\x01\x12\"\n\x12retry_duration_sec\x18\xdd\xce\x94\x37 \x01(\rH\x04\x88\x01\x01\x42\x0c\n\n_authorityB\x0b\n\t_endpointB\x0f\n\r_payload_nameB\x12\n\x10_resend_intervalB\x15\n\x13_retry_duration_sec\"\xb9\x02\n\x18NotificationEndpointList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.NotificationEndpoint\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xad\x01\n\x1fNotificationEndpointsScopedList\x12\x43\n\tresources\x18\xa5\xfc\xb2N \x03(\x0b\x32-.google.cloud.compute.v1.NotificationEndpoint\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xc6\r\n\tOperation\x12$\n\x13\x63lient_operation_id\x18\xe7\x8d\xde\x8d\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x08\x65nd_time\x18\xb1\xa7\xe7\x36 \x01(\tH\x03\x88\x01\x01\x12\x35\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x1e.google.cloud.compute.v1.ErrorH\x04\x88\x01\x01\x12\x64\n\x1eget_version_operation_metadata\x18\xd7\x90\xcdR \x01(\x0b\x32\x34.google.cloud.compute.v1.GetVersionOperationMetadataH\x05\x88\x01\x01\x12\'\n\x12http_error_message\x18\xd9\xfa\xc8` \x01(\tB\x03\xe8G\x04H\x06\x88\x01\x01\x12,\n\x16http_error_status_code\x18\xec\x84\xf8\x94\x01 \x01(\x05\x42\x03\xe8G\x03H\x07\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x08\x88\x01\x01\x12\x1c\n\x0binsert_time\x18\x93\xa9\xe8\xce\x01 \x01(\tH\t\x88\x01\x01\x12w\n(instances_bulk_insert_operation_metadata\x18\xc1\x86\xc1* \x01(\x0b\x32=.google.cloud.compute.v1.InstancesBulkInsertOperationMetadataH\n\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x0b\x88\x01\x01\x12\x19\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tB\x03\xe8G\x01H\x0c\x88\x01\x01\x12\"\n\x12operation_group_id\x18\xb3\xed\x93\x13 \x01(\tH\r\x88\x01\x01\x12\x1e\n\x0eoperation_type\x18\x92\xf6\xdaT \x01(\tH\x0e\x88\x01\x01\x12\x18\n\x08progress\x18\xad\x84\xd3\" \x01(\x05H\x0f\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x10\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x11\x88\x01\x01\x12\x85\x01\n/set_common_instance_metadata_operation_metadata\x18\xe4\xad\xea\xe9\x01 \x01(\x0b\x32\x43.google.cloud.compute.v1.SetCommonInstanceMetadataOperationMetadataH\x12\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x13\x88\x01\x01\x12\x46\n\x06status\x18\xf2\x9f\xb7V \x01(\x0e\x32).google.cloud.compute.v1.Operation.StatusB\x03\xe8G\x02H\x14\x88\x01\x01\x12\x1f\n\x0estatus_message\x18\xba\xc9\xe9\x8d\x01 \x01(\tH\x15\x88\x01\x01\x12\x19\n\ttarget_id\x18\x89\x95\x8d{ \x01(\x04H\x16\x88\x01\x01\x12\x1b\n\x0btarget_link\x18\xe8\x93\xf1\x1d \x01(\tH\x17\x88\x01\x01\x12\x14\n\x04user\x18\xcb\xd7\xdb\x01 \x01(\tH\x18\x88\x01\x01\x12\x37\n\x08warnings\x18\xd7\x88\xc1\xed\x01 \x03(\x0b\x32!.google.cloud.compute.v1.Warnings\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x19\x88\x01\x01\"K\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0b\n\x04\x44ONE\x10\x82\xb7\x80\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x42\x16\n\x14_client_operation_idB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0b\n\t_end_timeB\x08\n\x06_errorB!\n\x1f_get_version_operation_metadataB\x15\n\x13_http_error_messageB\x19\n\x17_http_error_status_codeB\x05\n\x03_idB\x0e\n\x0c_insert_timeB+\n)_instances_bulk_insert_operation_metadataB\x07\n\x05_kindB\x07\n\x05_nameB\x15\n\x13_operation_group_idB\x11\n\x0f_operation_typeB\x0b\n\t_progressB\t\n\x07_regionB\x0c\n\n_self_linkB2\n0_set_common_instance_metadata_operation_metadataB\r\n\x0b_start_timeB\t\n\x07_statusB\x11\n\x0f_status_messageB\x0c\n\n_target_idB\x0e\n\x0c_target_linkB\x07\n\x05_userB\x07\n\x05_zone\"\xbc\x03\n\x17OperationAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12M\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32;.google.cloud.compute.v1.OperationAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a[\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12<\n\x05value\x18\x02 \x01(\x0b\x32-.google.cloud.compute.v1.OperationsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa3\x02\n\rOperationList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x34\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\".google.cloud.compute.v1.Operation\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x98\x01\n\x14OperationsScopedList\x12\x39\n\noperations\x18\xec\xaf\xff\x01 \x03(\x0b\x32\".google.cloud.compute.v1.Operation\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xa3\x01\n4OrganizationSecurityPoliciesListAssociationsResponse\x12L\n\x0c\x61ssociations\x18\x92\xe8\xca\xf2\x01 \x03(\x0b\x32\x32.google.cloud.compute.v1.SecurityPolicyAssociation\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_kind\"\xda\x06\n\x10OutlierDetection\x12\x45\n\x12\x62\x61se_ejection_time\x18\x87\xd7\xcf& \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x00\x88\x01\x01\x12#\n\x12\x63onsecutive_errors\x18\xa0\xb3\xd0\xb8\x01 \x01(\x05H\x01\x88\x01\x01\x12,\n\x1b\x63onsecutive_gateway_failure\x18\xfa\xb7\x8a\xc7\x01 \x01(\x05H\x02\x88\x01\x01\x12,\n\x1c\x65nforcing_consecutive_errors\x18\xc0\xd3\xd0\x65 \x01(\x05H\x03\x88\x01\x01\x12\x36\n%enforcing_consecutive_gateway_failure\x18\xda\xdf\x8a\xbc\x01 \x01(\x05H\x04\x88\x01\x01\x12&\n\x16\x65nforcing_success_rate\x18\xbc\xef\xdf\\ \x01(\x05H\x05\x88\x01\x01\x12;\n\x08interval\x18\xc5\xc9\xff\x0f \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x06\x88\x01\x01\x12$\n\x14max_ejection_percent\x18\x98\xa6\xe5\x08 \x01(\x05H\x07\x88\x01\x01\x12+\n\x1asuccess_rate_minimum_hosts\x18\xf7\xa1\xda\xfa\x01 \x01(\x05H\x08\x88\x01\x01\x12,\n\x1bsuccess_rate_request_volume\x18\xcd\xeb\x98\x86\x01 \x01(\x05H\t\x88\x01\x01\x12)\n\x19success_rate_stdev_factor\x18\x9d\x83\xa9S \x01(\x05H\n\x88\x01\x01\x42\x15\n\x13_base_ejection_timeB\x15\n\x13_consecutive_errorsB\x1e\n\x1c_consecutive_gateway_failureB\x1f\n\x1d_enforcing_consecutive_errorsB(\n&_enforcing_consecutive_gateway_failureB\x19\n\x17_enforcing_success_rateB\x0b\n\t_intervalB\x17\n\x15_max_ejection_percentB\x1d\n\x1b_success_rate_minimum_hostsB\x1e\n\x1c_success_rate_request_volumeB\x1c\n\x1a_success_rate_stdev_factor\"\xc6\x03\n\x0fPacketIntervals\x12\x16\n\x06\x61vg_ms\x18\xb3\xdc\xd4\x61 \x01(\x03H\x00\x88\x01\x01\x12\x18\n\x08\x64uration\x18\x94\x9b\x91J \x01(\tH\x01\x88\x01\x01\x12\x17\n\x06max_ms\x18\xe1\xc4\xbc\xfc\x01 \x01(\x03H\x02\x88\x01\x01\x12\x17\n\x06min_ms\x18\xb3\xa5\xed\xff\x01 \x01(\x03H\x03\x88\x01\x01\x12\x1d\n\rnum_intervals\x18\xd5\xd5\xecX \x01(\x03H\x04\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x05\x88\x01\x01\"g\n\x08\x44uration\x12\x16\n\x12UNDEFINED_DURATION\x10\x00\x12\x1c\n\x14\x44URATION_UNSPECIFIED\x10\xec\xf9\xa3\xfc\x01\x12\x0b\n\x04HOUR\x10\xe4\xdb\x87\x01\x12\t\n\x03MAX\x10\xc4\xd2\x04\x12\r\n\x06MINUTE\x10\x94\xb4\xba<\"h\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x10\n\x08LOOPBACK\x10\x8b\x93\xeb\xa9\x01\x12\x0e\n\x07RECEIVE\x10\xc3\xfd\xb7Z\x12\x10\n\x08TRANSMIT\x10\xb0\x85\xfb\xd7\x01\x12\x18\n\x10TYPE_UNSPECIFIED\x10\x92\xfb\xdb\xd0\x01\x42\t\n\x07_avg_msB\x0b\n\t_durationB\t\n\x07_max_msB\t\n\x07_min_msB\x10\n\x0e_num_intervalsB\x07\n\x05_type\"\xba\x06\n\x0fPacketMirroring\x12Z\n\rcollector_ilb\x18\xed\x89\xb6\xcb\x01 \x01(\x0b\x32:.google.cloud.compute.v1.PacketMirroringForwardingRuleInfoH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\tH\x03\x88\x01\x01\x12G\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\x0b\x32..google.cloud.compute.v1.PacketMirroringFilterH\x04\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12`\n\x12mirrored_resources\x18\xc4\x9f\xc2; \x01(\x0b\x32<.google.cloud.compute.v1.PacketMirroringMirroredResourceInfoH\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12L\n\x07network\x18\xae\xb4\x85o \x01(\x0b\x32\x33.google.cloud.compute.v1.PacketMirroringNetworkInfoH\t\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\rH\n\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0b\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\"9\n\x06\x45nable\x12\x14\n\x10UNDEFINED_ENABLE\x10\x00\x12\x0c\n\x05\x46\x41LSE\x10\x83\xc2\xe4\x1f\x12\x0b\n\x04TRUE\x10\x8e\xdb\x9d\x01\x42\x10\n\x0e_collector_ilbB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\t\n\x07_enableB\t\n\x07_filterB\x05\n\x03_idB\x07\n\x05_kindB\x15\n\x13_mirrored_resourcesB\x07\n\x05_nameB\n\n\x08_networkB\x0b\n\t_priorityB\t\n\x07_regionB\x0c\n\n_self_link\"\xce\x03\n\x1dPacketMirroringAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12S\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x41.google.cloud.compute.v1.PacketMirroringAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.PacketMirroringsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xc6\x01\n\x15PacketMirroringFilter\x12\x18\n\rI_p_protocols\x18\xd6\xd9\xfe. \x03(\t\x12\x17\n\x0b\x63idr_ranges\x18\x81\x94\xd3\xe8\x01 \x03(\t\x12\x19\n\tdirection\x18\xff\x8e\x80\x35 \x01(\tH\x00\x88\x01\x01\"Q\n\tDirection\x12\x17\n\x13UNDEFINED_DIRECTION\x10\x00\x12\n\n\x04\x42OTH\x10\x81\xe7|\x12\x0e\n\x06\x45GRESS\x10\xf5\xf6\xb4\xce\x01\x12\x0f\n\x07INGRESS\x10\x95\xfd\xbe\xf6\x01\x42\x0c\n\n_direction\"q\n!PacketMirroringForwardingRuleInfo\x12\x1e\n\rcanonical_url\x18\xa4\xff\xa3\xf4\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03url\x18\xef\x8a\x07 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_canonical_urlB\x06\n\x04_url\"\xaf\x02\n\x13PacketMirroringList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.PacketMirroring\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xf7\x01\n#PacketMirroringMirroredResourceInfo\x12^\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32H.google.cloud.compute.v1.PacketMirroringMirroredResourceInfoInstanceInfo\x12_\n\x0bsubnetworks\x18\xc5\xd4\xa5\xc6\x01 \x03(\x0b\x32\x46.google.cloud.compute.v1.PacketMirroringMirroredResourceInfoSubnetInfo\x12\x0f\n\x04tags\x18\x99\xe8\xd8\x01 \x03(\t\"\x7f\n/PacketMirroringMirroredResourceInfoInstanceInfo\x12\x1e\n\rcanonical_url\x18\xa4\xff\xa3\xf4\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03url\x18\xef\x8a\x07 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_canonical_urlB\x06\n\x04_url\"}\n-PacketMirroringMirroredResourceInfoSubnetInfo\x12\x1e\n\rcanonical_url\x18\xa4\xff\xa3\xf4\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03url\x18\xef\x8a\x07 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_canonical_urlB\x06\n\x04_url\"j\n\x1aPacketMirroringNetworkInfo\x12\x1e\n\rcanonical_url\x18\xa4\xff\xa3\xf4\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03url\x18\xef\x8a\x07 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_canonical_urlB\x06\n\x04_url\"\xab\x01\n\x1aPacketMirroringsScopedList\x12\x46\n\x11packet_mirrorings\x18\xa7\xfa\xdcI \x03(\x0b\x32(.google.cloud.compute.v1.PacketMirroring\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xf9\x01\n\x16PatchAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tH\x00\x88\x01\x01\x12H\n\x13\x61utoscaler_resource\x18\xf6\xf0\xff\x62 \x01(\x0b\x32#.google.cloud.compute.v1.AutoscalerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_autoscalerB\r\n\x0b_request_id\"\xdb\x01\n\x19PatchBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12P\n\x17\x62\x61\x63kend_bucket_resource\x18\x98\xce\xc7\xb5\x01 \x01(\x0b\x32&.google.cloud.compute.v1.BackendBucketB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe0\x01\n\x1aPatchBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x62\x61\x63kend_service_resource\x18\xa3\x81\xdf\xa5\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.BackendServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc7\x02\n\x1cPatchCrossSiteNetworkRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12V\n\x1b\x63ross_site_network_resource\x18\xb8\xe4\xdd\x0e \x01(\x0b\x32).google.cloud.compute.v1.CrossSiteNetworkB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x02\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_maskB\x10\n\x0e_validate_only\"\xbd\x01\n\x1aPatchFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x66irewall_policy_resource\x18\xbc\xb6\x87\xec\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicyB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc5\x01\n\x14PatchFirewallRequest\x12\x19\n\x08\x66irewall\x18\x80\xfa\xd5\xf3\x01 \x01(\tB\x03\xe0\x41\x02\x12\x44\n\x11\x66irewall_resource\x18\xed\xb0\xe0\x13 \x01(\x0b\x32!.google.cloud.compute.v1.FirewallB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x81\x02\n\x1aPatchForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x66orwarding_rule_resource\x18\xaf\xc0\xd0\x8f\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.ForwardingRuleB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe6\x01\n PatchGlobalForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x66orwarding_rule_resource\x18\xaf\xc0\xd0\x8f\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.ForwardingRuleB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x83\x02\n(PatchGlobalPublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12`\n public_delegated_prefix_resource\x18\x85\xf8\xd8\x16 \x01(\x0b\x32..google.cloud.compute.v1.PublicDelegatedPrefixB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd3\x01\n\x17PatchHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12K\n\x15health_check_resource\x18\xa8\xc3\xa4` \x01(\x0b\x32$.google.cloud.compute.v1.HealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb9\x01\n\x11PatchImageRequest\x12\x15\n\x05image\x18\xdb\xd2\xea/ \x01(\tB\x03\xe0\x41\x02\x12?\n\x0eimage_resource\x18\xf2\xc4\xfe\xb0\x01 \x01(\x0b\x32\x1e.google.cloud.compute.v1.ImageB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x95\x02\n PatchInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12^\n\x1finstance_group_manager_resource\x18\x8a\x8a\xbe| \x01(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManagerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x8e\x02\n\x1bPatchInstanceSettingRequest\x12V\n\x1ainstance_settings_resource\x18\x80\xa7\xce\x8a\x01 \x01(\x0b\x32).google.cloud.compute.v1.InstanceSettingsB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xc2\x02\n\'PatchInterconnectAttachmentGroupRequest\x12-\n\x1dinterconnect_attachment_group\x18\xf4\xef\x98$ \x01(\tB\x03\xe0\x41\x02\x12l\n&interconnect_attachment_group_resource\x18\xf9\xdf\xe1\x04 \x01(\x0b\x32\x34.google.cloud.compute.v1.InterconnectAttachmentGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xa0\x02\n\"PatchInterconnectAttachmentRequest\x12(\n\x17interconnect_attachment\x18\xf4\x8a\xf7\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12\x61\n interconnect_attachment_resource\x18\xf9\xa4\xa0\x65 \x01(\x0b\x32/.google.cloud.compute.v1.InterconnectAttachmentB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x99\x02\n\x1dPatchInterconnectGroupRequest\x12#\n\x12interconnect_group\x18\x8e\xb7\xa9\xb9\x01 \x01(\tB\x03\xe0\x41\x02\x12W\n\x1binterconnect_group_resource\x18\x9f\xf3\xe6( \x01(\x0b\x32*.google.cloud.compute.v1.InterconnectGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xd5\x01\n\x18PatchInterconnectRequest\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tB\x03\xe0\x41\x02\x12M\n\x15interconnect_resource\x18\x9f\xa1\xcc\xbd\x01 \x01(\x0b\x32%.google.cloud.compute.v1.InterconnectB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x8b\x02\n\x1dPatchNetworkAttachmentRequest\x12\"\n\x12network_attachment\x18\xd4\x97\x8fk \x01(\tB\x03\xe0\x41\x02\x12W\n\x1bnetwork_attachment_resource\x18\x99\xf0\xcc\x64 \x01(\x0b\x32*.google.cloud.compute.v1.NetworkAttachmentB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x83\x03\n&PatchNetworkEdgeSecurityServiceRequest\x12-\n\x1dnetwork_edge_security_service\x18\xa7\x9f\xefJ \x01(\tB\x03\xe0\x41\x02\x12l\n&network_edge_security_service_resource\x18\xa6\xa3\xdb\xe3\x01 \x01(\x0b\x32\x33.google.cloud.compute.v1.NetworkEdgeSecurityServiceB\x03\xe0\x41\x02\x12\x15\n\x05paths\x18\xee\xc1\xe0\x32 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x02\x88\x01\x01\x42\x08\n\x06_pathsB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xe7\x01\n!PatchNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x66irewall_policy_resource\x18\xbc\xb6\x87\xec\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicyB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc0\x01\n\x13PatchNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12\x42\n\x10network_resource\x18\xff\xdd\x9c: \x01(\x0b\x32 .google.cloud.compute.v1.NetworkB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe9\x01\n\x15PatchNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12H\n\x13node_group_resource\x18\xab\xb3\xfa\xf0\x01 \x01(\x0b\x32\".google.cloud.compute.v1.NodeGroupB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xc7\x01\n&PatchOrganizationSecurityPolicyRequest\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12Q\n\x18security_policy_resource\x18\xfc\xaa\x89g \x01(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x84\x02\n\x1bPatchPacketMirroringRequest\x12 \n\x10packet_mirroring\x18\xcc\xb9\xd1\n \x01(\tB\x03\xe0\x41\x02\x12T\n\x19packet_mirroring_resource\x18\xa1\xfc\xa8\xeb\x01 \x01(\x0b\x32(.google.cloud.compute.v1.PacketMirroringB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xaa\x02\n4PatchPacketMirroringRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xe4\x02\n2PatchPerInstanceConfigsInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x9a\x01\n?instance_group_managers_patch_per_instance_configs_req_resource\x18\xff\x9b\x88\xaa\x01 \x01(\x0b\x32H.google.cloud.compute.v1.InstanceGroupManagersPatchPerInstanceConfigsReqB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xef\x02\n8PatchPerInstanceConfigsRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9b\x01\n@region_instance_group_manager_patch_instance_config_req_resource\x18\xca\xcd\xa1^ \x01(\x0b\x32I.google.cloud.compute.v1.RegionInstanceGroupManagerPatchInstanceConfigReqB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x81\x02\n#PatchPublicAdvertisedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12(\n\x18public_advertised_prefix\x18\x9e\xf7\xc9\x30 \x01(\tB\x03\xe0\x41\x02\x12\x62\n!public_advertised_prefix_resource\x18\x8f\xd7\xb2o \x01(\x0b\x32/.google.cloud.compute.v1.PublicAdvertisedPrefixB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9e\x02\n\"PatchPublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12`\n public_delegated_prefix_resource\x18\x85\xf8\xd8\x16 \x01(\x0b\x32..google.cloud.compute.v1.PublicDelegatedPrefixB\x03\xe0\x41\x02\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x83\x02\n\x1cPatchRegionAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tH\x00\x88\x01\x01\x12H\n\x13\x61utoscaler_resource\x18\xf6\xf0\xff\x62 \x01(\x0b\x32#.google.cloud.compute.v1.AutoscalerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_autoscalerB\r\n\x0b_request_id\"\x82\x02\n\x1fPatchRegionBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12P\n\x17\x62\x61\x63kend_bucket_resource\x18\x98\xce\xc7\xb5\x01 \x01(\x0b\x32&.google.cloud.compute.v1.BackendBucketB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x87\x02\n PatchRegionBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x62\x61\x63kend_service_resource\x18\xa3\x81\xdf\xa5\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.BackendServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa0\x02\n&PatchRegionCompositeHealthCheckRequest\x12\'\n\x16\x63omposite_health_check\x18\x9d\xc0\xd6\xde\x01 \x01(\tB\x03\xe0\x41\x02\x12^\n\x1f\x63omposite_health_check_resource\x18\xf0\xcb\x84? \x01(\x0b\x32-.google.cloud.compute.v1.CompositeHealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xac\x02\n)PatchRegionHealthAggregationPolicyRequest\x12)\n\x19health_aggregation_policy\x18\xf2\xcf\xcbr \x01(\tB\x03\xe0\x41\x02\x12\x65\n\"health_aggregation_policy_resource\x18\xbb\xbb\xfb\x8b\x01 \x01(\x0b\x32\x30.google.cloud.compute.v1.HealthAggregationPolicyB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xfa\x01\n\x1dPatchRegionHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12K\n\x15health_check_resource\x18\xa8\xc3\xa4` \x01(\x0b\x32$.google.cloud.compute.v1.HealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x99\x02\n$PatchRegionHealthCheckServiceRequest\x12%\n\x14health_check_service\x18\xdb\x9b\xdd\xc2\x01 \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dhealth_check_service_resource\x18\xf2\x9b\xd0\xe3\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HealthCheckServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xff\x01\n\x1ePatchRegionHealthSourceRequest\x12\x1e\n\rhealth_source\x18\xde\x86\xc5\xb3\x01 \x01(\tB\x03\xe0\x41\x02\x12N\n\x16health_source_resource\x18\xcf\xb7\xca\xaa\x01 \x01(\x0b\x32%.google.cloud.compute.v1.HealthSourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9f\x02\n&PatchRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12^\n\x1finstance_group_manager_resource\x18\x8a\x8a\xbe| \x01(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManagerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x8e\x02\n\'PatchRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x66irewall_policy_resource\x18\xbc\xb6\x87\xec\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.FirewallPolicyB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb3\x02\n PatchRegionSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12Q\n\x18security_policy_resource\x18\xfc\xaa\x89g \x01(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicyB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\x98\x02\n!PatchRegionSnapshotSettingRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12V\n\x1asnapshot_settings_resource\x18\xef\x8d\xc6\xaa\x01 \x01(\x0b\x32).google.cloud.compute.v1.SnapshotSettingsB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xf3\x01\n\x1bPatchRegionSslPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tB\x03\xe0\x41\x02\x12H\n\x13ssl_policy_resource\x18\xc8\x88\x8a\x83\x01 \x01(\x0b\x32\".google.cloud.compute.v1.SslPolicyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x90\x02\n\"PatchRegionTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x12W\n\x1btarget_https_proxy_resource\x18\x81\xad\xe4\xce\x01 \x01(\x0b\x32).google.cloud.compute.v1.TargetHttpsProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe6\x01\n\x18PatchRegionUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x12\x41\n\x10url_map_resource\x18\xe1\x90\xb7P \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xad\x02\n\x1aPatchResourcePolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fresource_policy\x18\x83\xa5\xf7K \x01(\tB\x03\xe0\x41\x02\x12Q\n\x18resource_policy_resource\x18\xca\x8c\xd1$ \x01(\x0b\x32\'.google.cloud.compute.v1.ResourcePolicyB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xf3\x01\n\x1dPatchRoutePolicyRouterRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12K\n\x15route_policy_resource\x18\x85\xbd\xb5\x37 \x01(\x0b\x32$.google.cloud.compute.v1.RoutePolicyB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xdd\x01\n\x12PatchRouterRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x12@\n\x0frouter_resource\x18\xc4\x80\x82J \x01(\x0b\x32\x1f.google.cloud.compute.v1.RouterB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf1\x01\n\x1ePatchRuleFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\x9b\x02\n%PatchRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xfd\x01\n*PatchRuleOrganizationSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dsecurity_policy_rule_resource\x18\xc3\xba\x82\xc0\x01 \x01(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRuleB\x03\xe0\x41\x02\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xc2\x02\n+PatchRuleRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x66irewall_policy_rule_resource\x18\x83\xdf\xbaw \x01(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRuleB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xef\x02\n$PatchRuleRegionSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dsecurity_policy_rule_resource\x18\xc3\xba\x82\xc0\x01 \x01(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRuleB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x02\x88\x01\x01\x42\x0b\n\t_priorityB\x0e\n\x0c_update_maskB\x10\n\x0e_validate_only\"\xc8\x02\n\x1ePatchRuleSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12[\n\x1dsecurity_policy_rule_resource\x18\xc3\xba\x82\xc0\x01 \x01(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRuleB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x02\x88\x01\x01\x42\x0b\n\t_priorityB\x0e\n\x0c_update_maskB\x10\n\x0e_validate_only\"\x8c\x02\n\x1aPatchSecurityPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x12Q\n\x18security_policy_resource\x18\xfc\xaa\x89g \x01(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicyB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\x8d\x02\n\x1dPatchServiceAttachmentRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12#\n\x12service_attachment\x18\xed\xa9\xd0\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x12X\n\x1bservice_attachment_resource\x18\xa0\xb6\xc4\xe1\x01 \x01(\x0b\x32*.google.cloud.compute.v1.ServiceAttachmentB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf1\x01\n\x1bPatchSnapshotSettingRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12V\n\x1asnapshot_settings_resource\x18\xef\x8d\xc6\xaa\x01 \x01(\x0b\x32).google.cloud.compute.v1.SnapshotSettingsB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xcc\x01\n\x15PatchSslPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tB\x03\xe0\x41\x02\x12H\n\x13ssl_policy_resource\x18\xc8\x88\x8a\x83\x01 \x01(\x0b\x32\".google.cloud.compute.v1.SslPolicyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb0\x02\n\x16PatchSubnetworkRequest\x12&\n\x15\x64rain_timeout_seconds\x18\xda\xda\xc8\xaa\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12H\n\x13subnetwork_resource\x18\xbf\xda\x91\x14 \x01(\x0b\x32#.google.cloud.compute.v1.SubnetworkB\x03\xe0\x41\x02\x42\x18\n\x16_drain_timeout_secondsB\r\n\x0b_request_id\"\xe5\x01\n\x1bPatchTargetGrpcProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_grpc_proxy\x18\xfb\xb4\xb2\x02 \x01(\tB\x03\xe0\x41\x02\x12U\n\x1atarget_grpc_proxy_resource\x18\xd2\xea\xeb\x9c\x01 \x01(\x0b\x32(.google.cloud.compute.v1.TargetGrpcProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe4\x01\n\x1bPatchTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\x12T\n\x1atarget_http_proxy_resource\x18\xa8\xaf\xe3\x0b \x01(\x0b\x32(.google.cloud.compute.v1.TargetHttpProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe9\x01\n\x1cPatchTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x12W\n\x1btarget_https_proxy_resource\x18\x81\xad\xe4\xce\x01 \x01(\x0b\x32).google.cloud.compute.v1.TargetHttpsProxyB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xbf\x01\n\x12PatchUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x12\x41\n\x10url_map_resource\x18\xe1\x90\xb7P \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xcd\x02\n\x15PatchWireGroupRequest\x12\"\n\x12\x63ross_site_network\x18\xd5\xc5\xcb\x33 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\rvalidate_only\x18\xb5\xfa\xdfs \x01(\x08H\x02\x88\x01\x01\x12\x1a\n\nwire_group\x18\xc5\xa4\xb7: \x01(\tB\x03\xe0\x41\x02\x12G\n\x13wire_group_resource\x18\xc8\xc1\xeb\x37 \x01(\x0b\x32\".google.cloud.compute.v1.WireGroupB\x03\xe0\x41\x02\x42\r\n\x0b_request_idB\x0e\n\x0c_update_maskB\x10\n\x0e_validate_only\"\xd2\x05\n\x0bPathMatcher\x12h\n$default_custom_error_response_policy\x18\xa9\x8b\xe0& \x01(\x0b\x32\x32.google.cloud.compute.v1.CustomErrorResponsePolicyH\x00\x88\x01\x01\x12O\n\x14\x64\x65\x66\x61ult_route_action\x18\xaa\xb4\xd7\xb4\x01 \x01(\x0b\x32(.google.cloud.compute.v1.HttpRouteActionH\x01\x88\x01\x01\x12 \n\x0f\x64\x65\x66\x61ult_service\x18\xb7\xe5\xc5\xb0\x01 \x01(\tH\x02\x88\x01\x01\x12R\n\x14\x64\x65\x66\x61ult_url_redirect\x18\xea\xab\xb6\xab\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HttpRedirectActionH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12I\n\rheader_action\x18\xa8\xa0\xb8\x9c\x01 \x01(\x0b\x32).google.cloud.compute.v1.HttpHeaderActionH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x38\n\npath_rules\x18\xdd\xc0\xe6\x31 \x03(\x0b\x32!.google.cloud.compute.v1.PathRule\x12?\n\x0broute_rules\x18\x81\x87\xb7\xb3\x01 \x03(\x0b\x32&.google.cloud.compute.v1.HttpRouteRuleB\'\n%_default_custom_error_response_policyB\x17\n\x15_default_route_actionB\x12\n\x10_default_serviceB\x17\n\x15_default_url_redirectB\x0e\n\x0c_descriptionB\x10\n\x0e_header_actionB\x07\n\x05_name\"\xfc\x02\n\x08PathRule\x12`\n\x1c\x63ustom_error_response_policy\x18\xeb\xf8\xda` \x01(\x0b\x32\x32.google.cloud.compute.v1.CustomErrorResponsePolicyH\x00\x88\x01\x01\x12\x10\n\x05paths\x18\xee\xc1\xe0\x32 \x03(\t\x12G\n\x0croute_action\x18\xec\xa9\xb9\xca\x01 \x01(\x0b\x32(.google.cloud.compute.v1.HttpRouteActionH\x01\x88\x01\x01\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x02\x88\x01\x01\x12J\n\x0curl_redirect\x18\xac\xa1\x98\xc1\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HttpRedirectActionH\x03\x88\x01\x01\x42\x1f\n\x1d_custom_error_response_policyB\x0f\n\r_route_actionB\n\n\x08_serviceB\x0f\n\r_url_redirect\"\xf3\x02\n\x11PerInstanceConfig\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12H\n\x0fpreserved_state\x18\xaa\xe2\xa0\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.PreservedStateH\x02\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x03\x88\x01\x01\"\x90\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x41PPLYING\x10\xb4\xcb\xec\xa7\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x10\n\tEFFECTIVE\x10\x87\xf3\xb8t\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x11\n\tUNAPPLIED\x10\xa4\x87\xe1\xe6\x01\x12\x1a\n\x12UNAPPLIED_DELETION\x10\x89\xb4\xda\x95\x01\x42\x0e\n\x0c_fingerprintB\x07\n\x05_nameB\x12\n\x10_preserved_stateB\t\n\x07_status\"\xa8\x01\n!PerformMaintenanceInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xac\x02\n\"PerformMaintenanceNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12~\n0node_groups_perform_maintenance_request_resource\x18\xd6\xb8\xaeX \x01(\x0b\x32<.google.cloud.compute.v1.NodeGroupsPerformMaintenanceRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe9\x02\n)PerformMaintenanceReservationBlockRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11reservation_block\x18\xda\xc4\x89\xfe\x01 \x01(\tB\x03\xe0\x41\x02\x12\x8f\x01\n8reservations_blocks_perform_maintenance_request_resource\x18\x89\xa9\xd4\xe7\x01 \x01(\x0b\x32\x44.google.cloud.compute.v1.ReservationsBlocksPerformMaintenanceRequestB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xb2\x02\n$PerformMaintenanceReservationRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12\x81\x01\n1reservations_perform_maintenance_request_resource\x18\xa0\xf5\x94\x0e \x01(\x0b\x32>.google.cloud.compute.v1.ReservationsPerformMaintenanceRequestB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xde\x01\n,PerformMaintenanceReservationSubBlockRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12%\n\x15reservation_sub_block\x18\x9b\xca\xec\n \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf0\x01\n\x06Policy\x12?\n\raudit_configs\x18\x8d\xba\xb8\x9c\x01 \x03(\x0b\x32$.google.cloud.compute.v1.AuditConfig\x12\x36\n\x08\x62indings\x18\x8e\xc5\xa4\xc0\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Binding\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\tiam_owned\x18\xbb\xb0\xec\xd6\x01 \x01(\x08H\x01\x88\x01\x01\x12\x18\n\x07version\x18\xd8\xb9\xd4\xa7\x01 \x01(\x05H\x02\x88\x01\x01\x42\x07\n\x05_etagB\x0c\n\n_iam_ownedB\n\n\x08_version\"]\n\x13PreconfiguredWafSet\x12\x46\n\x0f\x65xpression_sets\x18\x98\xab\x83\xe2\x01 \x03(\x0b\x32).google.cloud.compute.v1.WafExpressionSet\"\xbe\x05\n\x0ePreservedState\x12\x44\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32\x32.google.cloud.compute.v1.PreservedState.DisksEntry\x12S\n\rexternal_i_ps\x18\x8d\xd3\x80\xfe\x01 \x03(\x0b\x32\x38.google.cloud.compute.v1.PreservedState.ExternalIPsEntry\x12R\n\rinternal_i_ps\x18\xdb\x9b\xef\x66 \x03(\x0b\x32\x38.google.cloud.compute.v1.PreservedState.InternalIPsEntry\x12J\n\x08metadata\x18\xaf\xf6\xb5) \x03(\x0b\x32\x35.google.cloud.compute.v1.PreservedState.MetadataEntry\x1a\x62\n\nDisksEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.google.cloud.compute.v1.PreservedStatePreservedDisk:\x02\x38\x01\x1am\n\x10\x45xternalIPsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12H\n\x05value\x18\x02 \x01(\x0b\x32\x39.google.cloud.compute.v1.PreservedStatePreservedNetworkIp:\x02\x38\x01\x1am\n\x10InternalIPsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12H\n\x05value\x18\x02 \x01(\x0b\x32\x39.google.cloud.compute.v1.PreservedStatePreservedNetworkIp:\x02\x38\x01\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xac\x02\n\x1bPreservedStatePreservedDisk\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x01\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\x02\x88\x01\x01\"\\\n\nAutoDelete\x12\x19\n\x15UNDEFINED_AUTO_DELETE\x10\x00\x12\x0c\n\x05NEVER\x10\xec\xa4\xaf#\x12%\n\x1eON_PERMANENT_INSTANCE_DELETION\x10\xe7\xe0\xd2-\"?\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\x10\n\tREAD_ONLY\x10\xb5\x99\xec+\x12\x11\n\nREAD_WRITE\x10\xd6\x97\xe4RB\x0e\n\x0c_auto_deleteB\x07\n\x05_modeB\t\n\x07_source\"\x9e\x02\n PreservedStatePreservedNetworkIp\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\tH\x00\x88\x01\x01\x12_\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\x0b\x32\x42.google.cloud.compute.v1.PreservedStatePreservedNetworkIpIpAddressH\x01\x88\x01\x01\"\\\n\nAutoDelete\x12\x19\n\x15UNDEFINED_AUTO_DELETE\x10\x00\x12\x0c\n\x05NEVER\x10\xec\xa4\xaf#\x12%\n\x1eON_PERMANENT_INSTANCE_DELETION\x10\xe7\xe0\xd2-B\x0e\n\x0c_auto_deleteB\r\n\x0b_ip_address\"v\n)PreservedStatePreservedNetworkIpIpAddress\x12\x18\n\x07\x61\x64\x64ress\x18\xf4\xb7\xde\xdc\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x07literal\x18\xaf\xc1\x80W \x01(\tH\x01\x88\x01\x01\x42\n\n\x08_addressB\n\n\x08_literal\"\xf3\x04\n\x0ePreviewFeature\x12!\n\x11\x61\x63tivation_status\x18\xbb\x8e\xa8\" \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12[\n\x11rollout_operation\x18\xd9\xd0\x8c\xe8\x01 \x01(\x0b\x32\x37.google.cloud.compute.v1.PreviewFeatureRolloutOperationH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12\x45\n\x06status\x18\xf2\x9f\xb7V \x01(\x0b\x32-.google.cloud.compute.v1.PreviewFeatureStatusH\x08\x88\x01\x01\"y\n\x10\x41\x63tivationStatus\x12\x1f\n\x1bUNDEFINED_ACTIVATION_STATUS\x10\x00\x12\"\n\x1c\x41\x43TIVATION_STATE_UNSPECIFIED\x10\xe0\xca&\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x0e\n\x07\x45NABLED\x10\xa1\xae\xecVB\x14\n\x12_activation_statusB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x14\n\x12_rollout_operationB\x0c\n\n_self_linkB\t\n\x07_status\"\xc6\x02\n\x12PreviewFeatureList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.PreviewFeature\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x96\x01\n\x1ePreviewFeatureRolloutOperation\x12\x62\n\rrollout_input\x18\xbc\xe7\xdb~ \x01(\x0b\x32\x43.google.cloud.compute.v1.PreviewFeatureRolloutOperationRolloutInputH\x00\x88\x01\x01\x42\x10\n\x0e_rollout_input\"\xbb\x02\n*PreviewFeatureRolloutOperationRolloutInput\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12(\n\x17predefined_rollout_plan\x18\x90\x9d\xca\xad\x01 \x01(\tH\x01\x88\x01\x01\"\xa7\x01\n\x15PredefinedRolloutPlan\x12%\n!UNDEFINED_PREDEFINED_ROLLOUT_PLAN\x10\x00\x12 \n\x19ROLLOUT_PLAN_FAST_ROLLOUT\x10\xd6\x9d\x82P\x12$\n\x1cROLLOUT_PLAN_TWO_DAY_ROLLOUT\x10\x93\x96\xea\xa6\x01\x12\x1f\n\x18ROLLOUT_PLAN_UNSPECIFIED\x10\xef\xa7\xf4\x44\x42\x07\n\x05_nameB\x1a\n\x18_predefined_rollout_plan\"\xdd\x01\n\x14PreviewFeatureStatus\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x19\n\thelp_link\x18\xb8\xf4\xc3j \x01(\tH\x01\x88\x01\x01\x12[\n\x0erelease_status\x18\xaa\xbe\x9f\xf2\x01 \x01(\x0b\x32:.google.cloud.compute.v1.PreviewFeatureStatusReleaseStatusH\x02\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x0c\n\n_help_linkB\x11\n\x0f_release_status\"\xf7\x01\n!PreviewFeatureStatusReleaseStatus\x12\x15\n\x05stage\x18\xfe\x85\xab\x34 \x01(\tH\x00\x88\x01\x01\x12;\n\x0bupdate_date\x18\xe4\x8a\xaa\xee\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.DateH\x01\x88\x01\x01\"d\n\x05Stage\x12\x13\n\x0fUNDEFINED_STAGE\x10\x00\x12\x12\n\nDEPRECATED\x10\xb3\xa3\xf9\xdc\x01\x12\x07\n\x02GA\x10\xda\x11\x12\x0f\n\x07PREVIEW\x10\xa8\xdf\xd1\xbe\x01\x12\x18\n\x11STAGE_UNSPECIFIED\x10\xb6\xd6\xaf\x1e\x42\x08\n\x06_stageB\x0e\n\x0c_update_date\"\xa1\x01\n\x14PreviewRouterRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x12@\n\x0frouter_resource\x18\xc4\x80\x82J \x01(\x0b\x32\x1f.google.cloud.compute.v1.RouterB\x03\xe0\x41\x02\"\xea\n\n\x07Project\x12 \n\x10\x63loud_armor_tier\x18\xac\x9a\x8e\x02 \x01(\tH\x00\x88\x01\x01\x12K\n\x18\x63ommon_instance_metadata\x18\xc5\xfc\xcbX \x01(\x0b\x32!.google.cloud.compute.v1.MetadataH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12%\n\x14\x64\x65\x66\x61ult_network_tier\x18\x91\xc5\xf9\xe0\x01 \x01(\tH\x03\x88\x01\x01\x12(\n\x17\x64\x65\x66\x61ult_service_account\x18\xa5\xf9\xb7\x8e\x01 \x01(\tH\x04\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x05\x88\x01\x01\x12\x1c\n\x10\x65nabled_features\x18\xfb\xc6\xd2\xdf\x01 \x03(\t\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12\x31\n\x06quotas\x18\xfb\xa1\xe2; \x03(\x0b\x32\x1e.google.cloud.compute.v1.Quota\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12T\n\x15usage_export_location\x18\xc2\xb2\xdc\xa5\x01 \x01(\x0b\x32,.google.cloud.compute.v1.UsageExportLocationH\n\x88\x01\x01\x12\x1e\n\x0evm_dns_setting\x18\xb2\xa7\x88\x1c \x01(\tH\x0b\x88\x01\x01\x12\"\n\x12xpn_project_status\x18\xc1\xcd\xf5l \x01(\tH\x0c\x88\x01\x01\"~\n\x0e\x43loudArmorTier\x12\x1e\n\x1aUNDEFINED_CLOUD_ARMOR_TIER\x10\x00\x12\x1b\n\x14\x43\x41_ENTERPRISE_ANNUAL\x10\xdc\xf5\xeeh\x12\x1b\n\x13\x43\x41_ENTERPRISE_PAYGO\x10\xd3\xa5\xa1\xd8\x01\x12\x12\n\x0b\x43\x41_STANDARD\x10\xfe\x82\xa3\x06\"\x9e\x01\n\x12\x44\x65\x66\x61ultNetworkTier\x12\"\n\x1eUNDEFINED_DEFAULT_NETWORK_TIER\x10\x00\x12\x16\n\x0e\x46IXED_STANDARD\x10\xc8\x9e\x85\x94\x01\x12\x0f\n\x07PREMIUM\x10\xb7\xb4\xc1\xbe\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x12)\n!STANDARD_OVERRIDES_FIXED_STANDARD\x10\xc2\x87\x91\xde\x01\"\x92\x01\n\x0cVmDnsSetting\x12\x1c\n\x18UNDEFINED_VM_DNS_SETTING\x10\x00\x12\x16\n\x0eGLOBAL_DEFAULT\x10\x85\xdb\xda\xa4\x01\x12!\n\x1aUNSPECIFIED_VM_DNS_SETTING\x10\x9a\xbb\x82\x11\x12\x15\n\rZONAL_DEFAULT\x10\x86\xfd\xd9\xaf\x01\x12\x12\n\nZONAL_ONLY\x10\xe7\xba\xc3\xf8\x01\"i\n\x10XpnProjectStatus\x12 \n\x1cUNDEFINED_XPN_PROJECT_STATUS\x10\x00\x12\x0b\n\x04HOST\x10\xa8\xdb\x87\x01\x12&\n\x1eUNSPECIFIED_XPN_PROJECT_STATUS\x10\xa9\xfa\xa7\xa2\x01\x42\x13\n\x11_cloud_armor_tierB\x1b\n\x19_common_instance_metadataB\x15\n\x13_creation_timestampB\x17\n\x15_default_network_tierB\x1a\n\x18_default_service_accountB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x0c\n\n_self_linkB\x18\n\x16_usage_export_locationB\x11\n\x0f_vm_dns_settingB\x15\n\x13_xpn_project_status\"z\n!ProjectsDisableXpnResourceRequest\x12\x44\n\x0cxpn_resource\x18\xb7\x93\xcd? \x01(\x0b\x32&.google.cloud.compute.v1.XpnResourceIdH\x00\x88\x01\x01\x42\x0f\n\r_xpn_resource\"y\n ProjectsEnableXpnResourceRequest\x12\x44\n\x0cxpn_resource\x18\xb7\x93\xcd? \x01(\x0b\x32&.google.cloud.compute.v1.XpnResourceIdH\x00\x88\x01\x01\x42\x0f\n\r_xpn_resource\"\xab\x01\n\x17ProjectsGetXpnResources\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x01\x88\x01\x01\x12<\n\tresources\x18\xa5\xfc\xb2N \x03(\x0b\x32&.google.cloud.compute.v1.XpnResourceIdB\x07\n\x05_kindB\x12\n\x10_next_page_token\"L\n\x1bProjectsListXpnHostsRequest\x12\x1c\n\x0corganization\x18\xb3\xda\x93\x32 \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_organization\"\xd9\x01\n ProjectsSetCloudArmorTierRequest\x12 \n\x10\x63loud_armor_tier\x18\xac\x9a\x8e\x02 \x01(\tH\x00\x88\x01\x01\"~\n\x0e\x43loudArmorTier\x12\x1e\n\x1aUNDEFINED_CLOUD_ARMOR_TIER\x10\x00\x12\x1b\n\x14\x43\x41_ENTERPRISE_ANNUAL\x10\xdc\xf5\xeeh\x12\x1b\n\x13\x43\x41_ENTERPRISE_PAYGO\x10\xd3\xa5\xa1\xd8\x01\x12\x12\n\x0b\x43\x41_STANDARD\x10\xfe\x82\xa3\x06\x42\x13\n\x11_cloud_armor_tier\"\xe8\x01\n$ProjectsSetDefaultNetworkTierRequest\x12\x1d\n\x0cnetwork_tier\x18\xd3\xba\xdb\xf6\x01 \x01(\tH\x00\x88\x01\x01\"\x8f\x01\n\x0bNetworkTier\x12\x1a\n\x16UNDEFINED_NETWORK_TIER\x10\x00\x12\x16\n\x0e\x46IXED_STANDARD\x10\xc8\x9e\x85\x94\x01\x12\x0f\n\x07PREMIUM\x10\xb7\xb4\xc1\xbe\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x12)\n!STANDARD_OVERRIDES_FIXED_STANDARD\x10\xc2\x87\x91\xde\x01\x42\x0f\n\r_network_tier\"\xa3\n\n\x16PublicAdvertisedPrefix\x12!\n\x11\x62yoip_api_version\x18\x93\xb3\xc9M \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12#\n\x13\x64ns_verification_ip\x18\xb5\x95\xf6r \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x04\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x05\x88\x01\x01\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x06\x88\x01\x01\x12!\n\x10ipv6_access_type\x18\xdd\xf5\xd1\xf0\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x08\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\t\x88\x01\x01\x12\x1a\n\tpdp_scope\x18\xd1\xca\xfe\xf9\x01 \x01(\tH\n\x88\x01\x01\x12j\n\x18public_delegated_prefixs\x18\x8b\xbe\x85\xcb\x01 \x03(\x0b\x32\x44.google.cloud.compute.v1.PublicAdvertisedPrefixPublicDelegatedPrefix\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0b\x88\x01\x01\x12\x1e\n\rshared_secret\x18\xca\xa7\x8f\xb6\x01 \x01(\tH\x0c\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\r\x88\x01\x01\"D\n\x0f\x42yoipApiVersion\x12\x1f\n\x1bUNDEFINED_BYOIP_API_VERSION\x10\x00\x12\x07\n\x02V1\x10\x9b\x15\x12\x07\n\x02V2\x10\x9c\x15\"S\n\x0eIpv6AccessType\x12\x1e\n\x1aUNDEFINED_IPV6_ACCESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\"a\n\x08PdpScope\x12\x17\n\x13UNDEFINED_PDP_SCOPE\x10\x00\x12\x0e\n\x06GLOBAL\x10\xa3\xef\xef\xeb\x01\x12\x1b\n\x13GLOBAL_AND_REGIONAL\x10\xc3\xb5\xd4\x97\x01\x12\x0f\n\x08REGIONAL\x10\x9f\xec\x80,\"\xa9\x02\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x1c\n\x15\x41NNOUNCED_TO_INTERNET\x10\xc1\xfe\xe8T\x12\x0f\n\x07INITIAL\x10\xa4\xc6\xb3\xf7\x01\x12%\n\x1dPREFIX_CONFIGURATION_COMPLETE\x10\xcf\x95\xa7\xe5\x01\x12(\n PREFIX_CONFIGURATION_IN_PROGRESS\x10\xb1\xf5\xc0\xb4\x01\x12\"\n\x1aPREFIX_REMOVAL_IN_PROGRESS\x10\xe7\xf5\xcc\x87\x01\x12\x16\n\x0ePTR_CONFIGURED\x10\xcf\xb0\xed\xf4\x01\x12\x18\n\x11READY_TO_ANNOUNCE\x10\xf1\xb1\xe9\x1e\x12!\n\x19REVERSE_DNS_LOOKUP_FAILED\x10\xaf\xbb\x83\x8d\x01\x12\x10\n\tVALIDATED\x10\xee\xb3\xc8\x1f\x42\x14\n\x12_byoip_api_versionB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x16\n\x14_dns_verification_ipB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x10\n\x0e_ip_cidr_rangeB\x13\n\x11_ipv6_access_typeB\x07\n\x05_kindB\x07\n\x05_nameB\x0c\n\n_pdp_scopeB\x0c\n\n_self_linkB\x10\n\x0e_shared_secretB\t\n\x07_status\"\xbd\x02\n\x1aPublicAdvertisedPrefixList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x41\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32/.google.cloud.compute.v1.PublicAdvertisedPrefix\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xde\x01\n+PublicAdvertisedPrefixPublicDelegatedPrefix\x12\x18\n\x08ip_range\x18\xa5\xe0\x97\x45 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tH\x02\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x03\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x04\x88\x01\x01\x42\x0b\n\t_ip_rangeB\x07\n\x05_nameB\n\n\x08_projectB\t\n\x07_regionB\t\n\x07_status\"\xbf\x0b\n\x15PublicDelegatedPrefix\x12)\n\x19\x61llocatable_prefix_length\x18\xb6\xb6\xa9\x12 \x01(\x05H\x00\x88\x01\x01\x12!\n\x11\x62yoip_api_version\x18\x93\xb3\xc9M \x01(\tH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12/\n\x1f\x65nable_enhanced_ipv4_allocation\x18\xed\xb7\x83\x1a \x01(\x08H\x04\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x05\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x07\x88\x01\x01\x12!\n\x10ipv6_access_type\x18\xdd\xf5\xd1\xf0\x01 \x01(\tH\x08\x88\x01\x01\x12\"\n\x11is_live_migration\x18\xf0\x9f\x87\xf4\x01 \x01(\x08H\t\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\n\x88\x01\x01\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x0b\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0c\x88\x01\x01\x12\x1d\n\rparent_prefix\x18\xc7\xe7\xa1\x07 \x01(\tH\r\x88\x01\x01\x12o\n\x1cpublic_delegated_sub_prefixs\x18\x8c\xfe\x8bZ \x03(\x0b\x32\x46.google.cloud.compute.v1.PublicDelegatedPrefixPublicDelegatedSubPrefix\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0e\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0f\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x10\x88\x01\x01\"D\n\x0f\x42yoipApiVersion\x12\x1f\n\x1bUNDEFINED_BYOIP_API_VERSION\x10\x00\x12\x07\n\x02V1\x10\x9b\x15\x12\x07\n\x02V2\x10\x9c\x15\"S\n\x0eIpv6AccessType\x12\x1e\n\x1aUNDEFINED_IPV6_ACCESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\"\xb1\x01\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\x11\n\nDELEGATION\x10\xa8\xb2\xfa}\x12.\n&EXTERNAL_IPV6_FORWARDING_RULE_CREATION\x10\xc4\xe1\x8d\xbe\x01\x12(\n!EXTERNAL_IPV6_SUBNETWORK_CREATION\x10\xcc\x9f\x97\x1d\x12(\n!INTERNAL_IPV6_SUBNETWORK_CREATION\x10\x9a\x82\x89I\"\xbe\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x11\n\tANNOUNCED\x10\xfb\x91\x8c\xae\x01\x12\x1b\n\x13\x41NNOUNCED_TO_GOOGLE\x10\xb9\xb4\xf3\xd8\x01\x12\x1c\n\x15\x41NNOUNCED_TO_INTERNET\x10\xc1\xfe\xe8T\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x14\n\x0cINITIALIZING\x10\xcd\xd8\x98\x92\x01\x12\x18\n\x11READY_TO_ANNOUNCE\x10\xf1\xb1\xe9\x1e\x42\x1c\n\x1a_allocatable_prefix_lengthB\x14\n\x12_byoip_api_versionB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\"\n _enable_enhanced_ipv4_allocationB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x10\n\x0e_ip_cidr_rangeB\x13\n\x11_ipv6_access_typeB\x14\n\x12_is_live_migrationB\x07\n\x05_kindB\x07\n\x05_modeB\x07\n\x05_nameB\x10\n\x0e_parent_prefixB\t\n\x07_regionB\x0c\n\n_self_linkB\t\n\x07_status\"\xe1\x03\n#PublicDelegatedPrefixAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12Y\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32G.google.cloud.compute.v1.PublicDelegatedPrefixAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1ah\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12I\n\x05value\x18\x02 \x01(\x0b\x32:.google.cloud.compute.v1.PublicDelegatedPrefixesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbb\x02\n\x19PublicDelegatedPrefixList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12@\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32..google.cloud.compute.v1.PublicDelegatedPrefix\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x99\x07\n-PublicDelegatedPrefixPublicDelegatedSubPrefix\x12)\n\x19\x61llocatable_prefix_length\x18\xb6\xb6\xa9\x12 \x01(\x05H\x00\x88\x01\x01\x12\"\n\x11\x64\x65legatee_project\x18\xda\x8a\xe9\xc5\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12/\n\x1f\x65nable_enhanced_ipv4_allocation\x18\xed\xb7\x83\x1a \x01(\x08H\x03\x88\x01\x01\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x04\x88\x01\x01\x12!\n\x10ipv6_access_type\x18\xdd\xf5\xd1\xf0\x01 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\nis_address\x18\xdf\x8b\x92\xa8\x01 \x01(\x08H\x06\x88\x01\x01\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\t\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\n\x88\x01\x01\"S\n\x0eIpv6AccessType\x12\x1e\n\x1aUNDEFINED_IPV6_ACCESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\"\xb1\x01\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\x11\n\nDELEGATION\x10\xa8\xb2\xfa}\x12.\n&EXTERNAL_IPV6_FORWARDING_RULE_CREATION\x10\xc4\xe1\x8d\xbe\x01\x12(\n!EXTERNAL_IPV6_SUBNETWORK_CREATION\x10\xcc\x9f\x97\x1d\x12(\n!INTERNAL_IPV6_SUBNETWORK_CREATION\x10\x9a\x82\x89I\"@\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08INACTIVE\x10\xeb\x98\xf9\x80\x01\x42\x1c\n\x1a_allocatable_prefix_lengthB\x14\n\x12_delegatee_projectB\x0e\n\x0c_descriptionB\"\n _enable_enhanced_ipv4_allocationB\x10\n\x0e_ip_cidr_rangeB\x13\n\x11_ipv6_access_typeB\r\n\x0b_is_addressB\x07\n\x05_modeB\x07\n\x05_nameB\t\n\x07_regionB\t\n\x07_status\"\xc1\x01\n!PublicDelegatedPrefixesScopedList\x12U\n\x19public_delegated_prefixes\x18\x96\x82\xaa\x96\x01 \x03(\x0b\x32..google.cloud.compute.v1.PublicDelegatedPrefix\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xe6(\n\x05Quota\x12\x15\n\x05limit\x18\xbb\x97\x8d\x31 \x01(\x01H\x00\x88\x01\x01\x12\x17\n\x06metric\x18\xb0\xeb\x97\xfe\x01 \x01(\tH\x01\x88\x01\x01\x12\x15\n\x05owner\x18\xb3\xe5\xcf\x32 \x01(\tH\x02\x88\x01\x01\x12\x15\n\x05usage\x18\xa1\xfb\x99\x35 \x01(\x01H\x03\x88\x01\x01\"\xd5\'\n\x06Metric\x12\x14\n\x10UNDEFINED_METRIC\x10\x00\x12\x0e\n\x07\x41\x32_CPUS\x10\xb9\xfe\x86I\x12\x16\n\x0f\x41\x46\x46INITY_GROUPS\x10\xcb\xa9\xd2\x33\x12\x13\n\x0b\x41UTOSCALERS\x10\xdc\xe0\xda\xe0\x01\x12\x16\n\x0f\x42\x41\x43KEND_BUCKETS\x10\xde\x89\xd0\x41\x12\x18\n\x10\x42\x41\x43KEND_SERVICES\x10\xc9\xc3\xc8\x80\x01\x12\x10\n\x08\x43\x32\x44_CPUS\x10\xf5\xff\xa8\xf2\x01\x12\x0f\n\x07\x43\x32_CPUS\x10\xbb\xeb\xb8\x97\x01\x12\x0f\n\x07\x43\x33_CPUS\x10\xda\x9c\x8c\xa5\x01\x12\x13\n\x0b\x43OMMITMENTS\x10\xde\xd7\xc0\xd9\x01\x12\x18\n\x11\x43OMMITTED_A2_CPUS\x10\xd6\xa2\xa5\x1c\x12\x1a\n\x12\x43OMMITTED_C2D_CPUS\x10\xf8\xe2\xd3\x86\x01\x12\x18\n\x11\x43OMMITTED_C2_CPUS\x10\xd8\x8f\xd7j\x12\x18\n\x11\x43OMMITTED_C3_CPUS\x10\xf7\xc0\xaax\x12\x16\n\x0e\x43OMMITTED_CPUS\x10\xce\xad\xb6\x8b\x01\x12\x19\n\x11\x43OMMITTED_E2_CPUS\x10\xda\xfc\x88\xb9\x01\x12\x1a\n\x12\x43OMMITTED_LICENSES\x10\xd5\xcb\xc2\xaa\x01\x12$\n\x1c\x43OMMITTED_LOCAL_SSD_TOTAL_GB\x10\x88\xec\x86\x93\x01\x12\x17\n\x11\x43OMMITTED_M3_CPUS\x10\x81\xe2#\x12\'\n\x1f\x43OMMITTED_MEMORY_OPTIMIZED_CPUS\x10\xde\xdc\x99\xe9\x01\x12\x19\n\x12\x43OMMITTED_N2A_CPUS\x10\xb0\xaa\x8d\x13\x12\x19\n\x12\x43OMMITTED_N2D_CPUS\x10\x8d\xbe\x87<\x12\x19\n\x11\x43OMMITTED_N2_CPUS\x10\xa3\xa7\xe9\x99\x01\x12\'\n\x1f\x43OMMITTED_NVIDIA_A100_80GB_GPUS\x10\xa5\x9f\xb4\xdd\x01\x12\"\n\x1a\x43OMMITTED_NVIDIA_A100_GPUS\x10\x95\xfd\x98\xb3\x01\x12!\n\x1a\x43OMMITTED_NVIDIA_H100_GPUS\x10\x9c\x8f\x95\"\x12 \n\x19\x43OMMITTED_NVIDIA_K80_GPUS\x10\xa4\xb6\xeb\x01\x12\x1f\n\x18\x43OMMITTED_NVIDIA_L4_GPUS\x10\xfd\xd3\x91\t\x12!\n\x1a\x43OMMITTED_NVIDIA_P100_GPUS\x10\xa4\xff\xa2\x33\x12 \n\x18\x43OMMITTED_NVIDIA_P4_GPUS\x10\x81\xae\xf5\xa5\x01\x12\x1f\n\x18\x43OMMITTED_NVIDIA_T4_GPUS\x10\x85\x88\xd9\x42\x12 \n\x1a\x43OMMITTED_NVIDIA_V100_GPUS\x10\xaa\xb3\r\x12\x1a\n\x12\x43OMMITTED_T2A_CPUS\x10\xea\xc4\xa9\x8d\x01\x12\x1a\n\x12\x43OMMITTED_T2D_CPUS\x10\xc7\xd8\xa3\xb6\x01\x12\x18\n\x11\x43OMMITTED_Z3_CPUS\x10\xce\xe6\xe7}\x12\n\n\x04\x43PUS\x10\xcb\xd7~\x12\x18\n\x10\x43PUS_ALL_REGIONS\x10\xad\x91\xc6\xe0\x01\x12\x16\n\x0e\x44ISKS_TOTAL_GB\x10\x9f\x97\xc9\xa8\x01\x12\x0f\n\x07\x45\x32_CPUS\x10\xbd\xd8\xea\xe5\x01\x12(\n!EXTERNAL_MANAGED_FORWARDING_RULES\x10\xc9\xbf\xf3G\x12,\n$EXTERNAL_NETWORK_LB_FORWARDING_RULES\x10\x99\xad\xbd\xb2\x01\x12)\n\"EXTERNAL_PROTOCOL_FORWARDING_RULES\x10\xe8\xb8\xa2\x1e\x12\x1d\n\x15\x45XTERNAL_VPN_GATEWAYS\x10\xae\xbb\xf5\x81\x01\x12\x11\n\tFIREWALLS\x10\xd3\xe6\xc8\xb2\x01\x12\x18\n\x10\x46ORWARDING_RULES\x10\x95\x82\xa8\xce\x01\x12/\n(GLOBAL_EXTERNAL_MANAGED_BACKEND_SERVICES\x10\xe1\xad\xbcN\x12\x30\n(GLOBAL_EXTERNAL_MANAGED_FORWARDING_RULES\x10\xad\xec\x9b\x9c\x01\x12\x31\n)GLOBAL_EXTERNAL_PROXY_LB_BACKEND_SERVICES\x10\xa9\xd9\xed\xbe\x01\x12 \n\x19GLOBAL_INTERNAL_ADDRESSES\x10\x9c\xc5\xb0\x14\x12/\n(GLOBAL_INTERNAL_MANAGED_BACKEND_SERVICES\x10\xaf\x90\xaez\x12\x39\n1GLOBAL_INTERNAL_TRAFFIC_DIRECTOR_BACKEND_SERVICES\x10\xd4\xde\xa1\x9a\x01\x12\x17\n\x10GPUS_ALL_REGIONS\x10\xa9\x80\xe4\x12\x12\x14\n\x0cHDB_TOTAL_GB\x10\xaf\xc2\xa1\x98\x01\x12\x16\n\x0eHDB_TOTAL_IOPS\x10\xfd\xe9\xd7\x93\x01\x12\x1b\n\x14HDB_TOTAL_THROUGHPUT\x10\xfe\xcc\x80\n\x12\x15\n\rHEALTH_CHECKS\x10\xae\xaf\xfc\x89\x01\x12\r\n\x06IMAGES\x10\xf8\xec\xb5\x07\x12\x10\n\tINSTANCES\x10\xde\x9c\xd0>\x12\x17\n\x0fINSTANCE_GROUPS\x10\xbe\xc9\xdb\xa9\x01\x12\x1e\n\x17INSTANCE_GROUP_MANAGERS\x10\xb0\xa2\xc5\x30\x12\x19\n\x12INSTANCE_TEMPLATES\x10\xef\xb7\xedk\x12\x15\n\rINTERCONNECTS\x10\x85\x8b\xfe\xc5\x01\x12*\n#INTERCONNECT_ATTACHMENTS_PER_REGION\x10\xd6\xd6\xa3L\x12+\n#INTERCONNECT_ATTACHMENTS_TOTAL_MBPS\x10\xf3\xba\xd9\xca\x01\x12\x1f\n\x17INTERCONNECT_TOTAL_GBPS\x10\xaa\xf1\x87\x88\x01\x12\x19\n\x12INTERNAL_ADDRESSES\x10\x80\xe9\xae^\x12\x31\n*INTERNAL_TRAFFIC_DIRECTOR_FORWARDING_RULES\x10\x84\xe9\x85\x7f\x12\x19\n\x12IN_PLACE_SNAPSHOTS\x10\x9d\x9d\x96H\x12\x18\n\x10IN_USE_ADDRESSES\x10\x90\xe2\xdf\xbf\x01\x12\x1e\n\x17IN_USE_BACKUP_SCHEDULES\x10\x91\x92\xd1\x0f\x12!\n\x19IN_USE_SNAPSHOT_SCHEDULES\x10\x93\xcc\xac\xdc\x01\x12\x1a\n\x12LOCAL_SSD_TOTAL_GB\x10\xc5\x98\xe3\x9d\x01\x12\x0e\n\x07M1_CPUS\x10\xa6\xdb\xde\x11\x12\x0e\n\x07M2_CPUS\x10\xc5\x8c\xb2\x1f\x12\x0e\n\x07M3_CPUS\x10\xe4\xbd\x85-\x12\x16\n\x0eMACHINE_IMAGES\x10\x90\xf3\x91\xd5\x01\x12\x0f\n\x08N2A_CPUS\x10\xad\xc7\xe2~\x12\x10\n\x08N2D_CPUS\x10\x8a\xdb\xdc\xa7\x01\x12\x0f\n\x07N2_CPUS\x10\x86\x83\xcb\xc6\x01\x12\x10\n\x08NETWORKS\x10\x85\xb8\xbf\xe7\x01\x12\x1a\n\x13NETWORK_ATTACHMENTS\x10\xdf\xfd\x87G\x12\x1e\n\x17NETWORK_ENDPOINT_GROUPS\x10\x8d\xb7\xda\x30\x12 \n\x19NETWORK_FIREWALL_POLICIES\x10\xbe\xdb\x9b\x30\x12*\n#NET_LB_SECURITY_POLICIES_PER_REGION\x10\xad\xfd\xa4K\x12/\n\'NET_LB_SECURITY_POLICY_RULES_PER_REGION\x10\xb3\x88\xe6\xa9\x01\x12\x39\n1NET_LB_SECURITY_POLICY_RULE_ATTRIBUTES_PER_REGION\x10\xf0\xe8\xb4\x94\x01\x12\x12\n\x0bNODE_GROUPS\x10\xb1\xfd\xde\x0b\x12\x16\n\x0eNODE_TEMPLATES\x10\x9c\xb2\xb9\xe2\x01\x12\x1d\n\x15NVIDIA_A100_80GB_GPUS\x10\xc8\xe8\xc7\x88\x01\x12\x18\n\x10NVIDIA_A100_GPUS\x10\x92\x80\xdf\xf0\x01\x12\x16\n\x0fNVIDIA_K80_GPUS\x10\x87\xec\x92N\x12\x16\n\x0eNVIDIA_L4_GPUS\x10\xba\xcd\xc8\xea\x01\x12\x17\n\x10NVIDIA_P100_GPUS\x10\xa1\x82\xe9p\x12\x1b\n\x14NVIDIA_P100_VWS_GPUS\x10\x8e\xdd\x83\x66\x12\x16\n\x0eNVIDIA_P4_GPUS\x10\xbe\xa7\xac\x87\x01\x12\x1a\n\x12NVIDIA_P4_VWS_GPUS\x10\xab\xd5\xf4\xfb\x01\x12\x15\n\x0eNVIDIA_T4_GPUS\x10\xc2\x81\x90$\x12\x1a\n\x12NVIDIA_T4_VWS_GPUS\x10\xaf\xeb\xbf\x98\x01\x12\x17\n\x10NVIDIA_V100_GPUS\x10\xa7\xb6\xd3=\x12\x18\n\x11PACKET_MIRRORINGS\x10\xa7\xea\xb6\x07\x12(\n!PD_EXTREME_TOTAL_PROVISIONED_IOPS\x10\xed\xd6\x97!\x12\x17\n\x10PREEMPTIBLE_CPUS\x10\xc9\x8d\xe3w\x12\x1f\n\x18PREEMPTIBLE_LOCAL_SSD_GB\x10\x88\x93\xaf|\x12(\n!PREEMPTIBLE_NVIDIA_A100_80GB_GPUS\x10\x8a\xea\xb9H\x12#\n\x1cPREEMPTIBLE_NVIDIA_A100_GPUS\x10\x90\x9c\xe9 \x12$\n\x1cPREEMPTIBLE_NVIDIA_H100_GPUS\x10\x97\xae\xe5\x8f\x01\x12#\n\x1bPREEMPTIBLE_NVIDIA_K80_GPUS\x10\xc9\xe0\xe5\xb2\x01\x12!\n\x1aPREEMPTIBLE_NVIDIA_L4_GPUS\x10\xb8\xb8\xf0/\x12$\n\x1cPREEMPTIBLE_NVIDIA_P100_GPUS\x10\x9f\x9e\xf3\xa0\x01\x12(\n PREEMPTIBLE_NVIDIA_P100_VWS_GPUS\x10\x8c\x9b\xc1\x95\x01\x12\"\n\x1aPREEMPTIBLE_NVIDIA_P4_GPUS\x10\xbc\x92\xd4\xcc\x01\x12%\n\x1ePREEMPTIBLE_NVIDIA_P4_VWS_GPUS\x10\xa9\xe2\xd0x\x12!\n\x1aPREEMPTIBLE_NVIDIA_T4_GPUS\x10\xc0\xec\xb7i\x12%\n\x1ePREEMPTIBLE_NVIDIA_T4_VWS_GPUS\x10\xad\xf8\x9b\x15\x12#\n\x1cPREEMPTIBLE_NVIDIA_V100_GPUS\x10\xa5\xd2\xddm\x12%\n\x1ePREEMPTIBLE_TPU_LITE_DEVICE_V5\x10\xfb\x91\x8cS\x12\'\n PREEMPTIBLE_TPU_LITE_PODSLICE_V5\x10\xc4\x91\xc5\x35\x12#\n\x1bPREEMPTIBLE_TPU_PODSLICE_V4\x10\x8c\xfc\xf4\xca\x01\x12=\n6PSC_ILB_CONSUMER_FORWARDING_RULES_PER_PRODUCER_NETWORK\x10\x83\x93\x9dn\x12\'\n PSC_INTERNAL_LB_FORWARDING_RULES\x10\xfb\xa2\xcbP\x12\"\n\x1aPUBLIC_ADVERTISED_PREFIXES\x10\xcc\xa1\xe2\xe0\x01\x12!\n\x19PUBLIC_DELEGATED_PREFIXES\x10\xb6\x92\xf3\xfd\x01\x12\x1b\n\x14REGIONAL_AUTOSCALERS\x10\xbc\x9c\x80\x0e\x12\x31\n*REGIONAL_EXTERNAL_MANAGED_BACKEND_SERVICES\x10\xdd\xec\x82\x02\x12\x35\n-REGIONAL_EXTERNAL_NETWORK_LB_BACKEND_SERVICES\x10\xed\xea\xa5\xc3\x01\x12\'\n REGIONAL_INSTANCE_GROUP_MANAGERS\x10\x90\xbe\xf3\x11\x12,\n%REGIONAL_INTERNAL_LB_BACKEND_SERVICES\x10\x90\xee\xe5\x41\x12\x31\n*REGIONAL_INTERNAL_MANAGED_BACKEND_SERVICES\x10\xab\xcf\xf4-\x12;\n3REGIONAL_INTERNAL_TRAFFIC_DIRECTOR_BACKEND_SERVICES\x10\xd8\xf6\xb1\xe6\x01\x12\x13\n\x0cRESERVATIONS\x10\xa7\xbc\xc8\x0f\x12\x18\n\x11RESOURCE_POLICIES\x10\xe1\x9c\x84(\x12\x0f\n\x07ROUTERS\x10\xaa\xbc\x8b\xeb\x01\x12\x0e\n\x06ROUTES\x10\xca\x96\xba\x83\x01\x12\x18\n\x11SECURITY_POLICIES\x10\xef\xa6\xafZ\x12#\n\x1cSECURITY_POLICIES_PER_REGION\x10\xc6\xa6\xe0v\x12\x31\n)SECURITY_POLICY_ADVANCED_RULES_PER_REGION\x10\xad\xe7\xa5\xb1\x01\x12#\n\x1bSECURITY_POLICY_CEVAL_RULES\x10\xc9\xa7\xc0\xe0\x01\x12\x1c\n\x15SECURITY_POLICY_RULES\x10\xa9\xd4\x87\x61\x12\'\n SECURITY_POLICY_RULES_PER_REGION\x10\xcc\xc8\xa9<\x12\x1b\n\x13SERVICE_ATTACHMENTS\x10\xe6\xb1\xeb\xe0\x01\x12\x11\n\tSNAPSHOTS\x10\x8f\xe6\xdf\xa3\x01\x12\x13\n\x0cSSD_TOTAL_GB\x10\xd1\xaf\x8fM\x12\x18\n\x10SSL_CERTIFICATES\x10\xaf\x82\xb6\xb4\x01\x12\x14\n\x0cSSL_POLICIES\x10\xc3\xf4\xc0\xf9\x01\x12\x17\n\x10STATIC_ADDRESSES\x10\xf1\xad\xd2,\x12\x1e\n\x16STATIC_BYOIP_ADDRESSES\x10\xf1\x8a\xc2\x83\x01\x12+\n#STATIC_EXTERNAL_IPV6_ADDRESS_RANGES\x10\x96\xe1\x9d\xe1\x01\x12\x13\n\x0bSUBNETWORKS\x10\xa5\xfc\xf3\xc8\x01\x12\x10\n\x08T2A_CPUS\x10\xe7\xe1\xfe\xf8\x01\x12\x0f\n\x08T2D_CPUS\x10\xc4\xf5\xf8!\x12\x1b\n\x14TARGET_HTTPS_PROXIES\x10\xca\xcb\xd6h\x12\x1a\n\x13TARGET_HTTP_PROXIES\x10\xa3\xf5\xa0N\x12\x18\n\x10TARGET_INSTANCES\x10\xb0\xda\xd5\x87\x01\x12\x14\n\x0cTARGET_POOLS\x10\x89\x97\x88\xa6\x01\x12\x19\n\x12TARGET_SSL_PROXIES\x10\xeb\xe4\xf5K\x12\x19\n\x12TARGET_TCP_PROXIES\x10\xc0\x9e\xf3V\x12\x1a\n\x13TARGET_VPN_GATEWAYS\x10\xa8\xbb\xe3#\x12\x1a\n\x12TPU_LITE_DEVICE_V5\x10\xfd\x84\xb0\xd6\x01\x12\x1b\n\x14TPU_LITE_PODSLICE_V5\x10\xc6\xd3\x87\x06\x12\x16\n\x0fTPU_PODSLICE_V4\x10\xca\x87\xa2\x66\x12\x10\n\x08URL_MAPS\x10\x87\xcf\xc7\xb4\x01\x12.\n\'VARIABLE_IPV6_PUBLIC_DELEGATED_PREFIXES\x10\xa1\xf6\x9c=\x12\x13\n\x0cVPN_GATEWAYS\x10\xba\x8b\xfe\x10\x12\x12\n\x0bVPN_TUNNELS\x10\x80\xd1\xdf\x31\x12\x1b\n\x14XPN_SERVICE_PROJECTS\x10\xad\x87\xb2-B\x08\n\x06_limitB\t\n\x07_metricB\x08\n\x06_ownerB\x08\n\x06_usage\"\xe0\x03\n\x11QuotaExceededInfo\x12R\n\ndimensions\x18\xcd\xff\xc8\xc5\x01 \x03(\x0b\x32:.google.cloud.compute.v1.QuotaExceededInfo.DimensionsEntry\x12\x1d\n\x0c\x66uture_limit\x18\xbf\xbc\xda\xd9\x01 \x01(\x01H\x00\x88\x01\x01\x12\x15\n\x05limit\x18\xbb\x97\x8d\x31 \x01(\x01H\x01\x88\x01\x01\x12\x1b\n\nlimit_name\x18\x8f\x89\xf0\xbd\x01 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0bmetric_name\x18\xba\x97\xb9\xc3\x01 \x01(\tH\x03\x88\x01\x01\x12\x1f\n\x0erollout_status\x18\xc0\xe4\x96\xe3\x01 \x01(\tH\x04\x88\x01\x01\x1a\x31\n\x0f\x44imensionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"e\n\rRolloutStatus\x12\x1c\n\x18UNDEFINED_ROLLOUT_STATUS\x10\x00\x12\x13\n\x0bIN_PROGRESS\x10\x87\xa8\xdd\xdf\x01\x12!\n\x1aROLLOUT_STATUS_UNSPECIFIED\x10\xb8\xd7\xe7\x0c\x42\x0f\n\r_future_limitB\x08\n\x06_limitB\r\n\x0b_limit_nameB\x0e\n\x0c_metric_nameB\x11\n\x0f_rollout_status\"\x88\t\n\x12QuotaStatusWarning\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\tH\x00\x88\x01\x01\x12.\n\x04\x64\x61ta\x18\xaa\xdf\xbb\x01 \x03(\x0b\x32\x1d.google.cloud.compute.v1.Data\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x01\x88\x01\x01\"\xfc\x07\n\x04\x43ode\x12\x12\n\x0eUNDEFINED_CODE\x10\x00\x12\x15\n\x0e\x43LEANUP_FAILED\x10\xd8\x8c\xd6G\x12 \n\x18\x44\x45PRECATED_RESOURCE_USED\x10\xc2\xdf\xeb\xba\x01\x12\x1c\n\x14\x44\x45PRECATED_TYPE_USED\x10\x96\xa4\x9e\xa5\x01\x12(\n DISK_SIZE_LARGER_THAN_IMAGE_SIZE\x10\x97\x81\x95\xb0\x01\x12\x1e\n\x16\x45XPERIMENTAL_TYPE_USED\x10\x8b\x8e\xc1\xd7\x01\x12\x1b\n\x14\x45XTERNAL_API_WARNING\x10\xc3\xbf\xdaS\x12\x1d\n\x15\x46IELD_VALUE_OVERRIDEN\x10\xaf\xb6\x99\x9d\x01\x12#\n\x1bINJECTED_KERNELS_DEPRECATED\x10\x8b\xd9\x82\xc7\x01\x12\x34\n,INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB\x10\xce\x9b\xbc\xbf\x01\x12 \n\x18LARGE_DEPLOYMENT_WARNING\x10\xa6\xe7\xc8\xe5\x01\x12!\n\x1aLIST_OVERHEAD_QUOTA_EXCEED\x10\xc5\xb0\xda\x16\x12\x1f\n\x17MISSING_TYPE_DEPENDENCY\x10\xf7\xf8\xa2\xa4\x01\x12%\n\x1dNEXT_HOP_ADDRESS_NOT_ASSIGNED\x10\x87\xa5\xfa\x9a\x01\x12\"\n\x1aNEXT_HOP_CANNOT_IP_FORWARD\x10\xe7\xea\xe7\xb6\x01\x12.\n\'NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE\x10\x92\xe8\xfc\x45\x12#\n\x1bNEXT_HOP_INSTANCE_NOT_FOUND\x10\xce\xcc\xaf\xdd\x01\x12\'\n NEXT_HOP_INSTANCE_NOT_ON_NETWORK\x10\xc2\xe8\x9dt\x12\x1c\n\x14NEXT_HOP_NOT_RUNNING\x10\xb1\xcf\xf0\xc6\x01\x12\x19\n\x12NOT_CRITICAL_ERROR\x10\xd4\xa8\xb7\x32\x12\x19\n\x12NO_RESULTS_ON_PAGE\x10\x88\xa6\xa9\x0e\x12\x16\n\x0fPARTIAL_SUCCESS\x10\x85\xae\x87\x13\x12\x1e\n\x16QUOTA_INFO_UNAVAILABLE\x10\xa6\xd2\x8c\x91\x01\x12\x1d\n\x16REQUIRED_TOS_AGREEMENT\x10\x83\xce\xe4\x01\x12\x31\n)RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING\x10\xc1\xf4\xed\xec\x01\x12\x1b\n\x14RESOURCE_NOT_DELETED\x10\xbc\xb7\xb2P\x12!\n\x19SCHEMA_VALIDATION_IGNORED\x10\xca\xd4\x9f\x83\x01\x12(\n!SINGLE_INSTANCE_PROPERTY_TEMPLATE\x10\xd1\x89\xf8\x7f\x12\x1d\n\x15UNDECLARED_PROPERTIES\x10\x9f\x86\x9b\xba\x01\x12\x12\n\x0bUNREACHABLE\x10\xb4\xbd\xad\x06\x42\x07\n\x05_codeB\n\n\x08_message\"\xcc\x01\n\x07RawDisk\x12\x1f\n\x0e\x63ontainer_type\x18\xb8\xc8\x82\x98\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\rsha1_checksum\x18\xbd\x94\xf8\x95\x01 \x01(\tH\x01\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\x02\x88\x01\x01\"8\n\rContainerType\x12\x1c\n\x18UNDEFINED_CONTAINER_TYPE\x10\x00\x12\t\n\x03TAR\x10\x85\x87\x05\x42\x11\n\x0f_container_typeB\x10\n\x0e_sha1_checksumB\t\n\x07_source\"\xd7\x02\n,RecreateInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x93\x01\n;instance_group_managers_recreate_instances_request_resource\x18\x80\xc2\x9a\n \x01(\x0b\x32\x46.google.cloud.compute.v1.InstanceGroupManagersRecreateInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xdb\x02\n2RecreateInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x8d\x01\n8region_instance_group_managers_recreate_request_resource\x18\x94\xfc\xc4Q \x01(\x0b\x32\x43.google.cloud.compute.v1.RegionInstanceGroupManagersRecreateRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa8\x01\n\tReference\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x0ereference_type\x18\xae\xbf\x83v \x01(\tH\x01\x88\x01\x01\x12\x19\n\x08referrer\x18\x9f\xf8\xb9\xa7\x01 \x01(\tH\x02\x88\x01\x01\x12\x16\n\x06target\x18\x91\xe3\xf9[ \x01(\tH\x03\x88\x01\x01\x42\x07\n\x05_kindB\x11\n\x0f_reference_typeB\x0b\n\t_referrerB\t\n\x07_target\"\x84\x05\n\x06Region\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12R\n\x14quota_status_warning\x18\xf6\x89\xba\x90\x01 \x01(\x0b\x32+.google.cloud.compute.v1.QuotaStatusWarningH\x06\x88\x01\x01\x12\x31\n\x06quotas\x18\xfb\xa1\xe2; \x03(\x0b\x32\x1e.google.cloud.compute.v1.Quota\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x08\x88\x01\x01\x12\x1c\n\x0csupports_pzs\x18\xee\xf6\x85( \x01(\x08H\t\x88\x01\x01\x12\x10\n\x05zones\x18\xc7\xa4\xad\x37 \x03(\t\"4\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0b\n\x04\x44OWN\x10\xa2\xb9\x80\x01\x12\x07\n\x02UP\x10\x9b\x15\x42\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x17\n\x15_quota_status_warningB\x0c\n\n_self_linkB\t\n\x07_statusB\x0f\n\r_supports_pzs\"\x88\x01\n\x1aRegionAddressesMoveRequest\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12$\n\x13\x64\x65stination_address\x18\xc3\xb1\x9e\xb1\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x16\n\x14_destination_address\"\xab\x02\n\x14RegionAutoscalerList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x35\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32#.google.cloud.compute.v1.Autoscaler\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa7\x02\n\x12RegionDiskTypeList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x33\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32!.google.cloud.compute.v1.DiskType\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"O\n\x1dRegionDiskUpdateKmsKeyRequest\x12\x1d\n\x0ckms_key_name\x18\x99\xeb\xfb\xe6\x01 \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_kms_key_name\"E\n%RegionDisksAddResourcePoliciesRequest\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\"H\n(RegionDisksRemoveResourcePoliciesRequest\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\"@\n\x18RegionDisksResizeRequest\x12\x18\n\x07size_gb\x18\xd9\x8b\x80\xec\x01 \x01(\x03H\x00\x88\x01\x01\x42\n\n\x08_size_gb\"h\n\'RegionDisksStartAsyncReplicationRequest\x12$\n\x14\x61sync_secondary_disk\x18\xab\x83\xe3> \x01(\tH\x00\x88\x01\x01\x42\x17\n\x15_async_secondary_disk\"\xb1\x02\n\x17RegionInstanceGroupList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x38\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32&.google.cloud.compute.v1.InstanceGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"E\n1RegionInstanceGroupManagerDeleteInstanceConfigReq\x12\x10\n\x05names\x18\xc8\xae\xef\x31 \x03(\t\"\xbf\x02\n\x1eRegionInstanceGroupManagerList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12?\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32-.google.cloud.compute.v1.InstanceGroupManager\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x80\x01\n0RegionInstanceGroupManagerPatchInstanceConfigReq\x12L\n\x14per_instance_configs\x18\xa9\xd5\xf8\xfa\x01 \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\"\x9a\x03\n4RegionInstanceGroupManagerResizeRequestsListResponse\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12L\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32:.google.cloud.compute.v1.InstanceGroupManagerResizeRequest\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x81\x01\n1RegionInstanceGroupManagerUpdateInstanceConfigReq\x12L\n\x14per_instance_configs\x18\xa9\xd5\xf8\xfa\x01 \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\"J\n2RegionInstanceGroupManagersAbandonInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"\xfb\x02\n.RegionInstanceGroupManagersApplyUpdatesRequest\x12\x1e\n\rall_instances\x18\xe0\xba\xbe\xc0\x01 \x01(\x08H\x00\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\x12\x1f\n\x0eminimal_action\x18\x94\x8d\x82\x81\x01 \x01(\tH\x01\x88\x01\x01\x12.\n\x1emost_disruptive_allowed_action\x18\x8d\xce\xc2\x1f \x01(\tH\x02\x88\x01\x01\"-\n\rMinimalAction\x12\x1c\n\x18UNDEFINED_MINIMAL_ACTION\x10\x00\"K\n\x1bMostDisruptiveAllowedAction\x12,\n(UNDEFINED_MOST_DISRUPTIVE_ALLOWED_ACTION\x10\x00\x42\x10\n\x0e_all_instancesB\x11\n\x0f_minimal_actionB!\n\x1f_most_disruptive_allowed_action\"u\n1RegionInstanceGroupManagersCreateInstancesRequest\x12@\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\"\xa4\x01\n1RegionInstanceGroupManagersDeleteInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\x12\x32\n\"skip_instances_on_validation_error\x18\xa1\xf6\xaf\x13 \x01(\x08H\x00\x88\x01\x01\x42%\n#_skip_instances_on_validation_error\"\xaa\x01\n-RegionInstanceGroupManagersListErrorsResponse\x12\x44\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x32.google.cloud.compute.v1.InstanceManagedByIgmError\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_next_page_token\"\xee\x01\n2RegionInstanceGroupManagersListInstanceConfigsResp\x12<\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32*.google.cloud.compute.v1.PerInstanceConfig\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x00\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x01\x88\x01\x01\x42\x12\n\x10_next_page_tokenB\n\n\x08_warning\"\xb0\x01\n0RegionInstanceGroupManagersListInstancesResponse\x12G\n\x11managed_instances\x18\xde\x9b\xa9\xa0\x01 \x03(\x0b\x32(.google.cloud.compute.v1.ManagedInstance\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_next_page_token\"B\n*RegionInstanceGroupManagersRecreateRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"I\n1RegionInstanceGroupManagersResumeInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"y\n0RegionInstanceGroupManagersSetTargetPoolsRequest\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0ctarget_pools\x18\xa9\x9f\xa0\xa0\x01 \x03(\tB\x0e\n\x0c_fingerprint\"i\n-RegionInstanceGroupManagersSetTemplateRequest\x12\"\n\x11instance_template\x18\xe4\x81\xbb\x93\x01 \x01(\tH\x00\x88\x01\x01\x42\x14\n\x12_instance_template\"H\n0RegionInstanceGroupManagersStartInstancesRequest\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\"r\n/RegionInstanceGroupManagersStopInstancesRequest\x12\x1a\n\nforce_stop\x18\xd6\xa1\xa1@ \x01(\x08H\x00\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\tB\r\n\x0b_force_stop\"{\n2RegionInstanceGroupManagersSuspendInstancesRequest\x12\x1d\n\rforce_suspend\x18\xe8\xed\x96\r \x01(\x08H\x00\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\tB\x10\n\x0e_force_suspend\"\xc4\x02\n!RegionInstanceGroupsListInstances\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x41\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32/.google.cloud.compute.v1.InstanceWithNamedPorts\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xd0\x01\n(RegionInstanceGroupsListInstancesRequest\x12\x1e\n\x0einstance_state\x18\xe7\xf0\xfc+ \x01(\tH\x00\x88\x01\x01\x12\x19\n\tport_name\x18\x89\x87\xe7\x13 \x01(\tH\x01\x88\x01\x01\"H\n\rInstanceState\x12\x1c\n\x18UNDEFINED_INSTANCE_STATE\x10\x00\x12\t\n\x03\x41LL\x10\x81\xfb\x03\x12\x0e\n\x07RUNNING\x10\x9f\xc3\xea\x39\x42\x11\n\x0f_instance_stateB\x0c\n\n_port_name\"\x94\x01\n(RegionInstanceGroupsSetNamedPortsRequest\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12;\n\x0bnamed_ports\x18\x8c\xc7\xf2\xcb\x01 \x03(\x0b\x32\".google.cloud.compute.v1.NamedPortB\x0e\n\x0c_fingerprint\"\x9d\x02\n\nRegionList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x31\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1f.google.cloud.compute.v1.Region\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"{\n1RegionNetworkEndpointGroupsAttachEndpointsRequest\x12\x46\n\x11network_endpoints\x18\xad\x91\xbaG \x03(\x0b\x32(.google.cloud.compute.v1.NetworkEndpoint\"{\n1RegionNetworkEndpointGroupsDetachEndpointsRequest\x12\x46\n\x11network_endpoints\x18\xad\x91\xbaG \x03(\x0b\x32(.google.cloud.compute.v1.NetworkEndpoint\"\x81\x02\n:RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse\x12\x88\x01\n\x10\x66irewall_policys\x18\xc2\xca\xfc\xc3\x01 \x03(\x0b\x32j.google.cloud.compute.v1.RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy\x12\x38\n\tfirewalls\x18\xf3\xc6\xe8\x81\x01 \x03(\x0b\x32!.google.cloud.compute.v1.Firewall\"\x94\x04\nQRegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy\x12\x1c\n\x0c\x64isplay_name\x18\xe8\x87\x91\x02 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12O\n\x16packet_mirroring_rules\x18\xc4\xff\xc0\xfd\x01 \x03(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRule\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x02\x88\x01\x01\x12=\n\x05rules\x18\xf7\x91\xf5\x33 \x03(\x0b\x32+.google.cloud.compute.v1.FirewallPolicyRule\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x03\x88\x01\x01\"\x99\x01\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x10\n\tHIERARCHY\x10\x95\xc4\xaa!\x12\x0f\n\x07NETWORK\x10\x8e\xcc\xb3\xc5\x01\x12\x17\n\x10NETWORK_REGIONAL\x10\xb0\xe2\xfdZ\x12\x14\n\rSYSTEM_GLOBAL\x10\xb3\x97\xd4\x1c\x12\x16\n\x0fSYSTEM_REGIONAL\x10\xaf\x8c\x92M\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x0f\n\r_display_nameB\x07\n\x05_nameB\x0b\n\t_priorityB\x07\n\x05_type\"\xd1\x01\n\x16RegionSetLabelsRequest\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x00\x88\x01\x01\x12O\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32;.google.cloud.compute.v1.RegionSetLabelsRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x14\n\x12_label_fingerprint\"\xb3\x01\n\x16RegionSetPolicyRequest\x12\x36\n\x08\x62indings\x18\x8e\xc5\xa4\xc0\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Binding\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x06policy\x18\xb2\xca\xb6+ \x01(\x0b\x32\x1f.google.cloud.compute.v1.PolicyH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_policy\"S\n!RegionSnapshotUpdateKmsKeyRequest\x12\x1d\n\x0ckms_key_name\x18\x99\xeb\xfb\xe6\x01 \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_kms_key_name\"Q\n1RegionTargetHttpsProxiesSetSslCertificatesRequest\x12\x1c\n\x10ssl_certificates\x18\x8f\xa2\xc3\xae\x01 \x03(\t\"f\n\x1cRegionUrlMapsValidateRequest\x12\x39\n\x08resource\x18\x8e\x88\xaf] \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapH\x00\x88\x01\x01\x42\x0b\n\t_resource\"\x94\x01\n&RemoveAssociationFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\r\n\x0b_request_id\"\xbe\x01\n-RemoveAssociationNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\r\n\x0b_request_id\"\x9f\x01\n2RemoveAssociationOrganizationSecurityPolicyRequest\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x07\n\x05_nameB\r\n\x0b_request_id\"\xe5\x01\n3RemoveAssociationRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\r\n\x0b_request_id\"\xb3\x02\n\"RemoveHealthCheckTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x12\x80\x01\n1target_pools_remove_health_check_request_resource\x18\xb3\xe7\xb6\x91\x01 \x01(\x0b\x32<.google.cloud.compute.v1.TargetPoolsRemoveHealthCheckRequestB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa7\x02\n\x1fRemoveInstanceTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x12x\n-target_pools_remove_instance_request_resource\x18\x83\xc0\x8b\x0e \x01(\x0b\x32\x39.google.cloud.compute.v1.TargetPoolsRemoveInstanceRequestB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb4\x02\n#RemoveInstancesInstanceGroupRequest\x12\x1e\n\x0einstance_group\x18\xd5\xd4\xd5& \x01(\tB\x03\xe0\x41\x02\x12\x81\x01\n1instance_groups_remove_instances_request_resource\x18\xb9\xd1\xb7\xba\x01 \x01(\x0b\x32=.google.cloud.compute.v1.InstanceGroupsRemoveInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xcf\x01\n5RemovePacketMirroringRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xf6\x01\n\x1bRemovePeeringNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12p\n(networks_remove_peering_request_resource\x18\xfe\xdb\xe9\xc8\x01 \x01(\x0b\x32\x35.google.cloud.compute.v1.NetworksRemovePeeringRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa3\x02\n!RemoveResourcePoliciesDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12}\n/disks_remove_resource_policies_request_resource\x18\xee\xc1\xa1\xd0\x01 \x01(\x0b\x32;.google.cloud.compute.v1.DisksRemoveResourcePoliciesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xb3\x02\n%RemoveResourcePoliciesInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x84\x01\n3instances_remove_resource_policies_request_resource\x18\xf6\xdd\xbc\x17 \x01(\x0b\x32?.google.cloud.compute.v1.InstancesRemoveResourcePoliciesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xba\x02\n\'RemoveResourcePoliciesRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x89\x01\n6region_disks_remove_resource_policies_request_resource\x18\xa3\xc3\x95\x04 \x01(\x0b\x32\x41.google.cloud.compute.v1.RegionDisksRemoveResourcePoliciesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x96\x01\n\x1fRemoveRuleFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xc0\x01\n&RemoveRuleNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xa1\x01\n+RemoveRuleOrganizationSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xe7\x01\n,RemoveRuleRegionNetworkFirewallPolicyRequest\x12 \n\x0f\x66irewall_policy\x18\xd1\x8a\xc6\xed\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_priorityB\r\n\x0b_request_id\"\xb4\x01\n%RemoveRuleRegionSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"\x8d\x01\n\x1fRemoveRuleSecurityPolicyRequest\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tB\x03\xe0\x41\x02\x42\x0b\n\t_priority\"\xe3\x02\n&ReportFaultyReservationSubBlockRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12%\n\x15reservation_sub_block\x18\x9b\xca\xec\n \x01(\tB\x03\xe0\x41\x02\x12\x88\x01\n5reservation_sub_blocks_report_faulty_request_resource\x18\xc2\xc9\xfd\xd6\x01 \x01(\x0b\x32@.google.cloud.compute.v1.ReservationSubBlocksReportFaultyRequestB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa8\x02\n!ReportHostAsFaultyInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12~\n0instances_report_host_as_faulty_request_resource\x18\xa6\x94\xcd\xeb\x01 \x01(\x0b\x32;.google.cloud.compute.v1.InstancesReportHostAsFaultyRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x7f\n\x13RequestMirrorPolicy\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0emirror_percent\x18\xc5\x8f\xa5\x84\x01 \x01(\x01H\x01\x88\x01\x01\x42\x12\n\x10_backend_serviceB\x11\n\x0f_mirror_percent\"\x8b\x02\n\"RequestRemovePeeringNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12~\n0networks_request_remove_peering_request_resource\x18\xce\xe4\xf7G \x01(\x0b\x32<.google.cloud.compute.v1.NetworksRequestRemovePeeringRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbf\x15\n\x0bReservation\x12k\n\x1b\x61\x64vanced_deployment_control\x18\xa0\x92\xe6\xc3\x01 \x01(\x0b\x32=.google.cloud.compute.v1.ReservationAdvancedDeploymentControlH\x00\x88\x01\x01\x12_\n\x15\x61ggregate_reservation\x18\xcc\xf2\x83\x8b\x01 \x01(\x0b\x32\x37.google.cloud.compute.v1.AllocationAggregateReservationH\x01\x88\x01\x01\x12\x1b\n\ncommitment\x18\x95\x96\xf3\xe5\x01 \x01(\tH\x02\x88\x01\x01\x12*\n\x19\x63onfidential_compute_type\x18\x99\xef\xa2\xb8\x01 \x01(\tH\x03\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x04\x88\x01\x01\x12I\n\x15\x64\x65lete_after_duration\x18\xab\x9b\xbf\x9a\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x05\x88\x01\x01\x12\x1e\n\x0e\x64\x65lete_at_time\x18\xc5\xf1\xdb\' \x01(\tH\x06\x88\x01\x01\x12 \n\x0f\x64\x65ployment_type\x18\xf4\x80\x96\xbd\x01 \x01(\tH\x07\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x08\x88\x01\x01\x12)\n\x18\x65\x61rly_access_maintenance\x18\x94\x8e\xff\xa3\x01 \x01(\tH\t\x88\x01\x01\x12,\n\x1b\x65nable_emergent_maintenance\x18\x89\xe2\xd7\xa8\x01 \x01(\x08H\n\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x0b\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x0c\x88\x01\x01\x12\x1e\n\x12linked_commitments\x18\xd8\xfd\xc8\xe0\x01 \x03(\t\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\r\x88\x01\x01\x12\x42\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32*.google.cloud.compute.v1.ReservationParamsH\x0e\x88\x01\x01\x12 \n\x0fprotection_tier\x18\x88\x9f\xa7\xf0\x01 \x01(\tH\x0f\x88\x01\x01\x12g\n\x1areservation_sharing_policy\x18\xc8\xb5\x9b\x62 \x01(\x0b\x32;.google.cloud.compute.v1.AllocationReservationSharingPolicyH\x10\x88\x01\x01\x12X\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\x0b\x32:.google.cloud.compute.v1.Reservation.ResourcePoliciesEntry\x12R\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32\x31.google.cloud.compute.v1.AllocationResourceStatusH\x11\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x12\x88\x01\x01\x12\x1f\n\x0fscheduling_type\x18\x85\xfe\xa4_ \x01(\tH\x13\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x14\x88\x01\x01\x12\x46\n\x0eshare_settings\x18\x83\x91\x94\x7f \x01(\x0b\x32&.google.cloud.compute.v1.ShareSettingsH\x15\x88\x01\x01\x12`\n\x14specific_reservation\x18\xbf\xa0\x89\xc1\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.AllocationSpecificSKUReservationH\x16\x88\x01\x01\x12-\n\x1dspecific_reservation_required\x18\x9f\xc7\x83l \x01(\x08H\x17\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x18\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x19\x88\x01\x01\x1a\x37\n\x15ResourcePoliciesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x97\x01\n\x17\x43onfidentialComputeType\x12\'\n#UNDEFINED_CONFIDENTIAL_COMPUTE_TYPE\x10\x00\x12%\n\x1d\x43ONFIDENTIAL_COMPUTE_TYPE_TDX\x10\xe2\xac\xd2\x8f\x01\x12,\n%CONFIDENTIAL_COMPUTE_TYPE_UNSPECIFIED\x10\x91\xaf\x91\x14\"a\n\x0e\x44\x65ploymentType\x12\x1d\n\x19UNDEFINED_DEPLOYMENT_TYPE\x10\x00\x12\x0c\n\x05\x44\x45NSE\x10\xff\x95\xfb\x1e\x12\"\n\x1b\x44\x45PLOYMENT_TYPE_UNSPECIFIED\x10\xcc\xf7\xfdo\"t\n\x16\x45\x61rlyAccessMaintenance\x12&\n\"UNDEFINED_EARLY_ACCESS_MAINTENANCE\x10\x00\x12\x16\n\x0fNO_EARLY_ACCESS\x10\x9e\xcf\xa1i\x12\x0c\n\x05WAVE1\x10\xd8\xa8\xa3\'\x12\x0c\n\x05WAVE2\x10\xd9\xa8\xa3\'\"\x80\x01\n\x0eProtectionTier\x12\x1d\n\x19UNDEFINED_PROTECTION_TIER\x10\x00\x12\x19\n\x12\x43\x41PACITY_OPTIMIZED\x10\xc2\xef\xa7\x08\x12\"\n\x1bPROTECTION_TIER_UNSPECIFIED\x10\xe0\x99\x87}\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\"\x80\x01\n\x0eSchedulingType\x12\x1d\n\x19UNDEFINED_SCHEDULING_TYPE\x10\x00\x12\x0f\n\x07GROUPED\x10\xbe\xd6\xa3\xe2\x01\x12*\n\"GROUP_MAINTENANCE_TYPE_UNSPECIFIED\x10\xbe\xf6\x9d\xd5\x01\x12\x12\n\x0bINDEPENDENT\x10\xda\x96\xc8<\"s\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x10\n\x08UPDATING\x10\xc6\xee\xec\xeb\x01\x42\x1e\n\x1c_advanced_deployment_controlB\x18\n\x16_aggregate_reservationB\r\n\x0b_commitmentB\x1c\n\x1a_confidential_compute_typeB\x15\n\x13_creation_timestampB\x18\n\x16_delete_after_durationB\x11\n\x0f_delete_at_timeB\x12\n\x10_deployment_typeB\x0e\n\x0c_descriptionB\x1b\n\x19_early_access_maintenanceB\x1e\n\x1c_enable_emergent_maintenanceB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_paramsB\x12\n\x10_protection_tierB\x1d\n\x1b_reservation_sharing_policyB\x12\n\x10_resource_statusB\x10\n\x0e_satisfies_pzsB\x12\n\x10_scheduling_typeB\x0c\n\n_self_linkB\x11\n\x0f_share_settingsB\x17\n\x15_specific_reservationB \n\x1e_specific_reservation_requiredB\t\n\x07_statusB\x07\n\x05_zone\"\xaa\x02\n$ReservationAdvancedDeploymentControl\x12-\n\x1creservation_operational_mode\x18\x83\xa4\xb4\xee\x01 \x01(\tH\x00\x88\x01\x01\"\xb1\x01\n\x1aReservationOperationalMode\x12*\n&UNDEFINED_RESERVATION_OPERATIONAL_MODE\x10\x00\x12\x14\n\x0c\x41LL_CAPACITY\x10\xb8\xb3\xb7\xee\x01\x12 \n\x19HIGHLY_AVAILABLE_CAPACITY\x10\xa0\xba\xee\x34\x12/\n(RESERVATION_OPERATIONAL_MODE_UNSPECIFIED\x10\x9b\xf6\xd2\\B\x1f\n\x1d_reservation_operational_mode\"\xb0\x02\n\x13ReservationAffinity\x12)\n\x18\x63onsume_reservation_type\x18\xb0\xc3\xb3\x8f\x01 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x03key\x18\xdf\xbc\x06 \x01(\tH\x01\x88\x01\x01\x12\x11\n\x06values\x18\xa2\xba\x96w \x03(\t\"\xa1\x01\n\x16\x43onsumeReservationType\x12&\n\"UNDEFINED_CONSUME_RESERVATION_TYPE\x10\x00\x12\x16\n\x0f\x41NY_RESERVATION\x10\xb9\xc3\xaf_\x12\x15\n\x0eNO_RESERVATION\x10\xae\xcc\xdeP\x12\x1b\n\x14SPECIFIC_RESERVATION\x10\x9f\xa8\xcfm\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x1b\n\x19_consume_reservation_typeB\x06\n\x04_key\"\xc2\x03\n\x19ReservationAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12O\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32=.google.cloud.compute.v1.ReservationAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a]\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12>\n\x05value\x18\x02 \x01(\x0b\x32/.google.cloud.compute.v1.ReservationsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xac\x08\n\x10ReservationBlock\x12\x15\n\x05\x63ount\x18\x8f\xa2\x9d- \x01(\x05H\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12P\n\x0bhealth_info\x18\xb1\xe9\x98p \x01(\x0b\x32\x33.google.cloud.compute.v1.ReservationBlockHealthInfoH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x1d\n\x0cin_use_count\x18\xbd\xab\xa6\xeb\x01 \x01(\x05H\x04\x88\x01\x01\x12\"\n\x11in_use_host_count\x18\xca\x87\xcd\xad\x01 \x01(\x05H\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12]\n\x11physical_topology\x18\xd7\xa9\xb4\x85\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.ReservationBlockPhysicalTopologyH\x08\x88\x01\x01\x12W\n\x17reservation_maintenance\x18\xa0\x86\xb5\xa2\x01 \x01(\x0b\x32-.google.cloud.compute.v1.GroupMaintenanceInfoH\t\x88\x01\x01\x12,\n\x1breservation_sub_block_count\x18\xeb\xb1\xdd\x9d\x01 \x01(\x05H\n\x88\x01\x01\x12\x32\n\"reservation_sub_block_in_use_count\x18\xe1\xfc\xd8X \x01(\x05H\x0b\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\r\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x0e\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0f\x88\x01\x01\"a\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B\x08\n\x06_countB\x15\n\x13_creation_timestampB\x0e\n\x0c_health_infoB\x05\n\x03_idB\x0f\n\r_in_use_countB\x14\n\x12_in_use_host_countB\x07\n\x05_kindB\x07\n\x05_nameB\x14\n\x12_physical_topologyB\x1a\n\x18_reservation_maintenanceB\x1e\n\x1c_reservation_sub_block_countB%\n#_reservation_sub_block_in_use_countB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\t\n\x07_statusB\x07\n\x05_zone\"\xce\x02\n\x1aReservationBlockHealthInfo\x12)\n\x18\x64\x65graded_sub_block_count\x18\xcd\xe8\xb4\xda\x01 \x01(\x05H\x00\x88\x01\x01\x12\x1e\n\rhealth_status\x18\xb5\xd6\xba\xb5\x01 \x01(\tH\x01\x88\x01\x01\x12\'\n\x17healthy_sub_block_count\x18\xbc\xb9\xc6\x02 \x01(\x05H\x02\x88\x01\x01\"q\n\x0cHealthStatus\x12\x1b\n\x17UNDEFINED_HEALTH_STATUS\x10\x00\x12\x10\n\x08\x44\x45GRADED\x10\xae\xa6\xa0\xbd\x01\x12\x0f\n\x07HEALTHY\x10\xfd\xaa\xdb\xd1\x01\x12!\n\x19HEALTH_STATUS_UNSPECIFIED\x10\x8d\x82\xfa\xe5\x01\x42\x1b\n\x19_degraded_sub_block_countB\x10\n\x0e_health_statusB\x1a\n\x18_healthy_sub_block_count\"\xc2\x01\n ReservationBlockPhysicalTopology\x12\x15\n\x05\x62lock\x18\x8d\x89\xdf, \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07\x63luster\x18\xfa\xa3\xec\x9f\x01 \x01(\tH\x01\x88\x01\x01\x12W\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32\x41.google.cloud.compute.v1.ReservationBlockPhysicalTopologyInstanceB\x08\n\x06_blockB\n\n\x08_cluster\"\x9d\x02\n(ReservationBlockPhysicalTopologyInstance\x12\x1b\n\x0binstance_id\x18\x85\xb2\xd8\x15 \x01(\x04H\x00\x88\x01\x01\x12~\n\x16physical_host_topology\x18\xbe\x93\xaf\xba\x01 \x01(\x0b\x32U.google.cloud.compute.v1.ReservationBlockPhysicalTopologyInstancePhysicalHostTopologyH\x01\x88\x01\x01\x12\x1a\n\nproject_id\x18\x81\xc8\xd2T \x01(\x04H\x02\x88\x01\x01\x42\x0e\n\x0c_instance_idB\x19\n\x17_physical_host_topologyB\r\n\x0b_project_id\"\x87\x01\n\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32,.google.cloud.compute.v1.ReservationSubBlock\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x8c\x04\n\'ReservationSubBlocksReportFaultyRequest\x12#\n\x13\x64isruption_schedule\x18\x83\xc5\xdb- \x01(\tH\x00\x88\x01\x01\x12!\n\x11\x66\x61ilure_component\x18\x88\xc9\xad\x0c \x01(\tH\x01\x88\x01\x01\x12\x65\n\rfault_reasons\x18\x92\xab\x91P \x03(\x0b\x32K.google.cloud.compute.v1.ReservationSubBlocksReportFaultyRequestFaultReason\"r\n\x12\x44isruptionSchedule\x12!\n\x1dUNDEFINED_DISRUPTION_SCHEDULE\x10\x00\x12\'\n\x1f\x44ISRUPTION_SCHEDULE_UNSPECIFIED\x10\xdb\xee\xc8\x9e\x01\x12\x10\n\tIMMEDIATE\x10\x91\x8f\xf3H\"\x8f\x01\n\x10\x46\x61ilureComponent\x12\x1f\n\x1bUNDEFINED_FAILURE_COMPONENT\x10\x00\x12%\n\x1d\x46\x41ILURE_COMPONENT_UNSPECIFIED\x10\xa0\xf3\xa7\x9e\x01\x12\x1d\n\x15MULTIPLE_FAULTY_HOSTS\x10\xd2\x93\xfb\xc9\x01\x12\x14\n\rNVLINK_SWITCH\x10\xd1\xf8\x81rB\x16\n\x14_disruption_scheduleB\x14\n\x12_failure_component\"\xaf\x02\n2ReservationSubBlocksReportFaultyRequestFaultReason\x12\x19\n\x08\x62\x65havior\x18\xd2\xe4\xba\xd0\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\"\xa2\x01\n\x08\x42\x65havior\x12\x16\n\x12UNDEFINED_BEHAVIOR\x10\x00\x12\"\n\x1a\x46\x41ULT_BEHAVIOR_UNSPECIFIED\x10\xc7\x85\xbb\xd5\x01\x12\x10\n\tGPU_ERROR\x10\xf5\xf0\xe6^\x12\x12\n\x0bPERFORMANCE\x10\x90\xc8\xda@\x12\x1d\n\x16SILENT_DATA_CORRUPTION\x10\xa6\xf5\x8c\x35\x12\x15\n\x0eSWITCH_FAILURE\x10\xdf\xb6\xc6yB\x0b\n\t_behaviorB\x0e\n\x0c_description\"\xfa\x01\n+ReservationsBlocksPerformMaintenanceRequest\x12!\n\x11maintenance_scope\x18\xa8\xf4\x8a\x43 \x01(\tH\x00\x88\x01\x01\"\x91\x01\n\x10MaintenanceScope\x12\x1f\n\x1bUNDEFINED_MAINTENANCE_SCOPE\x10\x00\x12\t\n\x03\x41LL\x10\x81\xfb\x03\x12$\n\x1dMAINTENANCE_SCOPE_UNSPECIFIED\x10\xc0\x9e\xcb%\x12\x13\n\x0bRUNNING_VMS\x10\xdc\xeb\xbc\xff\x01\x12\x16\n\x0fUNUSED_CAPACITY\x10\x83\xda\xb7\x65\x42\x14\n\x12_maintenance_scope\"\xf4\x01\n%ReservationsPerformMaintenanceRequest\x12!\n\x11maintenance_scope\x18\xa8\xf4\x8a\x43 \x01(\tH\x00\x88\x01\x01\"\x91\x01\n\x10MaintenanceScope\x12\x1f\n\x1bUNDEFINED_MAINTENANCE_SCOPE\x10\x00\x12\t\n\x03\x41LL\x10\x81\xfb\x03\x12$\n\x1dMAINTENANCE_SCOPE_UNSPECIFIED\x10\xc0\x9e\xcb%\x12\x13\n\x0bRUNNING_VMS\x10\xdc\xeb\xbc\xff\x01\x12\x16\n\x0fUNUSED_CAPACITY\x10\x83\xda\xb7\x65\x42\x14\n\x12_maintenance_scope\"V\n\x19ReservationsResizeRequest\x12\"\n\x12specific_sku_count\x18\xa0\xe9\xcf\x06 \x01(\x03H\x00\x88\x01\x01\x42\x15\n\x13_specific_sku_count\"\x9f\x01\n\x16ReservationsScopedList\x12>\n\x0creservations\x18\xa7\xec\xcc\xbe\x01 \x03(\x0b\x32$.google.cloud.compute.v1.Reservation\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x9b\x01\n\x14ResetInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf0\x01\n\x11ResizeDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12Z\n\x1d\x64isks_resize_request_resource\x18\xa0\xc2\xab% \x01(\x0b\x32+.google.cloud.compute.v1.DisksResizeRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xcc\x01\n!ResizeInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04size\x18\x81\xc0\xd7\x01 \x01(\x05\x42\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x88\x02\n\x17ResizeRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12h\n$region_disks_resize_request_resource\x18\x95\xaa\xfc\xd4\x01 \x01(\x0b\x32\x31.google.cloud.compute.v1.RegionDisksResizeRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd6\x01\n\'ResizeRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04size\x18\x81\xc0\xd7\x01 \x01(\x05\x42\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x8d\x02\n\x18ResizeReservationRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12i\n$reservations_resize_request_resource\x18\xd1\xdb\xce\xb9\x01 \x01(\x0b\x32\x32.google.cloud.compute.v1.ReservationsResizeRequestB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x82\x02\n\x12ResourceCommitment\x12 \n\x10\x61\x63\x63\x65lerator_type\x18\x8e\xe1\xe8\x41 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06\x61mount\x18\xd8\xa0\xe9] \x01(\x03H\x01\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x02\x88\x01\x01\"s\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x13\n\x0b\x41\x43\x43\x45LERATOR\x10\xcb\xec\xf9\xcc\x01\x12\x11\n\tLOCAL_SSD\x10\xf0\xf5\xd6\xf2\x01\x12\r\n\x06MEMORY\x10\x81\xe2\xd6:\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x12\x0b\n\x04VCPU\x10\xf2\xba\xa0\x01\x42\x13\n\x11_accelerator_typeB\t\n\x07_amountB\x07\n\x05_type\"9\n\x16ResourceGroupReference\x12\x15\n\x05group\x18\xff\xec\x83/ \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_group\"\xaa\x01\n\x1aResourcePoliciesScopedList\x12\x45\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\x0b\x32\'.google.cloud.compute.v1.ResourcePolicy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xae\t\n\x0eResourcePolicy\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12q\n\x1d\x64isk_consistency_group_policy\x18\x9b\x84\xf2\xe1\x01 \x01(\x0b\x32\x41.google.cloud.compute.v1.ResourcePolicyDiskConsistencyGroupPolicyH\x02\x88\x01\x01\x12\x63\n\x16group_placement_policy\x18\x8c\x9b\x9b\x05 \x01(\x0b\x32;.google.cloud.compute.v1.ResourcePolicyGroupPlacementPolicyH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12h\n\x18instance_schedule_policy\x18\xb0\xd0\xb9\xa4\x01 \x01(\x0b\x32=.google.cloud.compute.v1.ResourcePolicyInstanceSchedulePolicyH\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x08\x88\x01\x01\x12V\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32\x35.google.cloud.compute.v1.ResourcePolicyResourceStatusH\t\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\n\x88\x01\x01\x12g\n\x18snapshot_schedule_policy\x18\xdf\xd6\x81h \x01(\x0b\x32=.google.cloud.compute.v1.ResourcePolicySnapshotSchedulePolicyH\x0b\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x0c\x88\x01\x01\x12V\n\x0fworkload_policy\x18\xfa\x85\xda\x36 \x01(\x0b\x32\x35.google.cloud.compute.v1.ResourcePolicyWorkloadPolicyH\r\x88\x01\x01\"r\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0f\n\x07\x45XPIRED\x10\x85\xe6\x88\xe6\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB \n\x1e_disk_consistency_group_policyB\x19\n\x17_group_placement_policyB\x05\n\x03_idB\x1b\n\x19_instance_schedule_policyB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x12\n\x10_resource_statusB\x0c\n\n_self_linkB\x1b\n\x19_snapshot_schedule_policyB\t\n\x07_statusB\x12\n\x10_workload_policy\"\xeb\x03\n\x1cResourcePolicyAggregatedList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12R\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32@.google.cloud.compute.v1.ResourcePolicyAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.ResourcePoliciesScopedList:\x02\x38\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x9e\x01\n\x18ResourcePolicyDailyCycle\x12\x1e\n\rdays_in_cycle\x18\xb4\x98\xaa\xb0\x01 \x01(\x05H\x00\x88\x01\x01\x12\x18\n\x08\x64uration\x18\x94\x9b\x91J \x01(\tH\x01\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x02\x88\x01\x01\x42\x10\n\x0e_days_in_cycleB\x0b\n\t_durationB\r\n\x0b_start_time\"*\n(ResourcePolicyDiskConsistencyGroupPolicy\"\x8b\x04\n\"ResourcePolicyGroupPlacementPolicy\x12*\n\x19\x61\x63\x63\x65lerator_topology_mode\x18\x9f\xf5\xc7\x87\x01 \x01(\tH\x00\x88\x01\x01\x12)\n\x19\x61vailability_domain_count\x18\xb8\x8c\xf8\x05 \x01(\x05H\x01\x88\x01\x01\x12\x1c\n\x0b\x63ollocation\x18\xb5\xc2\xde\xf3\x01 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0cgpu_topology\x18\xa2\xc9\x9dv \x01(\tH\x03\x88\x01\x01\x12\x18\n\x08vm_count\x18\x87\xbb\xd6| \x01(\x05H\x04\x88\x01\x01\"p\n\x17\x41\x63\x63\x65leratorTopologyMode\x12\'\n#UNDEFINED_ACCELERATOR_TOPOLOGY_MODE\x10\x00\x12\x14\n\x0c\x41UTO_CONNECT\x10\xba\xc4\xc5\xea\x01\x12\x16\n\x0ePROVISION_ONLY\x10\xf6\xa1\xa9\xbe\x01\"\\\n\x0b\x43ollocation\x12\x19\n\x15UNDEFINED_COLLOCATION\x10\x00\x12\x11\n\nCOLLOCATED\x10\xd2\xab\x9e\x31\x12\x1f\n\x17UNSPECIFIED_COLLOCATION\x10\xed\x8f\xb3\xdd\x01\x42\x1c\n\x1a_accelerator_topology_modeB\x1c\n\x1a_availability_domain_countB\x0e\n\x0c_collocationB\x0f\n\r_gpu_topologyB\x0b\n\t_vm_count\"\xa1\x01\n\x19ResourcePolicyHourlyCycle\x12\x18\n\x08\x64uration\x18\x94\x9b\x91J \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0ehours_in_cycle\x18\xfc\x88\x97\xfb\x01 \x01(\x05H\x01\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x02\x88\x01\x01\x42\x0b\n\t_durationB\x11\n\x0f_hours_in_cycleB\r\n\x0b_start_time\"\xae\x03\n$ResourcePolicyInstanceSchedulePolicy\x12\x1f\n\x0f\x65xpiration_time\x18\xdd\xac\xe8m \x01(\tH\x00\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x01\x88\x01\x01\x12\x19\n\ttime_zone\x18\xde\x83\xc9\x11 \x01(\tH\x02\x88\x01\x01\x12h\n\x11vm_start_schedule\x18\xdc\x90\xbc\x08 \x01(\x0b\x32\x45.google.cloud.compute.v1.ResourcePolicyInstanceSchedulePolicyScheduleH\x03\x88\x01\x01\x12h\n\x10vm_stop_schedule\x18\xac\xe5\x9f\xcb\x01 \x01(\x0b\x32\x45.google.cloud.compute.v1.ResourcePolicyInstanceSchedulePolicyScheduleH\x04\x88\x01\x01\x42\x12\n\x10_expiration_timeB\r\n\x0b_start_timeB\x0c\n\n_time_zoneB\x14\n\x12_vm_start_scheduleB\x13\n\x11_vm_stop_schedule\"V\n,ResourcePolicyInstanceSchedulePolicySchedule\x12\x19\n\x08schedule\x18\x97\xa5\x9a\xb3\x01 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_schedule\"\xcc\x02\n\x12ResourcePolicyList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.ResourcePolicy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb9\x01\n\x1cResourcePolicyResourceStatus\x12|\n\x18instance_schedule_policy\x18\xb0\xd0\xb9\xa4\x01 \x01(\x0b\x32Q.google.cloud.compute.v1.ResourcePolicyResourceStatusInstanceSchedulePolicyStatusH\x00\x88\x01\x01\x42\x1b\n\x19_instance_schedule_policy\"\xb6\x01\n8ResourcePolicyResourceStatusInstanceSchedulePolicyStatus\x12$\n\x13last_run_start_time\x18\x87\xef\xc1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12$\n\x13next_run_start_time\x18\x8a\xb3\xf8\x97\x01 \x01(\tH\x01\x88\x01\x01\x42\x16\n\x14_last_run_start_timeB\x16\n\x14_next_run_start_time\"\xa8\x03\n$ResourcePolicySnapshotSchedulePolicy\x12n\n\x10retention_policy\x18\xf3\xca\xdc \x01(\x0b\x32L.google.cloud.compute.v1.ResourcePolicySnapshotSchedulePolicyRetentionPolicyH\x00\x88\x01\x01\x12`\n\x08schedule\x18\x97\xa5\x9a\xb3\x01 \x01(\x0b\x32\x45.google.cloud.compute.v1.ResourcePolicySnapshotSchedulePolicyScheduleH\x01\x88\x01\x01\x12t\n\x13snapshot_properties\x18\x8e\x95\xb2X \x01(\x0b\x32O.google.cloud.compute.v1.ResourcePolicySnapshotSchedulePolicySnapshotPropertiesH\x02\x88\x01\x01\x42\x13\n\x11_retention_policyB\x0b\n\t_scheduleB\x16\n\x14_snapshot_properties\"\xd5\x02\n3ResourcePolicySnapshotSchedulePolicyRetentionPolicy\x12#\n\x12max_retention_days\x18\x93\xc2\xd1\x9a\x01 \x01(\x05H\x00\x88\x01\x01\x12&\n\x15on_source_disk_delete\x18\xc9\xcd\xc2\x99\x01 \x01(\tH\x01\x88\x01\x01\"\x9f\x01\n\x12OnSourceDiskDelete\x12#\n\x1fUNDEFINED_ON_SOURCE_DISK_DELETE\x10\x00\x12\x1e\n\x16\x41PPLY_RETENTION_POLICY\x10\xe4\x94\x92\xff\x01\x12\x1a\n\x13KEEP_AUTO_SNAPSHOTS\x10\xf9\xc8\xbb{\x12(\n!UNSPECIFIED_ON_SOURCE_DISK_DELETE\x10\xa1\xff\x83rB\x15\n\x13_max_retention_daysB\x18\n\x16_on_source_disk_delete\"\xe7\x02\n,ResourcePolicySnapshotSchedulePolicySchedule\x12Q\n\x0e\x64\x61ily_schedule\x18\xfd\xe3\x8a) \x01(\x0b\x32\x31.google.cloud.compute.v1.ResourcePolicyDailyCycleH\x00\x88\x01\x01\x12S\n\x0fhourly_schedule\x18\xa5\xb1\xa3\x12 \x01(\x0b\x32\x32.google.cloud.compute.v1.ResourcePolicyHourlyCycleH\x01\x88\x01\x01\x12T\n\x0fweekly_schedule\x18\x95\x89\xb9\xab\x01 \x01(\x0b\x32\x32.google.cloud.compute.v1.ResourcePolicyWeeklyCycleH\x02\x88\x01\x01\x42\x11\n\x0f_daily_scheduleB\x12\n\x10_hourly_scheduleB\x12\n\x10_weekly_schedule\"\xd0\x02\n6ResourcePolicySnapshotSchedulePolicySnapshotProperties\x12\x1a\n\nchain_name\x18\xc9\xda\xdd \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bguest_flush\x18\xdd\x93\xec\xb7\x01 \x01(\x08H\x01\x88\x01\x01\x12o\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32[.google.cloud.compute.v1.ResourcePolicySnapshotSchedulePolicySnapshotProperties.LabelsEntry\x12\x1d\n\x11storage_locations\x18\x9a\xed\xb3\x9c\x01 \x03(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\r\n\x0b_chain_nameB\x0e\n\x0c_guest_flush\"q\n\x19ResourcePolicyWeeklyCycle\x12T\n\x0c\x64\x61y_of_weeks\x18\xda\x9f\xfbz \x03(\x0b\x32;.google.cloud.compute.v1.ResourcePolicyWeeklyCycleDayOfWeek\"\xb4\x02\n\"ResourcePolicyWeeklyCycleDayOfWeek\x12\x12\n\x03\x64\x61y\x18\x9c\x87\x06 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08\x64uration\x18\x94\x9b\x91J \x01(\tH\x01\x88\x01\x01\x12\x1a\n\nstart_time\x18\x8a\xe9\xee\x11 \x01(\tH\x02\x88\x01\x01\"\x9f\x01\n\x03\x44\x61y\x12\x11\n\rUNDEFINED_DAY\x10\x00\x12\x0e\n\x06\x46RIDAY\x10\xdf\xf2\xe3\xe0\x01\x12\x0f\n\x07INVALID\x10\xd7\xfb\xed\xfc\x01\x12\r\n\x06MONDAY\x10\x90\xca\x8b?\x12\x10\n\x08SATURDAY\x10\xb9\x8f\x87\x85\x01\x12\x0e\n\x06SUNDAY\x10\xd0\x8b\xd2\x93\x01\x12\x0f\n\x08THURSDAY\x10\xda\xb3\xe6\x62\x12\x0f\n\x07TUESDAY\x10\xad\xec\xa9\x84\x01\x12\x11\n\tWEDNESDAY\x10\xb6\xce\x9e\xc9\x01\x42\x06\n\x04_dayB\x0b\n\t_durationB\r\n\x0b_start_time\"\xb6\x04\n\x1cResourcePolicyWorkloadPolicy\x12%\n\x14\x61\x63\x63\x65lerator_topology\x18\xc3\xb3\xd2\xb9\x01 \x01(\tH\x00\x88\x01\x01\x12*\n\x19\x61\x63\x63\x65lerator_topology_mode\x18\x9f\xf5\xc7\x87\x01 \x01(\tH\x01\x88\x01\x01\x12%\n\x15max_topology_distance\x18\xaa\x8b\xcb\x03 \x01(\tH\x02\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x03\x88\x01\x01\"p\n\x17\x41\x63\x63\x65leratorTopologyMode\x12\'\n#UNDEFINED_ACCELERATOR_TOPOLOGY_MODE\x10\x00\x12\x14\n\x0c\x41UTO_CONNECT\x10\xba\xc4\xc5\xea\x01\x12\x16\n\x0ePROVISION_ONLY\x10\xf6\xa1\xa9\xbe\x01\"k\n\x13MaxTopologyDistance\x12#\n\x1fUNDEFINED_MAX_TOPOLOGY_DISTANCE\x10\x00\x12\x0c\n\x05\x42LOCK\x10\xed\x98\x97\x1e\x12\x0f\n\x07\x43LUSTER\x10\xda\xbb\x9a\xf6\x01\x12\x10\n\x08SUBBLOCK\x10\xcd\xbc\xe3\x96\x01\"M\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x19\n\x11HIGH_AVAILABILITY\x10\xd8\x91\xa1\xc3\x01\x12\x16\n\x0fHIGH_THROUGHPUT\x10\xe7\xd1\xed\x45\x42\x17\n\x15_accelerator_topologyB\x1c\n\x1a_accelerator_topology_modeB\x18\n\x16_max_topology_distanceB\x07\n\x05_type\"\xb0\x05\n\x0eResourceStatus\x12m\n\x1b\x65\x66\x66\x65\x63tive_instance_metadata\x18\x81\x8e\xa0\x1a \x01(\x0b\x32@.google.cloud.compute.v1.ResourceStatusEffectiveInstanceMetadataH\x00\x88\x01\x01\x12\x1e\n\rphysical_host\x18\x90\xf8\xb6\xdd\x01 \x01(\tH\x01\x88\x01\x01\x12\x64\n\x16physical_host_topology\x18\xbe\x93\xaf\xba\x01 \x01(\x0b\x32;.google.cloud.compute.v1.ResourceStatusPhysicalHostTopologyH\x02\x88\x01\x01\x12o\n\x1creservation_consumption_info\x18\xe5\xc5\xef_ \x01(\x0b\x32\x41.google.cloud.compute.v1.ResourceStatusReservationConsumptionInfoH\x03\x88\x01\x01\x12N\n\nscheduling\x18\x94\xcb\xb1\xb8\x01 \x01(\x0b\x32\x31.google.cloud.compute.v1.ResourceStatusSchedulingH\x04\x88\x01\x01\x12R\n\x14upcoming_maintenance\x18\xf0\xa0\xb4l \x01(\x0b\x32,.google.cloud.compute.v1.UpcomingMaintenanceH\x05\x88\x01\x01\x42\x1e\n\x1c_effective_instance_metadataB\x10\n\x0e_physical_hostB\x19\n\x17_physical_host_topologyB\x1f\n\x1d_reservation_consumption_infoB\r\n\x0b_schedulingB\x17\n\x15_upcoming_maintenance\"\xed\x06\n\'ResourceStatusEffectiveInstanceMetadata\x12\x36\n%block_project_ssh_keys_metadata_value\x18\xfd\xf4\xbb\xa1\x01 \x01(\x08H\x00\x88\x01\x01\x12\x37\n&enable_guest_attributes_metadata_value\x18\xe6\xa3\xac\xc8\x01 \x01(\x08H\x01\x88\x01\x01\x12\x33\n\"enable_os_inventory_metadata_value\x18\xe3\xfd\xa1\xb1\x01 \x01(\x08H\x02\x88\x01\x01\x12/\n\x1e\x65nable_osconfig_metadata_value\x18\xde\xd1\xea\xef\x01 \x01(\x08H\x03\x88\x01\x01\x12-\n\x1d\x65nable_oslogin_metadata_value\x18\x97\xb4\xa4g \x01(\x08H\x04\x88\x01\x01\x12\x38\n(gce_container_declaration_metadata_value\x18\xba\xaf\xdch \x01(\x08H\x05\x88\x01\x01\x12\x32\n!serial_port_enable_metadata_value\x18\x8a\xed\xa5\xcd\x01 \x01(\x08H\x06\x88\x01\x01\x12:\n)serial_port_logging_enable_metadata_value\x18\xaa\xc9\xd7\x94\x01 \x01(\x08H\x07\x88\x01\x01\x12.\n\x1dvm_dns_setting_metadata_value\x18\x8e\xa1\x85\xc4\x01 \x01(\tH\x08\x88\x01\x01\x42(\n&_block_project_ssh_keys_metadata_valueB)\n\'_enable_guest_attributes_metadata_valueB%\n#_enable_os_inventory_metadata_valueB!\n\x1f_enable_osconfig_metadata_valueB \n\x1e_enable_oslogin_metadata_valueB+\n)_gce_container_declaration_metadata_valueB$\n\"_serial_port_enable_metadata_valueB,\n*_serial_port_logging_enable_metadata_valueB \n\x1e_vm_dns_setting_metadata_value\"\xb1\x01\n\"ResourceStatusPhysicalHostTopology\x12\x15\n\x05\x62lock\x18\x8d\x89\xdf, \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07\x63luster\x18\xfa\xa3\xec\x9f\x01 \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04host\x18\xa8\xeb\xc3\x01 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x08subblock\x18\xcd\xdc\xcb! \x01(\tH\x03\x88\x01\x01\x42\x08\n\x06_blockB\n\n\x08_clusterB\x07\n\x05_hostB\x0b\n\t_subblock\"j\n(ResourceStatusReservationConsumptionInfo\x12%\n\x14\x63onsumed_reservation\x18\xf5\x93\xee\x97\x01 \x01(\tH\x00\x88\x01\x01\x42\x17\n\x15_consumed_reservation\"W\n\x18ResourceStatusScheduling\x12#\n\x13\x61vailability_domain\x18\xa8\xa0\xb4x \x01(\x05H\x00\x88\x01\x01\x42\x16\n\x14_availability_domain\"\x9c\x01\n\x15ResumeInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xd1\x02\n*ResumeInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x8f\x01\n9instance_group_managers_resume_instances_request_resource\x18\xc2\xbe\xc2= \x01(\x0b\x32\x44.google.cloud.compute.v1.InstanceGroupManagersResumeInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe9\x02\n0ResumeInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9d\x01\n@region_instance_group_managers_resume_instances_request_resource\x18\xb7\x83\x80\xdd\x01 \x01(\x0b\x32J.google.cloud.compute.v1.RegionInstanceGroupManagersResumeInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xed\x0c\n\x05Route\x12\x39\n\x08\x61s_paths\x18\xa1\xc5\xcc\x41 \x03(\x0b\x32$.google.cloud.compute.v1.RouteAsPath\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\ndest_range\x18\xe0\xb2\xea\xb5\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x06\x88\x01\x01\x12!\n\x10next_hop_gateway\x18\x82\xfa\xec\xb3\x01 \x01(\tH\x07\x88\x01\x01\x12\x1c\n\x0cnext_hop_hub\x18\xb3\xb5\xde^ \x01(\tH\x08\x88\x01\x01\x12\x1c\n\x0cnext_hop_ilb\x18\xdd\xba\xde^ \x01(\tH\t\x88\x01\x01\x12\"\n\x11next_hop_instance\x18\x97\xeb\xd1\xbb\x01 \x01(\tH\n\x88\x01\x01\x12*\n\x1anext_hop_inter_region_cost\x18\x93\xe9\xd3\x0b \x01(\rH\x0b\x88\x01\x01\x12\x30\n next_hop_interconnect_attachment\x18\xb2\x80\x96l \x01(\tH\x0c\x88\x01\x01\x12\x1b\n\x0bnext_hop_ip\x18\xa9\xaf\xcd\x34 \x01(\tH\r\x88\x01\x01\x12\x1c\n\x0cnext_hop_med\x18\x8a\xd7\xde^ \x01(\rH\x0e\x88\x01\x01\x12 \n\x10next_hop_network\x18\xec\xa1\x89} \x01(\tH\x0f\x88\x01\x01\x12\x1f\n\x0fnext_hop_origin\x18\xa8\xd1\x9f\x17 \x01(\tH\x10\x88\x01\x01\x12!\n\x10next_hop_peering\x18\xfe\x93\xe4\xc4\x01 \x01(\tH\x11\x88\x01\x01\x12$\n\x13next_hop_vpn_tunnel\x18\x95\xe5\xf0\xf7\x01 \x01(\tH\x12\x88\x01\x01\x12<\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32$.google.cloud.compute.v1.RouteParamsH\x13\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\rH\x14\x88\x01\x01\x12\x1d\n\x0croute_status\x18\xa8\xcd\xb2\xc7\x01 \x01(\tH\x15\x88\x01\x01\x12\x1b\n\nroute_type\x18\xf0\xb6\x9e\xb3\x01 \x01(\tH\x16\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x17\x88\x01\x01\x12\x0f\n\x04tags\x18\x99\xe8\xd8\x01 \x03(\t\x12\x37\n\x08warnings\x18\xd7\x88\xc1\xed\x01 \x03(\x0b\x32!.google.cloud.compute.v1.Warnings\"W\n\rNextHopOrigin\x12\x1d\n\x19UNDEFINED_NEXT_HOP_ORIGIN\x10\x00\x12\t\n\x03\x45GP\x10\xee\x97\x04\x12\t\n\x03IGP\x10\xf2\xb5\x04\x12\x11\n\nINCOMPLETE\x10\xde\xea\xd8\x05\"l\n\x0bRouteStatus\x12\x1a\n\x16UNDEFINED_ROUTE_STATUS\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0f\n\x07\x44ROPPED\x10\xa0\xe7\xcf\xec\x01\x12\x10\n\x08INACTIVE\x10\xeb\x98\xf9\x80\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\"`\n\tRouteType\x12\x18\n\x14UNDEFINED_ROUTE_TYPE\x10\x00\x12\t\n\x03\x42GP\x10\xab\x81\x04\x12\x0e\n\x06STATIC\x10\xee\x84\x83\x93\x01\x12\x0e\n\x06SUBNET\x10\xdd\xee\xbc\x93\x01\x12\x0e\n\x07TRANSIT\x10\xb3\x83\xc6YB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\r\n\x0b_dest_rangeB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_networkB\x13\n\x11_next_hop_gatewayB\x0f\n\r_next_hop_hubB\x0f\n\r_next_hop_ilbB\x14\n\x12_next_hop_instanceB\x1d\n\x1b_next_hop_inter_region_costB#\n!_next_hop_interconnect_attachmentB\x0e\n\x0c_next_hop_ipB\x0f\n\r_next_hop_medB\x13\n\x11_next_hop_networkB\x12\n\x10_next_hop_originB\x13\n\x11_next_hop_peeringB\x16\n\x14_next_hop_vpn_tunnelB\t\n\x07_paramsB\x0b\n\t_priorityB\x0f\n\r_route_statusB\r\n\x0b_route_typeB\x0c\n\n_self_link\"\xe7\x01\n\x0bRouteAsPath\x12\x13\n\x08\x61s_lists\x18\xc8\xca\xf9? \x03(\r\x12\"\n\x11path_segment_type\x18\xa0\xb5\xeb\xf4\x01 \x01(\tH\x00\x88\x01\x01\"\x88\x01\n\x0fPathSegmentType\x12\x1f\n\x1bUNDEFINED_PATH_SEGMENT_TYPE\x10\x00\x12\x19\n\x12\x41S_CONFED_SEQUENCE\x10\xb0\x8f\xf7i\x12\x15\n\rAS_CONFED_SET\x10\xf3\xcd\xad\xb2\x01\x12\x12\n\x0b\x41S_SEQUENCE\x10\xae\xd2\xf2\x32\x12\x0e\n\x06\x41S_SET\x10\xb5\x9d\xa4\x9d\x01\x42\x14\n\x12_path_segment_type\"\x9b\x02\n\tRouteList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x30\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1e.google.cloud.compute.v1.Route\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xab\x01\n\x0bRouteParams\x12`\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32=.google.cloud.compute.v1.RouteParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xc8\x02\n\x0bRoutePolicy\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x02\x88\x01\x01\x12@\n\x05terms\x18\x87\x93\xc9\x34 \x03(\x0b\x32..google.cloud.compute.v1.RoutePolicyPolicyTerm\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x03\x88\x01\x01\"^\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12 \n\x18ROUTE_POLICY_TYPE_EXPORT\x10\xa2\xcd\xe0\x8b\x01\x12 \n\x18ROUTE_POLICY_TYPE_IMPORT\x10\x93\x8d\xc2\xbd\x01\x42\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x07\n\x05_nameB\x07\n\x05_type\"\xb3\x01\n\x15RoutePolicyPolicyTerm\x12\x32\n\x07\x61\x63tions\x18\xfd\x91\x81\xd6\x01 \x03(\x0b\x32\x1d.google.cloud.compute.v1.Expr\x12\x34\n\x05match\x18\xc5\xb3\xb7\x31 \x01(\x0b\x32\x1d.google.cloud.compute.v1.ExprH\x00\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x01\x88\x01\x01\x42\x08\n\x06_matchB\x0b\n\t_priority\"\xa4\x06\n\x06Router\x12\x36\n\x03\x62gp\x18\xcb\xf9\x05 \x01(\x0b\x32\".google.cloud.compute.v1.RouterBgpH\x00\x88\x01\x01\x12=\n\tbgp_peers\x18\xdd\xad\xee\xd7\x01 \x03(\x0b\x32&.google.cloud.compute.v1.RouterBgpPeer\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12.\n\x1d\x65ncrypted_interconnect_router\x18\x9f\xa2\x8c\x8e\x01 \x01(\x08H\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12?\n\ninterfaces\x18\xda\xf4\xe0\x05 \x03(\x0b\x32(.google.cloud.compute.v1.RouterInterface\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12W\n\x17md5_authentication_keys\x18\x9a\xae\xf1! \x03(\x0b\x32\x33.google.cloud.compute.v1.RouterMd5AuthenticationKey\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x33\n\x04nats\x18\xf2\xf6\xcd\x01 \x03(\x0b\x32\".google.cloud.compute.v1.RouterNat\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x07\x88\x01\x01\x12=\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32%.google.cloud.compute.v1.RouterParamsH\x08\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\t\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\n\x88\x01\x01\x42\x06\n\x04_bgpB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB \n\x1e_encrypted_interconnect_routerB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_paramsB\t\n\x07_regionB\x0c\n\n_self_link\"h\n\x17RouterAdvertisedIpRange\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05range\x18\xbd\xf2\xd0\x33 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x08\n\x06_range\"\xb3\x03\n\x14RouterAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12J\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x38.google.cloud.compute.v1.RouterAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aX\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x39\n\x05value\x18\x02 \x01(\x0b\x32*.google.cloud.compute.v1.RoutersScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xd8\x03\n\tRouterBgp\x12\x1f\n\x0e\x61\x64vertise_mode\x18\xbb\x95\xeb\x94\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x11\x61\x64vertised_groups\x18\xb6\xde\x85\n \x03(\t\x12Q\n\x14\x61\x64vertised_ip_ranges\x18\xcc\xd8\xf3\x10 \x03(\x0b\x32\x30.google.cloud.compute.v1.RouterAdvertisedIpRange\x12\x12\n\x03\x61sn\x18\xfc\xf4\x05 \x01(\rH\x01\x88\x01\x01\x12!\n\x10identifier_range\x18\xa7\xcc\x95\xef\x01 \x01(\tH\x02\x88\x01\x01\x12#\n\x12keepalive_interval\x18\xbc\xe5\xfc\x83\x01 \x01(\rH\x03\x88\x01\x01\"M\n\rAdvertiseMode\x12\x1c\n\x18UNDEFINED_ADVERTISE_MODE\x10\x00\x12\x0e\n\x06\x43USTOM\x10\xf1\xfe\xa5\xb9\x01\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\"G\n\x10\x41\x64vertisedGroups\x12\x1f\n\x1bUNDEFINED_ADVERTISED_GROUPS\x10\x00\x12\x12\n\x0b\x41LL_SUBNETS\x10\xd8\x8f\xdd\x01\x42\x11\n\x0f_advertise_modeB\x06\n\x04_asnB\x13\n\x11_identifier_rangeB\x15\n\x13_keepalive_interval\"\xa5\r\n\rRouterBgpPeer\x12\x1f\n\x0e\x61\x64vertise_mode\x18\xbb\x95\xeb\x94\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x11\x61\x64vertised_groups\x18\xb6\xde\x85\n \x03(\t\x12Q\n\x14\x61\x64vertised_ip_ranges\x18\xcc\xd8\xf3\x10 \x03(\x0b\x32\x30.google.cloud.compute.v1.RouterAdvertisedIpRange\x12)\n\x19\x61\x64vertised_route_priority\x18\xbc\x9c\xf6X \x01(\rH\x01\x88\x01\x01\x12=\n\x03\x62\x66\x64\x18\xa0\xf9\x05 \x01(\x0b\x32).google.cloud.compute.v1.RouterBgpPeerBfdH\x02\x88\x01\x01\x12`\n\x18\x63ustom_learned_ip_ranges\x18\xc4\x88\xc4\xe5\x01 \x03(\x0b\x32:.google.cloud.compute.v1.RouterBgpPeerCustomLearnedIpRange\x12.\n\x1d\x63ustom_learned_route_priority\x18\xc4\xe2\xc6\x9d\x01 \x01(\x05H\x03\x88\x01\x01\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\tH\x04\x88\x01\x01\x12\x1b\n\x0b\x65nable_ipv4\x18\xa1\xf6\xc3V \x01(\x08H\x05\x88\x01\x01\x12\x1b\n\x0b\x65nable_ipv6\x18\xa3\xf6\xc3V \x01(\x08H\x06\x88\x01\x01\x12\x1a\n\x0f\x65xport_policies\x18\xfb\xf2\xf7? \x03(\t\x12\x1b\n\x0fimport_policies\x18\xaa\xf1\x8f\xd7\x01 \x03(\t\x12\x1f\n\x0einterface_name\x18\xd1\xc3\xe4\xd0\x01 \x01(\tH\x07\x88\x01\x01\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x08\x88\x01\x01\x12$\n\x14ipv4_nexthop_address\x18\xd1\x8d\xdc\x02 \x01(\tH\t\x88\x01\x01\x12$\n\x14ipv6_nexthop_address\x18\xd3\x85\xab\r \x01(\tH\n\x88\x01\x01\x12\x1f\n\x0fmanagement_type\x18\xb6\x83\xeaR \x01(\tH\x0b\x88\x01\x01\x12,\n\x1bmd5_authentication_key_name\x18\x91\xbd\x83\x86\x01 \x01(\tH\x0c\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\r\x88\x01\x01\x12\x18\n\x08peer_asn\x18\x9f\xb4\x96! \x01(\rH\x0e\x88\x01\x01\x12\x1f\n\x0fpeer_ip_address\x18\xd9\x97\x87\x63 \x01(\tH\x0f\x88\x01\x01\x12*\n\x19peer_ipv4_nexthop_address\x18\x8e\x83\xdf\xdf\x01 \x01(\tH\x10\x88\x01\x01\x12*\n\x19peer_ipv6_nexthop_address\x18\x90\xfb\xad\xea\x01 \x01(\tH\x11\x88\x01\x01\x12*\n\x19router_appliance_instance\x18\x9d\xc7\xa7\xdf\x01 \x01(\tH\x12\x88\x01\x01\"M\n\rAdvertiseMode\x12\x1c\n\x18UNDEFINED_ADVERTISE_MODE\x10\x00\x12\x0e\n\x06\x43USTOM\x10\xf1\xfe\xa5\xb9\x01\x12\x0e\n\x07\x44\x45\x46\x41ULT\x10\xa1\xc4\xfd\x36\"G\n\x10\x41\x64vertisedGroups\x12\x1f\n\x1bUNDEFINED_ADVERTISED_GROUPS\x10\x00\x12\x12\n\x0b\x41LL_SUBNETS\x10\xd8\x8f\xdd\x01\"9\n\x06\x45nable\x12\x14\n\x10UNDEFINED_ENABLE\x10\x00\x12\x0c\n\x05\x46\x41LSE\x10\x83\xc2\xe4\x1f\x12\x0b\n\x04TRUE\x10\x8e\xdb\x9d\x01\"g\n\x0eManagementType\x12\x1d\n\x19UNDEFINED_MANAGEMENT_TYPE\x10\x00\x12\x1d\n\x15MANAGED_BY_ATTACHMENT\x10\xcb\xd2\xea\xda\x01\x12\x17\n\x0fMANAGED_BY_USER\x10\xf3\x8b\xa6\x97\x01\x42\x11\n\x0f_advertise_modeB\x1c\n\x1a_advertised_route_priorityB\x06\n\x04_bfdB \n\x1e_custom_learned_route_priorityB\t\n\x07_enableB\x0e\n\x0c_enable_ipv4B\x0e\n\x0c_enable_ipv6B\x11\n\x0f_interface_nameB\r\n\x0b_ip_addressB\x17\n\x15_ipv4_nexthop_addressB\x17\n\x15_ipv6_nexthop_addressB\x12\n\x10_management_typeB\x1e\n\x1c_md5_authentication_key_nameB\x07\n\x05_nameB\x0b\n\t_peer_asnB\x12\n\x10_peer_ip_addressB\x1c\n\x1a_peer_ipv4_nexthop_addressB\x1c\n\x1a_peer_ipv6_nexthop_addressB\x1c\n\x1a_router_appliance_instance\"\x86\x03\n\x10RouterBgpPeerBfd\x12$\n\x14min_receive_interval\x18\xee\xb9\x94Y \x01(\rH\x00\x88\x01\x01\x12&\n\x15min_transmit_interval\x18\xc7\xd1\xc2\xf9\x01 \x01(\rH\x01\x88\x01\x01\x12\x1a\n\nmultiplier\x18\xc1\xfb\x9d[ \x01(\rH\x02\x88\x01\x01\x12+\n\x1bsession_initialization_mode\x18\xb9\x8d\xc3\x32 \x01(\tH\x03\x88\x01\x01\"y\n\x19SessionInitializationMode\x12)\n%UNDEFINED_SESSION_INITIALIZATION_MODE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x0f\n\x07PASSIVE\x10\x87\xf6\xd7\xdc\x01\x42\x17\n\x15_min_receive_intervalB\x18\n\x16_min_transmit_intervalB\r\n\x0b_multiplierB\x1e\n\x1c_session_initialization_mode\"D\n!RouterBgpPeerCustomLearnedIpRange\x12\x15\n\x05range\x18\xbd\xf2\xd0\x33 \x01(\tH\x00\x88\x01\x01\x42\x08\n\x06_range\"\x95\x05\n\x0fRouterInterface\x12\x18\n\x08ip_range\x18\xa5\xe0\x97\x45 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nip_version\x18\xc0\xf3\xd2\x8c\x01 \x01(\tH\x01\x88\x01\x01\x12/\n\x1elinked_interconnect_attachment\x18\xce\xea\xf7\xee\x01 \x01(\tH\x02\x88\x01\x01\x12\"\n\x11linked_vpn_tunnel\x18\xf9\xbf\xfe\xa7\x01 \x01(\tH\x03\x88\x01\x01\x12\x1f\n\x0fmanagement_type\x18\xb6\x83\xeaR \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\"\n\x12private_ip_address\x18\x98\xd2\x8b\x30 \x01(\tH\x06\x88\x01\x01\x12$\n\x13redundant_interface\x18\xe7\xe8\xbc\xf9\x01 \x01(\tH\x07\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\x08\x88\x01\x01\"?\n\tIpVersion\x12\x18\n\x14UNDEFINED_IP_VERSION\x10\x00\x12\x0b\n\x04IPV4\x10\x85\xcc\x89\x01\x12\x0b\n\x04IPV6\x10\x87\xcc\x89\x01\"g\n\x0eManagementType\x12\x1d\n\x19UNDEFINED_MANAGEMENT_TYPE\x10\x00\x12\x1d\n\x15MANAGED_BY_ATTACHMENT\x10\xcb\xd2\xea\xda\x01\x12\x17\n\x0fMANAGED_BY_USER\x10\xf3\x8b\xa6\x97\x01\x42\x0b\n\t_ip_rangeB\r\n\x0b_ip_versionB!\n\x1f_linked_interconnect_attachmentB\x14\n\x12_linked_vpn_tunnelB\x12\n\x10_management_typeB\x07\n\x05_nameB\x15\n\x13_private_ip_addressB\x16\n\x14_redundant_interfaceB\r\n\x0b_subnetwork\"\x9d\x02\n\nRouterList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x31\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1f.google.cloud.compute.v1.Router\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"W\n\x1aRouterMd5AuthenticationKey\x12\x12\n\x03key\x18\xdf\xbc\x06 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x42\x06\n\x04_keyB\x07\n\x05_name\"\xb5\x11\n\tRouterNat\x12\"\n\x11\x61uto_network_tier\x18\xe3\xbb\xd1\x80\x01 \x01(\tH\x00\x88\x01\x01\x12\x19\n\rdrain_nat_ips\x18\xc7\xc1\xae\xf0\x01 \x03(\t\x12/\n\x1e\x65nable_dynamic_port_allocation\x18\xa2\x99\xdd\xfd\x01 \x01(\x08H\x01\x88\x01\x01\x12\x33\n#enable_endpoint_independent_mapping\x18\x9b\x89\xdb{ \x01(\x08H\x02\x88\x01\x01\x12\x1a\n\x0e\x65ndpoint_types\x18\xcf\xaa\xd6\xef\x01 \x03(\t\x12%\n\x15icmp_idle_timeout_sec\x18\xca\xd0\xde\x01 \x01(\x05H\x03\x88\x01\x01\x12H\n\nlog_config\x18\x9d\xd1\xc1\xa7\x01 \x01(\x0b\x32+.google.cloud.compute.v1.RouterNatLogConfigH\x04\x88\x01\x01\x12 \n\x10max_ports_per_vm\x18\xe1\xc9\x9ew \x01(\x05H\x05\x88\x01\x01\x12 \n\x10min_ports_per_vm\x18\xb3\xad\xe4X \x01(\x05H\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12Q\n\x11nat64_subnetworks\x18\xa5\xfb\xa8\x1e \x03(\x0b\x32\x33.google.cloud.compute.v1.RouterNatSubnetworkToNat64\x12\'\n\x16nat_ip_allocate_option\x18\xfd\xb8\xf4\xcc\x01 \x01(\tH\x08\x88\x01\x01\x12\x12\n\x07nat_ips\x18\x8e\xf0\x8b\x38 \x03(\t\x12\x38\n\x05rules\x18\xf7\x91\xf5\x33 \x03(\x0b\x32&.google.cloud.compute.v1.RouterNatRule\x12\x32\n\"source_subnetwork_ip_ranges_to_nat\x18\xdb\xef\xa1x \x01(\tH\t\x88\x01\x01\x12\x34\n$source_subnetwork_ip_ranges_to_nat64\x18\xd9\xe7\xa7v \x01(\tH\n\x88\x01\x01\x12J\n\x0bsubnetworks\x18\xc5\xd4\xa5\xc6\x01 \x03(\x0b\x32\x31.google.cloud.compute.v1.RouterNatSubnetworkToNat\x12\x30\n tcp_established_idle_timeout_sec\x18\xed\xeb\xb0j \x01(\x05H\x0b\x88\x01\x01\x12*\n\x19tcp_time_wait_timeout_sec\x18\xfd\xbb\xf3\xf4\x01 \x01(\x05H\x0c\x88\x01\x01\x12/\n\x1ftcp_transitory_idle_timeout_sec\x18\xa6\xfb\xe1\x61 \x01(\x05H\r\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x0e\x88\x01\x01\x12$\n\x14udp_idle_timeout_sec\x18\xc6\xb2\xfa\x1e \x01(\x05H\x0f\x88\x01\x01\"\x98\x01\n\x0f\x41utoNetworkTier\x12\x1f\n\x1bUNDEFINED_AUTO_NETWORK_TIER\x10\x00\x12\x16\n\x0e\x46IXED_STANDARD\x10\xc8\x9e\x85\x94\x01\x12\x0f\n\x07PREMIUM\x10\xb7\xb4\xc1\xbe\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x12)\n!STANDARD_OVERRIDES_FIXED_STANDARD\x10\xc2\x87\x91\xde\x01\"\x88\x01\n\rEndpointTypes\x12\x1c\n\x18UNDEFINED_ENDPOINT_TYPES\x10\x00\x12&\n\x1e\x45NDPOINT_TYPE_MANAGED_PROXY_LB\x10\x82\xba\xb6\xd1\x01\x12\x18\n\x11\x45NDPOINT_TYPE_SWG\x10\xc8\xce\xfdK\x12\x17\n\x10\x45NDPOINT_TYPE_VM\x10\xb2\xea\x9c\x1b\"a\n\x13NatIpAllocateOption\x12$\n UNDEFINED_NAT_IP_ALLOCATE_OPTION\x10\x00\x12\x10\n\tAUTO_ONLY\x10\xbc\xe0\xf8V\x12\x12\n\x0bMANUAL_ONLY\x10\x85\xc1\xc9|\"\xc2\x01\n\x1dSourceSubnetworkIpRangesToNat\x12\x30\n,UNDEFINED_SOURCE_SUBNETWORK_IP_RANGES_TO_NAT\x10\x00\x12$\n\x1d\x41LL_SUBNETWORKS_ALL_IP_RANGES\x10\xd8\x93\xe8U\x12,\n%ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES\x10\xbb\xc3\xbeX\x12\x1b\n\x13LIST_OF_SUBNETWORKS\x10\xfe\xa2\xe4\xf6\x01\"\x95\x01\n\x1fSourceSubnetworkIpRangesToNat64\x12\x32\n.UNDEFINED_SOURCE_SUBNETWORK_IP_RANGES_TO_NAT64\x10\x00\x12\x1c\n\x14\x41LL_IPV6_SUBNETWORKS\x10\xeb\xcd\xf3\xa2\x01\x12 \n\x18LIST_OF_IPV6_SUBNETWORKS\x10\xb4\x98\xbc\xf8\x01\":\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x0f\n\x07PRIVATE\x10\xe3\xe2\xb2\xc0\x01\x12\r\n\x06PUBLIC\x10\xe9\xcc\xc2jB\x14\n\x12_auto_network_tierB!\n\x1f_enable_dynamic_port_allocationB&\n$_enable_endpoint_independent_mappingB\x18\n\x16_icmp_idle_timeout_secB\r\n\x0b_log_configB\x13\n\x11_max_ports_per_vmB\x13\n\x11_min_ports_per_vmB\x07\n\x05_nameB\x19\n\x17_nat_ip_allocate_optionB%\n#_source_subnetwork_ip_ranges_to_natB\'\n%_source_subnetwork_ip_ranges_to_nat64B#\n!_tcp_established_idle_timeout_secB\x1c\n\x1a_tcp_time_wait_timeout_secB\"\n _tcp_transitory_idle_timeout_secB\x07\n\x05_typeB\x17\n\x15_udp_idle_timeout_sec\"\xb7\x01\n\x12RouterNatLogConfig\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\x08H\x00\x88\x01\x01\x12\x17\n\x06\x66ilter\x18\xf8\x96\xa3\xa0\x01 \x01(\tH\x01\x88\x01\x01\"Y\n\x06\x46ilter\x12\x14\n\x10UNDEFINED_FILTER\x10\x00\x12\t\n\x03\x41LL\x10\x81\xfb\x03\x12\x13\n\x0b\x45RRORS_ONLY\x10\x80\xb0\xcf\x92\x01\x12\x19\n\x11TRANSLATIONS_ONLY\x10\xe9\xc3\xaa\xaa\x01\x42\t\n\x07_enableB\t\n\x07_filter\"\xdd\x01\n\rRouterNatRule\x12\x44\n\x06\x61\x63tion\x18\xb6\xfc\xbdY \x01(\x0b\x32,.google.cloud.compute.v1.RouterNatRuleActionH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x15\n\x05match\x18\xc5\xb3\xb7\x31 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0brule_number\x18\xec\xdb\x9a\xff\x01 \x01(\rH\x03\x88\x01\x01\x42\t\n\x07_actionB\x0e\n\x0c_descriptionB\x08\n\x06_matchB\x0e\n\x0c_rule_number\"\xa2\x01\n\x13RouterNatRuleAction\x12 \n\x15source_nat_active_ips\x18\xf5\xbb\xa8\x64 \x03(\t\x12#\n\x18source_nat_active_ranges\x18\xed\xd0\xeeZ \x03(\t\x12 \n\x14source_nat_drain_ips\x18\xa3\xc5\xc1\xa2\x01 \x03(\t\x12\"\n\x17source_nat_drain_ranges\x18\xff\xf9\xb7( \x03(\t\"\x96\x02\n\x18RouterNatSubnetworkToNat\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x18secondary_ip_range_names\x18\xd9\xc1\x84~ \x03(\t\x12#\n\x17source_ip_ranges_to_nat\x18\xf2\xca\x94\xb9\x01 \x03(\t\"\x90\x01\n\x13SourceIpRangesToNat\x12%\n!UNDEFINED_SOURCE_IP_RANGES_TO_NAT\x10\x00\x12\x14\n\rALL_IP_RANGES\x10\xb0\xaf\xfd\x10\x12\"\n\x1bLIST_OF_SECONDARY_IP_RANGES\x10\x9c\xb4\xd8[\x12\x18\n\x10PRIMARY_IP_RANGE\x10\xc2\x93\xd6\x8d\x01\x42\x07\n\x05_name\";\n\x1aRouterNatSubnetworkToNat64\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_name\"\xad\x01\n\x0cRouterParams\x12\x61\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32>.google.cloud.compute.v1.RouterParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xc6\x02\n\x0cRouterStatus\x12\x37\n\x0b\x62\x65st_routes\x18\x85\xac\xdf\xbc\x01 \x03(\x0b\x32\x1e.google.cloud.compute.v1.Route\x12\x41\n\x16\x62\x65st_routes_for_router\x18\xf9\xfb\xf6\x38 \x03(\x0b\x32\x1e.google.cloud.compute.v1.Route\x12N\n\x0f\x62gp_peer_status\x18\xfb\xd7\x95h \x03(\x0b\x32\x32.google.cloud.compute.v1.RouterStatusBgpPeerStatus\x12\x45\n\nnat_status\x18\xd0\x99\x8b\x1e \x03(\x0b\x32..google.cloud.compute.v1.RouterStatusNatStatus\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_network\"\xe9\n\n\x19RouterStatusBgpPeerStatus\x12=\n\x11\x61\x64vertised_routes\x18\xac\xd9\xfc\x9e\x01 \x03(\x0b\x32\x1e.google.cloud.compute.v1.Route\x12?\n\nbfd_status\x18\xf1\xb8\xd3\xbc\x01 \x01(\x0b\x32\".google.cloud.compute.v1.BfdStatusH\x00\x88\x01\x01\x12\x1b\n\x0b\x65nable_ipv4\x18\xa1\xf6\xc3V \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0b\x65nable_ipv6\x18\xa3\xf6\xc3V \x01(\x08H\x02\x88\x01\x01\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x03\x88\x01\x01\x12$\n\x14ipv4_nexthop_address\x18\xd1\x8d\xdc\x02 \x01(\tH\x04\x88\x01\x01\x12$\n\x14ipv6_nexthop_address\x18\xd3\x85\xab\r \x01(\tH\x05\x88\x01\x01\x12\"\n\x11linked_vpn_tunnel\x18\xf9\xbf\xfe\xa7\x01 \x01(\tH\x06\x88\x01\x01\x12!\n\x10md5_auth_enabled\x18\xcb\x91\x90\xd7\x01 \x01(\x08H\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12\"\n\x12num_learned_routes\x18\xff\xd5\xcb@ \x01(\rH\t\x88\x01\x01\x12\x1f\n\x0fpeer_ip_address\x18\xd9\x97\x87\x63 \x01(\tH\n\x88\x01\x01\x12*\n\x19peer_ipv4_nexthop_address\x18\x8e\x83\xdf\xdf\x01 \x01(\tH\x0b\x88\x01\x01\x12*\n\x19peer_ipv6_nexthop_address\x18\x90\xfb\xad\xea\x01 \x01(\tH\x0c\x88\x01\x01\x12*\n\x19router_appliance_instance\x18\x9d\xc7\xa7\xdf\x01 \x01(\tH\r\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x0e\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x0f\x88\x01\x01\x12\x1e\n\rstatus_reason\x18\xb1\x96\xb5\xa3\x01 \x01(\tH\x10\x88\x01\x01\x12\x16\n\x06uptime\x18\xe8\xb7\x9ep \x01(\tH\x11\x88\x01\x01\x12\x1e\n\x0euptime_seconds\x18\xa8\xca\xf8\x31 \x01(\tH\x12\x88\x01\x01\"E\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0b\n\x04\x44OWN\x10\xa2\xb9\x80\x01\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\x12\x07\n\x02UP\x10\x9b\x15\"\xc6\x01\n\x0cStatusReason\x12\x1b\n\x17UNDEFINED_STATUS_REASON\x10\x00\x12)\n!IPV4_PEER_ON_IPV6_ONLY_CONNECTION\x10\x96\xbb\xef\xcf\x01\x12)\n!IPV6_PEER_ON_IPV4_ONLY_CONNECTION\x10\xd2\xf1\x85\xd0\x01\x12 \n\x19MD5_AUTH_INTERNAL_PROBLEM\x10\xb3\x91\xfd\x42\x12!\n\x19STATUS_REASON_UNSPECIFIED\x10\x89\x8e\x84\xbc\x01\x42\r\n\x0b_bfd_statusB\x0e\n\x0c_enable_ipv4B\x0e\n\x0c_enable_ipv6B\r\n\x0b_ip_addressB\x17\n\x15_ipv4_nexthop_addressB\x17\n\x15_ipv6_nexthop_addressB\x14\n\x12_linked_vpn_tunnelB\x13\n\x11_md5_auth_enabledB\x07\n\x05_nameB\x15\n\x13_num_learned_routesB\x12\n\x10_peer_ip_addressB\x1c\n\x1a_peer_ipv4_nexthop_addressB\x1c\n\x1a_peer_ipv6_nexthop_addressB\x1c\n\x1a_router_appliance_instanceB\x08\n\x06_stateB\t\n\x07_statusB\x10\n\x0e_status_reasonB\t\n\x07_uptimeB\x11\n\x0f_uptime_seconds\"\xf7\x03\n\x15RouterStatusNatStatus\x12\"\n\x16\x61uto_allocated_nat_ips\x18\x86\xb4\xc8\xf3\x01 \x03(\t\x12(\n\x1c\x64rain_auto_allocated_nat_ips\x18\xad\x90\xb7\x93\x01 \x03(\t\x12(\n\x1c\x64rain_user_allocated_nat_ips\x18\xc9\x8e\xc8\x91\x01 \x03(\t\x12)\n\x18min_extra_nat_ips_needed\x18\xe2\xe9\xb5\xae\x01 \x01(\x05H\x00\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x01\x88\x01\x01\x12\x33\n\"num_vm_endpoints_with_nat_mappings\x18\xec\xb6\xa8\xf4\x01 \x01(\x05H\x02\x88\x01\x01\x12S\n\x0brule_status\x18\x95\xc5\xee\x42 \x03(\x0b\x32;.google.cloud.compute.v1.RouterStatusNatStatusNatRuleStatus\x12*\n\x1fuser_allocated_nat_ip_resources\x18\xd7\xe9\xba\x65 \x03(\t\x12\"\n\x16user_allocated_nat_ips\x18\xa2\xb2\xd9\xf1\x01 \x03(\tB\x1b\n\x19_min_extra_nat_ips_neededB\x07\n\x05_nameB%\n#_num_vm_endpoints_with_nat_mappings\"\xa4\x02\n\"RouterStatusNatStatusNatRuleStatus\x12\x19\n\x0e\x61\x63tive_nat_ips\x18\xd5\xef\xb6\x63 \x03(\t\x12\x19\n\rdrain_nat_ips\x18\xc7\xc1\xae\xf0\x01 \x03(\t\x12%\n\x14min_extra_ips_needed\x18\x84\xca\xa9\xa8\x01 \x01(\x05H\x00\x88\x01\x01\x12\x33\n\"num_vm_endpoints_with_nat_mappings\x18\xec\xb6\xa8\xf4\x01 \x01(\x05H\x01\x88\x01\x01\x12\x1c\n\x0brule_number\x18\xec\xdb\x9a\xff\x01 \x01(\x05H\x02\x88\x01\x01\x42\x17\n\x15_min_extra_ips_neededB%\n#_num_vm_endpoints_with_nat_mappingsB\x0e\n\x0c_rule_number\"\x7f\n\x14RouterStatusResponse\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x12=\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32%.google.cloud.compute.v1.RouterStatusH\x01\x88\x01\x01\x42\x07\n\x05_kindB\t\n\x07_result\"l\n\x1dRoutersGetRoutePolicyResponse\x12>\n\x08resource\x18\x8e\x88\xaf] \x01(\x0b\x32$.google.cloud.compute.v1.RoutePolicyH\x00\x88\x01\x01\x42\x0b\n\t_resource\"\xe2\x02\n\x14RoutersListBgpRoutes\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x34\n\x06result\x18\x9d\x90\xb7\x42 \x03(\x0b\x32!.google.cloud.compute.v1.BgpRoute\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xe9\x02\n\x18RoutersListRoutePolicies\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x37\n\x06result\x18\x9d\x90\xb7\x42 \x03(\x0b\x32$.google.cloud.compute.v1.RoutePolicy\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"`\n\x16RoutersPreviewResponse\x12\x39\n\x08resource\x18\x8e\x88\xaf] \x01(\x0b\x32\x1f.google.cloud.compute.v1.RouterH\x00\x88\x01\x01\x42\x0b\n\t_resource\"\x90\x01\n\x11RoutersScopedList\x12\x34\n\x07routers\x18\xca\xa4\xdd\x94\x01 \x03(\x0b\x32\x1f.google.cloud.compute.v1.Router\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xd8\x03\n\x0eSSLHealthCheck\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x00\x88\x01\x01\x12\x19\n\tport_name\x18\x89\x87\xe7\x13 \x01(\tH\x01\x88\x01\x01\x12\"\n\x12port_specification\x18\xc5\xeb\xcc\x18 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0cproxy_header\x18\xfe\xba\xbcL \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07request\x18\x8f\xe5\xbb\n \x01(\tH\x04\x88\x01\x01\x12\x18\n\x08response\x18\xc1\xa8\xdc] \x01(\tH\x05\x88\x01\x01\"~\n\x11PortSpecification\x12 \n\x1cUNDEFINED_PORT_SPECIFICATION\x10\x00\x12\x15\n\x0eUSE_FIXED_PORT\x10\xe4\x88\xdbZ\x12\x16\n\x0eUSE_NAMED_PORT\x10\xbf\xcf\xc7\xa6\x01\x12\x18\n\x10USE_SERVING_PORT\x10\xcc\xd1\xf5\xac\x01\"H\n\x0bProxyHeader\x12\x1a\n\x16UNDEFINED_PROXY_HEADER\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x10\n\x08PROXY_V1\x10\xac\xa4\xb7\x9f\x01\x42\x07\n\x05_portB\x0c\n\n_port_nameB\x15\n\x13_port_specificationB\x0f\n\r_proxy_headerB\n\n\x08_requestB\x0b\n\t_response\"\x8f\x08\n\x11SavedAttachedDisk\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\x08H\x00\x88\x01\x01\x12\x14\n\x04\x62oot\x18\xf2\xf5\xb8\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0b\x64\x65vice_name\x18\xd4\xb5\x9a \x01(\tH\x02\x88\x01\x01\x12T\n\x13\x64isk_encryption_key\x18\x85\xed\xc4\x81\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x03\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x04\x88\x01\x01\x12\x19\n\tdisk_type\x18\x9c\xe9\xac, \x01(\tH\x05\x88\x01\x01\x12\x45\n\x11guest_os_features\x18\xd1\xe0\xe7% \x03(\x0b\x32\'.google.cloud.compute.v1.GuestOsFeature\x12\x15\n\x05index\x18\xd2\xd1\xec/ \x01(\x05H\x06\x88\x01\x01\x12\x1a\n\tinterface\x18\xb9\xda\xd5\xef\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x08\x88\x01\x01\x12\x14\n\x08licenses\x18\xd2\x88\x80\xa1\x01 \x03(\t\x12\x14\n\x04mode\x18\xa3\xf3\xcc\x01 \x01(\tH\t\x88\x01\x01\x12\x16\n\x06source\x18\x9b\xd0\xc1T \x01(\tH\n\x88\x01\x01\x12\x1e\n\rstorage_bytes\x18\xa7\xbb\xbd\xca\x01 \x01(\x03H\x0b\x88\x01\x01\x12%\n\x14storage_bytes_status\x18\x8a\xab\x80\xea\x01 \x01(\tH\x0c\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\r\x88\x01\x01\">\n\tInterface\x12\x17\n\x13UNDEFINED_INTERFACE\x10\x00\x12\x0b\n\x04NVME\x10\xe0\x82\x93\x01\x12\x0b\n\x04SCSI\x10\xa6\x81\x9b\x01\"?\n\x04Mode\x12\x12\n\x0eUNDEFINED_MODE\x10\x00\x12\x10\n\tREAD_ONLY\x10\xb5\x99\xec+\x12\x11\n\nREAD_WRITE\x10\xd6\x97\xe4R\"]\n\x12StorageBytesStatus\x12\"\n\x1eUNDEFINED_STORAGE_BYTES_STATUS\x10\x00\x12\x10\n\x08UPDATING\x10\xc6\xee\xec\xeb\x01\x12\x11\n\nUP_TO_DATE\x10\xce\xa2\xa7\x30\"?\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x12\n\nPERSISTENT\x10\x97\xf5\xd5\xdb\x01\x12\x0f\n\x07SCRATCH\x10\xda\xfd\xf0\xec\x01\x42\x0e\n\x0c_auto_deleteB\x07\n\x05_bootB\x0e\n\x0c_device_nameB\x16\n\x14_disk_encryption_keyB\x0f\n\r_disk_size_gbB\x0c\n\n_disk_typeB\x08\n\x06_indexB\x0c\n\n_interfaceB\x07\n\x05_kindB\x07\n\x05_modeB\t\n\x07_sourceB\x10\n\x0e_storage_bytesB\x17\n\x15_storage_bytes_statusB\x07\n\x05_type\"\xc5\x03\n\tSavedDisk\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0bsource_disk\x18\xc1\xee\xb4\xd7\x01 \x01(\tH\x02\x88\x01\x01\x12\x1e\n\rstorage_bytes\x18\xa7\xbb\xbd\xca\x01 \x01(\x03H\x03\x88\x01\x01\x12%\n\x14storage_bytes_status\x18\x8a\xab\x80\xea\x01 \x01(\tH\x04\x88\x01\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\"]\n\x12StorageBytesStatus\x12\"\n\x1eUNDEFINED_STORAGE_BYTES_STATUS\x10\x00\x12\x10\n\x08UPDATING\x10\xc6\xee\xec\xeb\x01\x12\x11\n\nUP_TO_DATE\x10\xce\xa2\xa7\x30\x42\x0f\n\r_architectureB\x07\n\x05_kindB\x0e\n\x0c_source_diskB\x10\n\x0e_storage_bytesB\x17\n\x15_storage_bytes_status\"\x81\x02\n\x15ScalingScheduleStatus\x12\x1f\n\x0flast_start_time\x18\xd3\xbb\xbc\x10 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0fnext_start_time\x18\xd6\xf2\xb0. \x01(\tH\x01\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x02\x88\x01\x01\"]\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x0f\n\x08OBSOLETE\x10\x99\xeb\xdc\x1f\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B\x12\n\x10_last_start_timeB\x12\n\x10_next_start_timeB\x08\n\x06_state\"\xac\x0b\n\nScheduling\x12\"\n\x11\x61utomatic_restart\x18\xfb\xb7\xa4\xa7\x01 \x01(\x08H\x00\x88\x01\x01\x12#\n\x13\x61vailability_domain\x18\xa8\xa0\xb4x \x01(\x05H\x01\x88\x01\x01\x12+\n\x1ahost_error_timeout_seconds\x18\x93\xdc\xd9\xc2\x01 \x01(\x05H\x02\x88\x01\x01\x12+\n\x1binstance_termination_action\x18\xbb\xff\x99\x33 \x01(\tH\x03\x88\x01\x01\x12M\n\x1alocal_ssd_recovery_timeout\x18\xe6\xaf\xe6\x7f \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x04\x88\x01\x01\x12\x1e\n\rlocation_hint\x18\xd1\x81\x92\xa7\x01 \x01(\tH\x05\x88\x01\x01\x12\x44\n\x10max_run_duration\x18\xc3\xaf\xb8\xcd\x01 \x01(\x0b\x32!.google.cloud.compute.v1.DurationH\x06\x88\x01\x01\x12\x1e\n\rmin_node_cpus\x18\xbb\xa4\xa2\x97\x01 \x01(\x05H\x07\x88\x01\x01\x12L\n\x0fnode_affinities\x18\xa3\x84\x9a\xdc\x01 \x03(\x0b\x32/.google.cloud.compute.v1.SchedulingNodeAffinity\x12#\n\x13on_host_maintenance\x18\xdc\xf2\xe7\x1e \x01(\tH\x08\x88\x01\x01\x12\x61\n\x17on_instance_stop_action\x18\xc9\x8d\xd5\xfc\x01 \x01(\x0b\x32\x37.google.cloud.compute.v1.SchedulingOnInstanceStopActionH\t\x88\x01\x01\x12\x1c\n\x0bpreemptible\x18\xa1\xe5\xcb\x9a\x01 \x01(\x08H\n\x88\x01\x01\x12!\n\x12provisioning_model\x18\xd7\x96\x1e \x01(\tH\x0b\x88\x01\x01\x12&\n\x16skip_guest_os_shutdown\x18\xaa\xbf\x94` \x01(\x08H\x0c\x88\x01\x01\x12!\n\x10termination_time\x18\xa8\x8e\x90\xcc\x01 \x01(\tH\r\x88\x01\x01\"\x93\x01\n\x19InstanceTerminationAction\x12)\n%UNDEFINED_INSTANCE_TERMINATION_ACTION\x10\x00\x12\x0e\n\x06\x44\x45LETE\x10\xab\xf3\xe5\xbf\x01\x12.\n\'INSTANCE_TERMINATION_ACTION_UNSPECIFIED\x10\xb3\xc1\xa9,\x12\x0b\n\x04STOP\x10\x82\x80\x9c\x01\"Y\n\x11OnHostMaintenance\x12!\n\x1dUNDEFINED_ON_HOST_MAINTENANCE\x10\x00\x12\x0e\n\x07MIGRATE\x10\x8b\xc3\x81O\x12\x11\n\tTERMINATE\x10\xc1\x9c\xcb\xfb\x01\"\x82\x01\n\x11ProvisioningModel\x12 \n\x1cUNDEFINED_PROVISIONING_MODEL\x10\x00\x12\x11\n\nFLEX_START\x10\xfc\x90\xc2\x30\x12\x19\n\x11RESERVATION_BOUND\x10\x8b\x96\xfc\x8b\x01\x12\x0b\n\x04SPOT\x10\x82\xe2\x9b\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x42\x14\n\x12_automatic_restartB\x16\n\x14_availability_domainB\x1d\n\x1b_host_error_timeout_secondsB\x1e\n\x1c_instance_termination_actionB\x1d\n\x1b_local_ssd_recovery_timeoutB\x10\n\x0e_location_hintB\x13\n\x11_max_run_durationB\x10\n\x0e_min_node_cpusB\x16\n\x14_on_host_maintenanceB\x1a\n\x18_on_instance_stop_actionB\x0e\n\x0c_preemptibleB\x15\n\x13_provisioning_modelB\x19\n\x17_skip_guest_os_shutdownB\x13\n\x11_termination_time\"\xc7\x01\n\x16SchedulingNodeAffinity\x12\x12\n\x03key\x18\xdf\xbc\x06 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08operator\x18\xa4\xd1\xa8\x11 \x01(\tH\x01\x88\x01\x01\x12\x11\n\x06values\x18\xa2\xba\x96w \x03(\t\"W\n\x08Operator\x12\x16\n\x12UNDEFINED_OPERATOR\x10\x00\x12\x07\n\x02IN\x10\xa5\x12\x12\r\n\x06NOT_IN\x10\xb1\xbc\xebL\x12\x1b\n\x14OPERATOR_UNSPECIFIED\x10\xfc\xff\xba=B\x06\n\x04_keyB\x0b\n\t_operator\"Z\n\x1eSchedulingOnInstanceStopAction\x12\"\n\x11\x64iscard_local_ssd\x18\xcf\xe9\xad\x98\x01 \x01(\x08H\x00\x88\x01\x01\x42\x14\n\x12_discard_local_ssd\"S\n\nScreenshot\x12\x19\n\x08\x63ontents\x18\x9a\xb6\xbd\xf1\x01 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_contentsB\x07\n\x05_kind\"\xef\x03\n\x1eSecurityPoliciesAggregatedList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12T\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x42.google.cloud.compute.v1.SecurityPoliciesAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.SecurityPoliciesScopedList:\x02\x38\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbf\x01\n7SecurityPoliciesListPreconfiguredExpressionSetsResponse\x12\x62\n\x1dpreconfigured_expression_sets\x18\xfa\x8c\xd7\xff\x01 \x01(\x0b\x32\x32.google.cloud.compute.v1.SecurityPoliciesWafConfigH\x00\x88\x01\x01\x42 \n\x1e_preconfigured_expression_sets\"\xaa\x01\n\x1aSecurityPoliciesScopedList\x12\x45\n\x11security_policies\x18\xef\xa6\xf7< \x03(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"r\n\x19SecurityPoliciesWafConfig\x12G\n\twaf_rules\x18\xd4\xc3\xdb# \x01(\x0b\x32,.google.cloud.compute.v1.PreconfiguredWafSetH\x00\x88\x01\x01\x42\x0c\n\n_waf_rules\"\xcc\x0b\n\x0eSecurityPolicy\x12k\n\x1a\x61\x64\x61ptive_protection_config\x18\xdf\xfb\xd1G \x01(\x0b\x32?.google.cloud.compute.v1.SecurityPolicyAdaptiveProtectionConfigH\x00\x88\x01\x01\x12\x66\n\x17\x61\x64vanced_options_config\x18\xc0\xd3\x9d\xd6\x01 \x01(\x0b\x32<.google.cloud.compute.v1.SecurityPolicyAdvancedOptionsConfigH\x01\x88\x01\x01\x12L\n\x0c\x61ssociations\x18\x92\xe8\xca\xf2\x01 \x03(\x0b\x32\x32.google.cloud.compute.v1.SecurityPolicyAssociation\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\x63\n\x16\x64\x64os_protection_config\x18\xcd\x84\xff\x17 \x01(\x0b\x32;.google.cloud.compute.v1.SecurityPolicyDdosProtectionConfigH\x03\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x04\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x05\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x07\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x08\x88\x01\x01\x12G\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x33.google.cloud.compute.v1.SecurityPolicy.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\t\x88\x01\x01\x12\x16\n\x06parent\x18\xaa\x91\xac% \x01(\tH\n\x88\x01\x01\x12h\n\x18recaptcha_options_config\x18\xdb\xd4\xbd\xf7\x01 \x01(\x0b\x32=.google.cloud.compute.v1.SecurityPolicyRecaptchaOptionsConfigH\x0b\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0c\x88\x01\x01\x12=\n\x05rules\x18\xf7\x91\xf5\x33 \x03(\x0b\x32+.google.cloud.compute.v1.SecurityPolicyRule\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\r\x88\x01\x01\x12\x1b\n\nshort_name\x18\xee\xb8\xd0\xea\x01 \x01(\tH\x0e\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x0f\x88\x01\x01\x12W\n\x13user_defined_fields\x18\xa3\x89\xc0\r \x03(\x0b\x32\x37.google.cloud.compute.v1.SecurityPolicyUserDefinedField\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"d\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x12\n\x0b\x43LOUD_ARMOR\x10\xf5\x9c\xa4|\x12\x17\n\x10\x43LOUD_ARMOR_EDGE\x10\xc7\xa2\xc7w\x12\x1b\n\x13\x43LOUD_ARMOR_NETWORK\x10\xc4\xac\xf9\xe8\x01\x42\x1d\n\x1b_adaptive_protection_configB\x1a\n\x18_advanced_options_configB\x15\n\x13_creation_timestampB\x19\n\x17_ddos_protection_configB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\t\n\x07_parentB\x1b\n\x19_recaptcha_options_configB\t\n\x07_regionB\x0c\n\n_self_linkB\r\n\x0b_short_nameB\x07\n\x05_type\"\xcd\x01\n&SecurityPolicyAdaptiveProtectionConfig\x12\x83\x01\n\x1alayer7_ddos_defense_config\x18\xa3\xd9\xc3\xd0\x01 \x01(\x0b\x32V.google.cloud.compute.v1.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigH\x00\x88\x01\x01\x42\x1d\n\x1b_layer7_ddos_defense_config\"\xf3\x02\n=SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\x08H\x00\x88\x01\x01\x12 \n\x0frule_visibility\x18\xb5\xd8\x90\xd8\x01 \x01(\tH\x01\x88\x01\x01\x12\x83\x01\n\x11threshold_configs\x18\x9d\xab\xe3\x1c \x03(\x0b\x32\x65.google.cloud.compute.v1.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfig\"R\n\x0eRuleVisibility\x12\x1d\n\x19UNDEFINED_RULE_VISIBILITY\x10\x00\x12\x0f\n\x07PREMIUM\x10\xb7\xb4\xc1\xbe\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x42\t\n\x07_enableB\x12\n\x10_rule_visibility\"\xd1\x06\nLSecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfig\x12\x30\n auto_deploy_confidence_threshold\x18\xbe\xed\x99( \x01(\x02H\x00\x88\x01\x01\x12*\n\x1a\x61uto_deploy_expiration_sec\x18\x89\xb5\x9a! \x01(\x05H\x01\x88\x01\x01\x12\x38\n\'auto_deploy_impacted_baseline_threshold\x18\xc3\x9c\xb9\x8b\x01 \x01(\x02H\x02\x88\x01\x01\x12+\n\x1a\x61uto_deploy_load_threshold\x18\x9a\xa0\x82\xf9\x01 \x01(\x02H\x03\x88\x01\x01\x12\'\n\x16\x64\x65tection_absolute_qps\x18\xe6\xfd\xd7\xb6\x01 \x01(\x02H\x04\x88\x01\x01\x12)\n\x18\x64\x65tection_load_threshold\x18\xcc\xca\xa3\xcd\x01 \x01(\x02H\x05\x88\x01\x01\x12\x33\n\"detection_relative_to_baseline_qps\x18\x85\x9b\xf6\x8a\x01 \x01(\x02H\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\xa5\x01\n\x1btraffic_granularity_configs\x18\xbe\xb4\xda( \x03(\x0b\x32}.google.cloud.compute.v1.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigTrafficGranularityConfigB#\n!_auto_deploy_confidence_thresholdB\x1d\n\x1b_auto_deploy_expiration_secB*\n(_auto_deploy_impacted_baseline_thresholdB\x1d\n\x1b_auto_deploy_load_thresholdB\x19\n\x17_detection_absolute_qpsB\x1b\n\x19_detection_load_thresholdB%\n#_detection_relative_to_baseline_qpsB\x07\n\x05_name\"\xd0\x02\ndSecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigTrafficGranularityConfig\x12)\n\x18\x65nable_each_unique_value\x18\xc5\x8a\xde\xdf\x01 \x01(\x08H\x00\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x01\x88\x01\x01\x12\x15\n\x05value\x18\xf1\xa2\xb2\x35 \x01(\tH\x02\x88\x01\x01\"`\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x18\n\x10HTTP_HEADER_HOST\x10\xe3\xe5\xbe\xb2\x01\x12\x11\n\tHTTP_PATH\x10\xfc\xd2\xc4\x94\x01\x12\x17\n\x10UNSPECIFIED_TYPE\x10\xe2\xee\xdb\x19\x42\x1b\n\x19_enable_each_unique_valueB\x07\n\x05_typeB\x08\n\x06_value\"\xad\x04\n#SecurityPolicyAdvancedOptionsConfig\x12p\n\x12json_custom_config\x18\xb9\xd9\x99\x35 \x01(\x0b\x32L.google.cloud.compute.v1.SecurityPolicyAdvancedOptionsConfigJsonCustomConfigH\x00\x88\x01\x01\x12\x1d\n\x0cjson_parsing\x18\xd9\x84\xda\x86\x01 \x01(\tH\x01\x88\x01\x01\x12\x19\n\tlog_level\x18\xc9\xbd\x84\x43 \x01(\tH\x02\x88\x01\x01\x12,\n\x1crequest_body_inspection_size\x18\xff\x8d\x9a[ \x01(\tH\x03\x88\x01\x01\x12#\n\x17user_ip_request_headers\x18\xb2\xef\xe2\xc8\x01 \x03(\t\"k\n\x0bJsonParsing\x12\x1a\n\x16UNDEFINED_JSON_PARSING\x10\x00\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x12\x1c\n\x15STANDARD_WITH_GRAPHQL\x10\x92\xbf\x81\x33\"C\n\x08LogLevel\x12\x17\n\x13UNDEFINED_LOG_LEVEL\x10\x00\x12\r\n\x06NORMAL\x10\xe7\xe1\xe6L\x12\x0f\n\x07VERBOSE\x10\xe2\x8a\xe4\xfd\x01\x42\x15\n\x13_json_custom_configB\x0f\n\r_json_parsingB\x0c\n\n_log_levelB\x1f\n\x1d_request_body_inspection_size\"O\n3SecurityPolicyAdvancedOptionsConfigJsonCustomConfig\x12\x18\n\rcontent_types\x18\xb3\xe2\xa7\x08 \x03(\t\"\xbe\x02\n\x19SecurityPolicyAssociation\x12\x1d\n\rattachment_id\x18\xb7\xc3\xbd\x31 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0c\x64isplay_name\x18\xe8\x87\x91\x02 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x10\x65xcluded_folders\x18\xd0\x98\x8e\x94\x01 \x03(\t\x12\x1d\n\x11\x65xcluded_projects\x18\xcf\x9e\xfd\x86\x01 \x03(\t\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x02\x88\x01\x01\x12\"\n\x12security_policy_id\x18\x89\x92\x8f\x61 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\nshort_name\x18\xee\xb8\xd0\xea\x01 \x01(\tH\x04\x88\x01\x01\x42\x10\n\x0e_attachment_idB\x0f\n\r_display_nameB\x07\n\x05_nameB\x15\n\x13_security_policy_idB\r\n\x0b_short_name\"\xc7\x01\n\"SecurityPolicyDdosProtectionConfig\x12 \n\x0f\x64\x64os_protection\x18\x94\x9f\x9b\x83\x01 \x01(\tH\x00\x88\x01\x01\"k\n\x0e\x44\x64osProtection\x12\x1d\n\x19UNDEFINED_DDOS_PROTECTION\x10\x00\x12\x0f\n\x08\x41\x44VANCED\x10\xa2\xb0\xb5\x1e\x12\x17\n\x10\x41\x44VANCED_PREVIEW\x10\x8b\xd9\xc0\x13\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\x42\x12\n\x10_ddos_protection\"\x83\x02\n\x12SecurityPolicyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.SecurityPolicy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x03\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\n\n\x08_warning\"`\n$SecurityPolicyRecaptchaOptionsConfig\x12\"\n\x11redirect_site_key\x18\xea\x84\xbc\xd5\x01 \x01(\tH\x00\x88\x01\x01\x42\x14\n\x12_redirect_site_key\"N\n\x17SecurityPolicyReference\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_security_policy\"\xf7\x06\n\x12SecurityPolicyRule\x12\x16\n\x06\x61\x63tion\x18\xb6\xfc\xbdY \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12[\n\rheader_action\x18\xa8\xa0\xb8\x9c\x01 \x01(\x0b\x32;.google.cloud.compute.v1.SecurityPolicyRuleHttpHeaderActionH\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12I\n\x05match\x18\xc5\xb3\xb7\x31 \x01(\x0b\x32\x32.google.cloud.compute.v1.SecurityPolicyRuleMatcherH\x04\x88\x01\x01\x12Y\n\rnetwork_match\x18\xf4\xf8\xfa\xdc\x01 \x01(\x0b\x32\x39.google.cloud.compute.v1.SecurityPolicyRuleNetworkMatcherH\x05\x88\x01\x01\x12k\n\x18preconfigured_waf_config\x18\xe3\x9f\x96\x38 \x01(\x0b\x32\x41.google.cloud.compute.v1.SecurityPolicyRulePreconfiguredWafConfigH\x06\x88\x01\x01\x12\x17\n\x07preview\x18\xc8\xc7\xa3h \x01(\x08H\x07\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x08\x88\x01\x01\x12_\n\x12rate_limit_options\x18\xfb\xc9\x9a \x01(\x0b\x32;.google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsH\t\x88\x01\x01\x12\\\n\x10redirect_options\x18\xbb\x92\xeeM \x01(\x0b\x32:.google.cloud.compute.v1.SecurityPolicyRuleRedirectOptionsH\n\x88\x01\x01\x42\t\n\x07_actionB\x0e\n\x0c_descriptionB\x10\n\x0e_header_actionB\x07\n\x05_kindB\x08\n\x06_matchB\x10\n\x0e_network_matchB\x1b\n\x19_preconfigured_waf_configB\n\n\x08_previewB\x0b\n\t_priorityB\x15\n\x13_rate_limit_optionsB\x13\n\x11_redirect_options\"\x95\x01\n\"SecurityPolicyRuleHttpHeaderAction\x12o\n\x17request_headers_to_adds\x18\xcd\xab\xfa) \x03(\x0b\x32K.google.cloud.compute.v1.SecurityPolicyRuleHttpHeaderActionHttpHeaderOption\"\x90\x01\n2SecurityPolicyRuleHttpHeaderActionHttpHeaderOption\x12\x1b\n\x0bheader_name\x18\xfd\xc1\xc7\x34 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0cheader_value\x18\xbf\xf2\xeb` \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_header_nameB\x0f\n\r_header_value\"\x9b\x03\n\x19SecurityPolicyRuleMatcher\x12P\n\x06\x63onfig\x18\xc2\x86\xfey \x01(\x0b\x32\x38.google.cloud.compute.v1.SecurityPolicyRuleMatcherConfigH\x00\x88\x01\x01\x12\x33\n\x04\x65xpr\x18\xf5\xf3\xbe\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.ExprH\x01\x88\x01\x01\x12\\\n\x0c\x65xpr_options\x18\xd4\xc4\xec\xe7\x01 \x01(\x0b\x32=.google.cloud.compute.v1.SecurityPolicyRuleMatcherExprOptionsH\x02\x88\x01\x01\x12\x1f\n\x0eversioned_expr\x18\xbd\xe3\xd6\x99\x01 \x01(\tH\x03\x88\x01\x01\"@\n\rVersionedExpr\x12\x1c\n\x18UNDEFINED_VERSIONED_EXPR\x10\x00\x12\x11\n\nSRC_IPS_V1\x10\x89\xfd\xe8!B\t\n\x07_configB\x07\n\x05_exprB\x0f\n\r_expr_optionsB\x11\n\x0f_versioned_expr\"<\n\x1fSecurityPolicyRuleMatcherConfig\x12\x19\n\rsrc_ip_ranges\x18\xd3\x80\x87\xce\x01 \x03(\t\"\xaf\x01\n$SecurityPolicyRuleMatcherExprOptions\x12q\n\x11recaptcha_options\x18\xc6\xf6\xc7\xb9\x01 \x01(\x0b\x32M.google.cloud.compute.v1.SecurityPolicyRuleMatcherExprOptionsRecaptchaOptionsH\x00\x88\x01\x01\x42\x14\n\x12_recaptcha_options\"~\n4SecurityPolicyRuleMatcherExprOptionsRecaptchaOptions\x12!\n\x16\x61\x63tion_token_site_keys\x18\x9d\xea\xc9\x1c \x03(\t\x12#\n\x17session_token_site_keys\x18\xfd\xf2\xfa\x9e\x01 \x03(\t\"\xc3\x02\n SecurityPolicyRuleNetworkMatcher\x12\x1a\n\x0e\x64\x65st_ip_ranges\x18\x91\xd7\xee\xa0\x01 \x03(\t\x12\x16\n\ndest_ports\x18\xb5\xb0\x93\xb5\x01 \x03(\t\x12\x17\n\x0cip_protocols\x18\xc3\x8f\xcd{ \x03(\t\x12\x13\n\x08src_asns\x18\xf2\xbd\x97\x38 \x03(\r\x12\x19\n\rsrc_ip_ranges\x18\xd3\x80\x87\xce\x01 \x03(\t\x12\x15\n\tsrc_ports\x18\xf7\xbb\x9e\xd4\x01 \x03(\t\x12\x1b\n\x10src_region_codes\x18\x96\xe3\x9f/ \x03(\t\x12n\n\x13user_defined_fields\x18\xa3\x89\xc0\r \x03(\x0b\x32N.google.cloud.compute.v1.SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch\"i\n5SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x06values\x18\xa2\xba\x96w \x03(\tB\x07\n\x05_name\"\x8d\x01\n(SecurityPolicyRulePreconfiguredWafConfig\x12\x61\n\nexclusions\x18\xe5\xf8\xbf\x63 \x03(\x0b\x32J.google.cloud.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusion\"\x82\x05\n1SecurityPolicyRulePreconfiguredWafConfigExclusion\x12|\n\x1arequest_cookies_to_exclude\x18\xf6\xde\xdfJ \x03(\x0b\x32U.google.cloud.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParams\x12|\n\x1arequest_headers_to_exclude\x18\x9f\xa4\x93\x1e \x03(\x0b\x32U.google.cloud.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParams\x12\x82\x01\n\x1frequest_query_params_to_exclude\x18\x88\x9e\xba\xa2\x01 \x03(\x0b\x32U.google.cloud.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParams\x12y\n\x17request_uris_to_exclude\x18\x9e\xaa\x9f+ \x03(\x0b\x32U.google.cloud.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParams\x12\x1b\n\x0ftarget_rule_ids\x18\xe3\xe3\xd5\xed\x01 \x03(\t\x12 \n\x0ftarget_rule_set\x18\x8d\xaf\xd6\xed\x01 \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_target_rule_set\"\xe7\x01\n.google.cloud.compute.v1.ServiceAttachmentConsumerProjectLimit\x12 \n\x15\x63onsumer_reject_lists\x18\x9e\x99\xa5\x61 \x03(\t\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x17\n\x0c\x64omain_names\x18\x8d\xd8\x89\x03 \x03(\t\x12&\n\x15\x65nable_proxy_protocol\x18\x85\x87\xbc\xad\x01 \x01(\x08H\x03\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x04\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12M\n\x08metadata\x18\xaf\xf6\xb5) \x03(\x0b\x32\x38.google.cloud.compute.v1.ServiceAttachment.MetadataEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x17\n\x0bnat_subnets\x18\x98\x8f\xdb\xb2\x01 \x03(\t\x12(\n\x18producer_forwarding_rule\x18\xd1\xa8\x9cv \x01(\tH\x08\x88\x01\x01\x12,\n\x1bpropagated_connection_limit\x18\xfe\xc8\xd3\x9e\x01 \x01(\rH\t\x88\x01\x01\x12L\n\x19psc_service_attachment_id\x18\xee\xfa\xcf\xfb\x01 \x01(\x0b\x32 .google.cloud.compute.v1.Uint128H\n\x88\x01\x01\x12%\n\x15reconcile_connections\x18\xe4\xc3\xeb; \x01(\x08H\x0b\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0c\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\r\x88\x01\x01\x12\x1d\n\x0etarget_service\x18\x87\xfcN \x01(\tH\x0e\x88\x01\x01\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x95\x01\n\x14\x43onnectionPreference\x12#\n\x1fUNDEFINED_CONNECTION_PREFERENCE\x10\x00\x12\x17\n\x10\x41\x43\x43\x45PT_AUTOMATIC\x10\x94\xf7\xf0#\x12\x15\n\rACCEPT_MANUAL\x10\xdd\xed\xf1\xb1\x01\x12(\n!CONNECTION_PREFERENCE_UNSPECIFIED\x10\xb4\xa0\xbf\x10\x42\x18\n\x16_connection_preferenceB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x18\n\x16_enable_proxy_protocolB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x1b\n\x19_producer_forwarding_ruleB\x1e\n\x1c_propagated_connection_limitB\x1c\n\x1a_psc_service_attachment_idB\x18\n\x16_reconcile_connectionsB\t\n\x07_regionB\x0c\n\n_self_linkB\x11\n\x0f_target_service\"\xd4\x03\n\x1fServiceAttachmentAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12U\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x43.google.cloud.compute.v1.ServiceAttachmentAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x63\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x44\n\x05value\x18\x02 \x01(\x0b\x32\x35.google.cloud.compute.v1.ServiceAttachmentsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x90\x04\n\"ServiceAttachmentConnectedEndpoint\x12 \n\x10\x63onsumer_network\x18\xe5\xdd\xa4y \x01(\tH\x00\x88\x01\x01\x12\x18\n\x08\x65ndpoint\x18\x95\xbb\x9c> \x01(\tH\x01\x88\x01\x01\x12!\n\x10\x65ndpoint_with_id\x18\x8a\xc5\x90\xd4\x01 \x01(\tH\x02\x88\x01\x01\x12\x12\n\x07nat_ips\x18\x8e\xf0\x8b\x38 \x03(\t\x12,\n\x1bpropagated_connection_count\x18\xd2\xd3\xe3\x9a\x01 \x01(\rH\x03\x88\x01\x01\x12\"\n\x11psc_connection_id\x18\xdd\xa5\xa3\x8b\x01 \x01(\x04H\x04\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x05\x88\x01\x01\"\x94\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0f\n\x08\x41\x43\x43\x45PTED\x10\xa7\x9f\xd2u\x12\x0e\n\x06\x43LOSED\x10\xec\xaa\xa3\xb5\x01\x12\x17\n\x0fNEEDS_ATTENTION\x10\xbc\x8b\xa2\xa4\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x0f\n\x08REJECTED\x10\xfe\x88\x84S\x12\x19\n\x12STATUS_UNSPECIFIED\x10\xca\xcc\x8b\x14\x42\x13\n\x11_consumer_networkB\x0b\n\t_endpointB\x13\n\x11_endpoint_with_idB\x1e\n\x1c_propagated_connection_countB\x14\n\x12_psc_connection_idB\t\n\x07_status\"\xf4\x01\n%ServiceAttachmentConsumerProjectLimit\x12 \n\x10\x63onnection_limit\x18\x9a\x9e\xd4> \x01(\rH\x00\x88\x01\x01\x12\x1c\n\x0c\x65ndpoint_url\x18\xc5\xff\xc4j \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0bnetwork_url\x18\xde\x8f\xe6\x62 \x01(\tH\x02\x88\x01\x01\x12\"\n\x11project_id_or_num\x18\xa8\x8a\xe5\xa6\x01 \x01(\tH\x03\x88\x01\x01\x42\x13\n\x11_connection_limitB\x0f\n\r_endpoint_urlB\x0e\n\x0c_network_urlB\x14\n\x12_project_id_or_num\"\xb3\x02\n\x15ServiceAttachmentList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12<\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32*.google.cloud.compute.v1.ServiceAttachment\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb2\x01\n\x1cServiceAttachmentsScopedList\x12K\n\x13service_attachments\x18\xa6\x92\xba\x92\x01 \x03(\x0b\x32*.google.cloud.compute.v1.ServiceAttachment\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xa6\x02\n&SetBackendServiceTargetSslProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x8a\x01\n7target_ssl_proxies_set_backend_service_request_resource\x18\xa4\xe9\xa8\x42 \x01(\x0b\x32\x41.google.cloud.compute.v1.TargetSslProxiesSetBackendServiceRequestB\x03\xe0\x41\x02\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa7\x02\n&SetBackendServiceTargetTcpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x8b\x01\n7target_tcp_proxies_set_backend_service_request_resource\x18\xef\xd1\xc2\x82\x01 \x01(\x0b\x32\x41.google.cloud.compute.v1.TargetTcpProxiesSetBackendServiceRequestB\x03\xe0\x41\x02\x12!\n\x10target_tcp_proxy\x18\xe2\xd6\xf0\xef\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb1\x02\n\x1aSetBackupTargetPoolRequest\x12\x1e\n\x0e\x66\x61ilover_ratio\x18\xfe\x94\xb4\x65 \x01(\x02H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x12T\n\x19target_reference_resource\x18\xf0\xb7\xdd\xf9\x01 \x01(\x0b\x32(.google.cloud.compute.v1.TargetReferenceB\x03\xe0\x41\x02\x42\x11\n\x0f_failover_ratioB\r\n\x0b_request_id\"\xae\x02\n(SetCertificateMapTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x8f\x01\n9target_https_proxies_set_certificate_map_request_resource\x18\xbb\xb6\xfe\xde\x01 \x01(\x0b\x32\x43.google.cloud.compute.v1.TargetHttpsProxiesSetCertificateMapRequestB\x03\xe0\x41\x02\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa7\x02\n&SetCertificateMapTargetSslProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x8b\x01\n7target_ssl_proxies_set_certificate_map_request_resource\x18\xba\x96\x83\xa4\x01 \x01(\x0b\x32\x41.google.cloud.compute.v1.TargetSslProxiesSetCertificateMapRequestB\x03\xe0\x41\x02\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xea\x01\n\x1fSetCloudArmorTierProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12y\n.projects_set_cloud_armor_tier_request_resource\x18\xcf\xfb\xde$ \x01(\x0b\x32\x39.google.cloud.compute.v1.ProjectsSetCloudArmorTierRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x8c\x03\n*SetCommonInstanceMetadataOperationMetadata\x12$\n\x13\x63lient_operation_id\x18\xe7\x8d\xde\x8d\x01 \x01(\tH\x00\x88\x01\x01\x12\x83\x01\n\x17per_location_operations\x18\x94\xd1\x82\xc3\x01 \x03(\x0b\x32^.google.cloud.compute.v1.SetCommonInstanceMetadataOperationMetadata.PerLocationOperationsEntry\x1a\x99\x01\n\x1aPerLocationOperationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12j\n\x05value\x18\x02 \x01(\x0b\x32[.google.cloud.compute.v1.SetCommonInstanceMetadataOperationMetadataPerLocationOperationInfo:\x02\x38\x01\x42\x16\n\x14_client_operation_id\"\xb2\x02\nBSetCommonInstanceMetadataOperationMetadataPerLocationOperationInfo\x12\x36\n\x05\x65rror\x18\x88\xa4\x93. \x01(\x0b\x32\x1f.google.cloud.compute.v1.StatusH\x00\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x01\x88\x01\x01\"\x88\x01\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x10\n\tABANDONED\x10\xb4\xc3\x80\'\x12\x0b\n\x04\x44ONE\x10\x82\xb7\x80\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x12\n\nPROPAGATED\x10\xdb\xb4\x82\xf2\x01\x12\x12\n\x0bPROPAGATING\x10\x86\x83\xcbN\x12\x13\n\x0bUNSPECIFIED\x10\x97\xbe\x98\xfb\x01\x42\x08\n\x06_errorB\x08\n\x06_state\"\xbe\x01\n\'SetCommonInstanceMetadataProjectRequest\x12\x45\n\x11metadata_resource\x18\x9e\xbe\xe6\x8a\x01 \x01(\x0b\x32!.google.cloud.compute.v1.MetadataB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xf7\x01\n#SetDefaultNetworkTierProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x81\x01\n2projects_set_default_network_tier_request_resource\x18\x8a\xc0\xa3< \x01(\x0b\x32=.google.cloud.compute.v1.ProjectsSetDefaultNetworkTierRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe9\x01\n$SetDeletionProtectionInstanceRequest\x12$\n\x13\x64\x65letion_protection\x18\xea\xff\xb2\xda\x01 \x01(\x08H\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x16\n\x14_deletion_protectionB\r\n\x0b_request_id\"\xe2\x01\n SetDiskAutoDeleteInstanceRequest\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\x08\x42\x03\xe0\x41\x02\x12\x1b\n\x0b\x64\x65vice_name\x18\xd4\xb5\x9a \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xff\x01\n)SetEdgeSecurityPolicyBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x64\n\"security_policy_reference_resource\x18\xf0\xb4\xab\x61 \x01(\x0b\x32\x30.google.cloud.compute.v1.SecurityPolicyReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x82\x02\n*SetEdgeSecurityPolicyBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x64\n\"security_policy_reference_resource\x18\xf0\xb4\xab\x61 \x01(\x0b\x32\x30.google.cloud.compute.v1.SecurityPolicyReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xbb\x01\n SetIamPolicyBackendBucketRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xbc\x01\n!SetIamPolicyBackendServiceRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xc4\x01\n\x17SetIamPolicyDiskRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\xbb\x01\n!SetIamPolicyFirewallPolicyRequest\x12|\n/global_organization_set_policy_request_resource\x18\xde\x94\xccT \x01(\x0b\x32;.google.cloud.compute.v1.GlobalOrganizationSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xb3\x01\n\x18SetIamPolicyImageRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xc8\x01\n\x1bSetIamPolicyInstanceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\xbe\x01\n#SetIamPolicyInstanceTemplateRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xd4\x01\n\'SetIamPolicyInstantSnapshotGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\xcf\x01\n\"SetIamPolicyInstantSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\xc9\x01\n.SetIamPolicyInterconnectAttachmentGroupRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xbf\x01\n$SetIamPolicyInterconnectGroupRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xb5\x01\n\x1aSetIamPolicyLicenseRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xba\x01\n\x1fSetIamPolicyMachineImageRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xd7\x01\n$SetIamPolicyNetworkAttachmentRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xc3\x01\n(SetIamPolicyNetworkFirewallPolicyRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xc9\x01\n\x1cSetIamPolicyNodeGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\xd2\x01\n\x1fSetIamPolicyNodeTemplateRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xd9\x01\n&SetIamPolicyRegionBackendBucketRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xda\x01\n\'SetIamPolicyRegionBackendServiceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xd0\x01\n\x1dSetIamPolicyRegionDiskRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xe0\x01\n-SetIamPolicyRegionInstantSnapshotGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xdb\x01\n(SetIamPolicyRegionInstantSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xe1\x01\n.SetIamPolicyRegionNetworkFirewallPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xd4\x01\n!SetIamPolicyRegionSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xfd\x01\n#SetIamPolicyReservationBlockRequest\x12\x1f\n\x0fparent_resource\x18\x83\x98\xd0\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12l\n\'zone_set_nested_policy_request_resource\x18\xd3\xf1\x80\x7f \x01(\x0b\x32\x33.google.cloud.compute.v1.ZoneSetNestedPolicyRequestB\x03\xe0\x41\x02\"\xcb\x01\n\x1eSetIamPolicyReservationRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\x80\x02\n&SetIamPolicyReservationSubBlockRequest\x12\x1f\n\x0fparent_resource\x18\x83\x98\xd0\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12l\n\'zone_set_nested_policy_request_resource\x18\xd3\xf1\x80\x7f \x01(\x0b\x32\x33.google.cloud.compute.v1.ZoneSetNestedPolicyRequestB\x03\xe0\x41\x02\"\xd4\x01\n!SetIamPolicyResourcePolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xd7\x01\n$SetIamPolicyServiceAttachmentRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xb6\x01\n\x1bSetIamPolicySnapshotRequest\x12\x64\n\"global_set_policy_request_resource\x18\xb2\xe7\xdb\xa0\x01 \x01(\x0b\x32/.google.cloud.compute.v1.GlobalSetPolicyRequestB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xcb\x01\n\x1eSetIamPolicyStoragePoolRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12`\n zone_set_policy_request_resource\x18\xbb\xb8\x98\xb6\x01 \x01(\x0b\x32-.google.cloud.compute.v1.ZoneSetPolicyRequestB\x03\xe0\x41\x02\"\xd0\x01\n\x1dSetIamPolicySubnetworkRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"region_set_policy_request_resource\x18\x83\xc7\xeb\x83\x01 \x01(\x0b\x32/.google.cloud.compute.v1.RegionSetPolicyRequestB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\"\xde\x02\n.SetInstanceTemplateInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x98\x01\n>instance_group_managers_set_instance_template_request_resource\x18\xc5\xd9\xd6\x04 \x01(\x0b\x32H.google.cloud.compute.v1.InstanceGroupManagersSetInstanceTemplateRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe4\x02\n4SetInstanceTemplateRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x94\x01\n.google.cloud.compute.v1.TargetSslProxiesSetProxyHeaderRequestB\x03\xe0\x41\x02\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x9d\x02\n#SetProxyHeaderTargetTcpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x84\x01\n4target_tcp_proxies_set_proxy_header_request_resource\x18\xc3\x98\xf1h \x01(\x0b\x32>.google.cloud.compute.v1.TargetTcpProxiesSetProxyHeaderRequestB\x03\xe0\x41\x02\x12!\n\x10target_tcp_proxy\x18\xe2\xd6\xf0\xef\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa7\x02\n&SetQuicOverrideTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x8a\x01\n7target_https_proxies_set_quic_override_request_resource\x18\xe2\xf5\xe3\" \x01(\x0b\x32\x41.google.cloud.compute.v1.TargetHttpsProxiesSetQuicOverrideRequestB\x03\xe0\x41\x02\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xee\x01\n\x1cSetSchedulingInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12I\n\x13scheduling_resource\x18\xd9\xac\xee\xdc\x01 \x01(\x0b\x32#.google.cloud.compute.v1.SchedulingB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xfe\x01\n&SetSecurityPolicyBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x64\n\"security_policy_reference_resource\x18\xf0\xb4\xab\x61 \x01(\x0b\x32\x30.google.cloud.compute.v1.SecurityPolicyReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa3\x02\n SetSecurityPolicyInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12z\n.instances_set_security_policy_request_resource\x18\x8a\xd1\xbav \x01(\x0b\x32:.google.cloud.compute.v1.InstancesSetSecurityPolicyRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa5\x02\n,SetSecurityPolicyRegionBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x64\n\"security_policy_reference_resource\x18\xf0\xb4\xab\x61 \x01(\x0b\x32\x30.google.cloud.compute.v1.SecurityPolicyReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x9b\x02\n&SetSecurityPolicyTargetInstanceRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x64\n\"security_policy_reference_resource\x18\xf0\xb4\xab\x61 \x01(\x0b\x32\x30.google.cloud.compute.v1.SecurityPolicyReferenceB\x03\xe0\x41\x02\x12 \n\x0ftarget_instance\x18\x83\x8f\x96\x8a\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x96\x02\n\"SetSecurityPolicyTargetPoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x64\n\"security_policy_reference_resource\x18\xf0\xb4\xab\x61 \x01(\x0b\x32\x30.google.cloud.compute.v1.SecurityPolicyReferenceB\x03\xe0\x41\x02\x12\x1b\n\x0btarget_pool\x18\x8a\xe4\xf8\x1d \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa4\x02\n SetServiceAccountInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12{\n.instances_set_service_account_request_resource\x18\xb8\x9e\xb2\x83\x01 \x01(\x0b\x32:.google.cloud.compute.v1.InstancesSetServiceAccountRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xb0\x02\n1SetShieldedInstanceIntegrityPolicyInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12v\n+shielded_instance_integrity_policy_resource\x18\xb6\xdc\x8d\xc3\x01 \x01(\x0b\x32\x38.google.cloud.compute.v1.ShieldedInstanceIntegrityPolicyB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe5\x02\n/SetSslCertificatesRegionTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9e\x01\nAregion_target_https_proxies_set_ssl_certificates_request_resource\x18\x87\x84\xa6\xba\x01 \x01(\x0b\x32J.google.cloud.compute.v1.RegionTargetHttpsProxiesSetSslCertificatesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xb0\x02\n)SetSslCertificatesTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x90\x01\n:target_https_proxies_set_ssl_certificates_request_resource\x18\xdc\xab\xb2j \x01(\x0b\x32\x44.google.cloud.compute.v1.TargetHttpsProxiesSetSslCertificatesRequestB\x03\xe0\x41\x02\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xa9\x02\n\'SetSslCertificatesTargetSslProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x8c\x01\n8target_ssl_proxies_set_ssl_certificates_request_resource\x18\xbd\xcb\xc5\x46 \x01(\x0b\x32\x42.google.cloud.compute.v1.TargetSslProxiesSetSslCertificatesRequestB\x03\xe0\x41\x02\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf3\x01\n#SetSslPolicyTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Z\n\x1dssl_policy_reference_resource\x18\xbc\xf4\x9fp \x01(\x0b\x32+.google.cloud.compute.v1.SslPolicyReferenceB\x03\xe0\x41\x02\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf0\x01\n!SetSslPolicyTargetSslProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12Z\n\x1dssl_policy_reference_resource\x18\xbc\xf4\x9fp \x01(\x0b\x32+.google.cloud.compute.v1.SslPolicyReferenceB\x03\xe0\x41\x02\x12!\n\x10target_ssl_proxy\x18\xcd\xba\xc6\xa1\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xdc\x01\n\x16SetTagsInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12=\n\rtags_resource\x18\xf4\x9a\x85\x9e\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.TagsB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x87\x02\n\x1eSetTargetForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12T\n\x19target_reference_resource\x18\xf0\xb7\xdd\xf9\x01 \x01(\x0b\x32(.google.cloud.compute.v1.TargetReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xec\x01\n$SetTargetGlobalForwardingRuleRequest\x12 \n\x0f\x66orwarding_rule\x18\xfe\xa5\xdd\x80\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12T\n\x19target_reference_resource\x18\xf0\xb7\xdd\xf9\x01 \x01(\x0b\x32(.google.cloud.compute.v1.TargetReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd0\x02\n)SetTargetPoolsInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x8f\x01\n9instance_group_managers_set_target_pools_request_resource\x18\x88\x86\x88\x86\x01 \x01(\x0b\x32\x43.google.cloud.compute.v1.InstanceGroupManagersSetTargetPoolsRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe6\x02\n/SetTargetPoolsRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9b\x01\n@region_instance_group_managers_set_target_pools_request_resource\x18\xfd\xca\xc5% \x01(\x0b\x32I.google.cloud.compute.v1.RegionInstanceGroupManagersSetTargetPoolsRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x90\x02\n%SetUrlMapRegionTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\x12U\n\x1aurl_map_reference_resource\x18\x95\xe6\x8e\xbe\x01 \x01(\x0b\x32(.google.cloud.compute.v1.UrlMapReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x92\x02\n&SetUrlMapRegionTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x12U\n\x1aurl_map_reference_resource\x18\x95\xe6\x8e\xbe\x01 \x01(\x0b\x32(.google.cloud.compute.v1.UrlMapReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xe9\x01\n\x1fSetUrlMapTargetHttpProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12!\n\x11target_http_proxy\x18\xe5\xbe\xd2\x62 \x01(\tB\x03\xe0\x41\x02\x12U\n\x1aurl_map_reference_resource\x18\x95\xe6\x8e\xbe\x01 \x01(\x0b\x32(.google.cloud.compute.v1.UrlMapReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xeb\x01\n SetUrlMapTargetHttpsProxyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12target_https_proxy\x18\xec\xb0\xfa\x18 \x01(\tB\x03\xe0\x41\x02\x12U\n\x1aurl_map_reference_resource\x18\x95\xe6\x8e\xbe\x01 \x01(\x0b\x32(.google.cloud.compute.v1.UrlMapReferenceB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xd0\x01\n\"SetUsageExportBucketProjectRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\\\n\x1eusage_export_location_resource\x18\xeb\xcc\xd4\t \x01(\x0b\x32,.google.cloud.compute.v1.UsageExportLocationB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xfa\x02\n\rShareSettings\x12N\n\x0bproject_map\x18\xb6\xd6\xff? \x03(\x0b\x32\x36.google.cloud.compute.v1.ShareSettings.ProjectMapEntry\x12\x1b\n\nshare_type\x18\x9a\x97\xb8\xab\x01 \x01(\tH\x00\x88\x01\x01\x1a\x66\n\x0fProjectMapEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.ShareSettingsProjectConfig:\x02\x38\x01\"\x84\x01\n\tShareType\x12\x18\n\x14UNDEFINED_SHARE_TYPE\x10\x00\x12\x0c\n\x05LOCAL\x10\xcb\xce\xcf\"\x12\x14\n\x0cORGANIZATION\x10\xb3\xaa\x8f\x83\x01\x12\x1e\n\x16SHARE_TYPE_UNSPECIFIED\x10\x92\xbc\xf6\xeb\x01\x12\x19\n\x11SPECIFIC_PROJECTS\x10\xe7\xb1\xee\xa5\x01\x42\r\n\x0b_share_type\"G\n\x1aShareSettingsProjectConfig\x12\x1a\n\nproject_id\x18\x81\xc8\xd2T \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_project_id\"\xce\x01\n\x16ShieldedInstanceConfig\x12,\n\x1b\x65nable_integrity_monitoring\x18\xb6\xdb\x87\xc3\x01 \x01(\x08H\x00\x88\x01\x01\x12\"\n\x12\x65nable_secure_boot\x18\xfe\x83\xf6: \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0b\x65nable_vtpm\x18\xf7\xe4\xdbV \x01(\x08H\x02\x88\x01\x01\x42\x1e\n\x1c_enable_integrity_monitoringB\x15\n\x13_enable_secure_bootB\x0e\n\x0c_enable_vtpm\"\x81\x04\n\x18ShieldedInstanceIdentity\x12`\n\x17\x65\x63\x63_p256_encryption_key\x18\xc5\xc7\xf6\xdf\x01 \x01(\x0b\x32\x36.google.cloud.compute.v1.ShieldedInstanceIdentityEntryH\x00\x88\x01\x01\x12]\n\x14\x65\x63\x63_p256_signing_key\x18\xc3\x96\xe3\xe3\x01 \x01(\x0b\x32\x36.google.cloud.compute.v1.ShieldedInstanceIdentityEntryH\x01\x88\x01\x01\x12W\n\x0e\x65ncryption_key\x18\xa3\xc7\xe9\xe8\x01 \x01(\x0b\x32\x36.google.cloud.compute.v1.ShieldedInstanceIdentityEntryH\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12T\n\x0bsigning_key\x18\xa5\x90\x85\x99\x01 \x01(\x0b\x32\x36.google.cloud.compute.v1.ShieldedInstanceIdentityEntryH\x04\x88\x01\x01\x42\x1a\n\x18_ecc_p256_encryption_keyB\x17\n\x15_ecc_p256_signing_keyB\x11\n\x0f_encryption_keyB\x07\n\x05_kindB\x0e\n\x0c_signing_key\"i\n\x1dShieldedInstanceIdentityEntry\x12\x18\n\x07\x65k_cert\x18\x9d\xdc\xd4\xd6\x01 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x06\x65k_pub\x18\xe4\xd7\xa8\x93\x01 \x01(\tH\x01\x88\x01\x01\x42\n\n\x08_ek_certB\t\n\x07_ek_pub\"h\n\x1fShieldedInstanceIntegrityPolicy\x12(\n\x18update_auto_learn_policy\x18\xa7\xc4\x87u \x01(\x08H\x00\x88\x01\x01\x42\x1b\n\x19_update_auto_learn_policy\"`\n\x0cSignedUrlKey\x12\x19\n\x08key_name\x18\xeb\xf0\xee\xee\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\tkey_value\x18\x91\x9f\xb0\xf0\x01 \x01(\tH\x01\x88\x01\x01\x42\x0b\n\t_key_nameB\x0c\n\n_key_value\"\xfc\x01\n\'SimulateMaintenanceEventInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12,\n\x1bwith_extended_notifications\x18\xfb\xd7\xc9\xc1\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x1e\n\x1c_with_extended_notifications\"\xc1\x02\n(SimulateMaintenanceEventNodeGroupRequest\x12\x1b\n\nnode_group\x18\x82\xfc\x8b\xe0\x01 \x01(\tB\x03\xe0\x41\x02\x12\x8c\x01\n7node_groups_simulate_maintenance_event_request_resource\x18\xdc\xf9\xcb\xa7\x01 \x01(\x0b\x32\x42.google.cloud.compute.v1.NodeGroupsSimulateMaintenanceEventRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xb2\x16\n\x08Snapshot\x12\x1d\n\x0c\x61rchitecture\x18\xd3\xd2\xb1\x90\x01 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0c\x61uto_created\x18\xd8\xc8\x9b\xdd\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1a\n\nchain_name\x18\xc9\xda\xdd \x01(\tH\x02\x88\x01\x01\x12#\n\x13\x63reation_size_bytes\x18\x8d\xe8\xe5; \x01(\x03H\x03\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x04\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x05\x88\x01\x01\x12\x1d\n\x0c\x64isk_size_gb\x18\xb7\x9a\xe7\x96\x01 \x01(\x03H\x06\x88\x01\x01\x12\x1f\n\x0e\x64ownload_bytes\x18\xf4\xcb\xb9\xcf\x01 \x01(\x03H\x07\x88\x01\x01\x12+\n\x1b\x65nable_confidential_compute\x18\xbc\xeb\xd9\x30 \x01(\x08H\x08\x88\x01\x01\x12\x1c\n\x0bguest_flush\x18\xdd\x93\xec\xb7\x01 \x01(\x08H\t\x88\x01\x01\x12\x45\n\x11guest_os_features\x18\xd1\xe0\xe7% \x03(\x0b\x32\'.google.cloud.compute.v1.GuestOsFeature\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\n\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x0b\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x0c\x88\x01\x01\x12\x41\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32-.google.cloud.compute.v1.Snapshot.LabelsEntry\x12\x18\n\rlicense_codes\x18\xa8\x85\xd8\x15 \x03(\x03\x12\x14\n\x08licenses\x18\xd2\x88\x80\xa1\x01 \x03(\t\x12\x1e\n\rlocation_hint\x18\xd1\x81\x92\xa7\x01 \x01(\tH\r\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0e\x88\x01\x01\x12?\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32\'.google.cloud.compute.v1.SnapshotParamsH\x0f\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x10\x88\x01\x01\x12\x1e\n\rsatisfies_pzi\x18\xa1\xdd\xab\xe5\x01 \x01(\x08H\x11\x88\x01\x01\x12\x1e\n\rsatisfies_pzs\x18\xab\xdd\xab\xe5\x01 \x01(\x08H\x12\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x13\x88\x01\x01\x12W\n\x17snapshot_encryption_key\x18\xfe\xf6\xd4\x14 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x14\x88\x01\x01\x12!\n\x11snapshot_group_id\x18\xf6\x9d\xccy \x01(\tH\x15\x88\x01\x01\x12#\n\x13snapshot_group_name\x18\xa6\xe3\xb5u \x01(\tH\x16\x88\x01\x01\x12\x1d\n\rsnapshot_type\x18\xd5\xd9\xa5; \x01(\tH\x17\x88\x01\x01\x12\x1c\n\x0bsource_disk\x18\xc1\xee\xb4\xd7\x01 \x01(\tH\x18\x88\x01\x01\x12[\n\x1asource_disk_encryption_key\x18\xe1\xa0\xb8\xfd\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x19\x88\x01\x01\x12\x34\n#source_disk_for_recovery_checkpoint\x18\xfe\xe1\xca\xab\x01 \x01(\tH\x1a\x88\x01\x01\x12\x1f\n\x0esource_disk_id\x18\xd9\xcd\xc9\xd8\x01 \x01(\tH\x1b\x88\x01\x01\x12\'\n\x17source_instant_snapshot\x18\x86\x84\xc3h \x01(\tH\x1c\x88\x01\x01\x12g\n&source_instant_snapshot_encryption_key\x18\xfc\x85\x94\xd0\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x1d\x88\x01\x01\x12+\n\x1asource_instant_snapshot_id\x18\xf4\xd3\x90\x89\x01 \x01(\tH\x1e\x88\x01\x01\x12/\n\x1fsource_snapshot_schedule_policy\x18\x83\xb6\xb5p \x01(\tH\x1f\x88\x01\x01\x12\x32\n\"source_snapshot_schedule_policy_id\x18\xd7\xa7\xce! \x01(\tH \x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH!\x88\x01\x01\x12\x1e\n\rstorage_bytes\x18\xa7\xbb\xbd\xca\x01 \x01(\x03H\"\x88\x01\x01\x12%\n\x14storage_bytes_status\x18\x8a\xab\x80\xea\x01 \x01(\tH#\x88\x01\x01\x12\x1d\n\x11storage_locations\x18\x9a\xed\xb3\x9c\x01 \x03(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"j\n\x0c\x41rchitecture\x12\x1a\n\x16UNDEFINED_ARCHITECTURE\x10\x00\x12 \n\x18\x41RCHITECTURE_UNSPECIFIED\x10\xab\xd4\x9d\xbc\x01\x12\x0c\n\x05\x41RM64\x10\xfa\xcb\xe9\x1d\x12\x0e\n\x06X86_64\x10\xc7\xa4\xe6\xca\x01\"N\n\x0cSnapshotType\x12\x1b\n\x17UNDEFINED_SNAPSHOT_TYPE\x10\x00\x12\x0f\n\x07\x41RCHIVE\x10\xa2\xd9\xd1\xf1\x01\x12\x10\n\x08STANDARD\x10\xbd\x9d\x8c\xe7\x01\"r\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x10\n\tUPLOADING\x10\xa1\x9c\xcd\x7f\"]\n\x12StorageBytesStatus\x12\"\n\x1eUNDEFINED_STORAGE_BYTES_STATUS\x10\x00\x12\x10\n\x08UPDATING\x10\xc6\xee\xec\xeb\x01\x12\x11\n\nUP_TO_DATE\x10\xce\xa2\xa7\x30\x42\x0f\n\r_architectureB\x0f\n\r_auto_createdB\r\n\x0b_chain_nameB\x16\n\x14_creation_size_bytesB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0f\n\r_disk_size_gbB\x11\n\x0f_download_bytesB\x1e\n\x1c_enable_confidential_computeB\x0e\n\x0c_guest_flushB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x10\n\x0e_location_hintB\x07\n\x05_nameB\t\n\x07_paramsB\t\n\x07_regionB\x10\n\x0e_satisfies_pziB\x10\n\x0e_satisfies_pzsB\x0c\n\n_self_linkB\x1a\n\x18_snapshot_encryption_keyB\x14\n\x12_snapshot_group_idB\x16\n\x14_snapshot_group_nameB\x10\n\x0e_snapshot_typeB\x0e\n\x0c_source_diskB\x1d\n\x1b_source_disk_encryption_keyB&\n$_source_disk_for_recovery_checkpointB\x11\n\x0f_source_disk_idB\x1a\n\x18_source_instant_snapshotB)\n\'_source_instant_snapshot_encryption_keyB\x1d\n\x1b_source_instant_snapshot_idB\"\n _source_snapshot_schedule_policyB%\n#_source_snapshot_schedule_policy_idB\t\n\x07_statusB\x10\n\x0e_storage_bytesB\x17\n\x15_storage_bytes_status\"\x93\x01\n\x17SnapshotGroupParameters\x12\x18\n\rreplica_zones\x18\x80\xb8\x8c\x17 \x03(\t\x12%\n\x15source_snapshot_group\x18\xe8\xf1\xack \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x01\x88\x01\x01\x42\x18\n\x16_source_snapshot_groupB\x07\n\x05_type\"\xa1\x02\n\x0cSnapshotList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x33\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32!.google.cloud.compute.v1.Snapshot\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb1\x01\n\x0eSnapshotParams\x12\x63\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32@.google.cloud.compute.v1.SnapshotParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xfa\x01\n\x10SnapshotSettings\x12X\n\x0f\x61\x63\x63\x65ss_location\x18\xb0\xd8\xe3\x08 \x01(\x0b\x32\x37.google.cloud.compute.v1.SnapshotSettingsAccessLocationH\x00\x88\x01\x01\x12\x63\n\x10storage_location\x18\xf9\xd1\xe0\xdb\x01 \x01(\x0b\x32@.google.cloud.compute.v1.SnapshotSettingsStorageLocationSettingsH\x01\x88\x01\x01\x42\x12\n\x10_access_locationB\x13\n\x11_storage_location\"\x90\x03\n\x1eSnapshotSettingsAccessLocation\x12]\n\tlocations\x18\xde\xae\x91\xc5\x01 \x03(\x0b\x32\x46.google.cloud.compute.v1.SnapshotSettingsAccessLocation.LocationsEntry\x12\x16\n\x06policy\x18\xb2\xca\xb6+ \x01(\tH\x00\x88\x01\x01\x1a\x81\x01\n\x0eLocationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12^\n\x05value\x18\x02 \x01(\x0b\x32O.google.cloud.compute.v1.SnapshotSettingsAccessLocationAccessLocationPreference:\x02\x38\x01\"h\n\x06Policy\x12\x14\n\x10UNDEFINED_POLICY\x10\x00\x12\x13\n\x0b\x41LL_REGIONS\x10\xa1\xae\x9f\x82\x01\x12\x19\n\x12POLICY_UNSPECIFIED\x10\x8a\xb7\xb3^\x12\x18\n\x10SPECIFIC_REGIONS\x10\xd2\xe3\xc5\xd8\x01\x42\t\n\x07_policy\"[\n6SnapshotSettingsAccessLocationAccessLocationPreference\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_region\"\xde\x03\n\'SnapshotSettingsStorageLocationSettings\x12\x66\n\tlocations\x18\xde\xae\x91\xc5\x01 \x03(\x0b\x32O.google.cloud.compute.v1.SnapshotSettingsStorageLocationSettings.LocationsEntry\x12\x16\n\x06policy\x18\xb2\xca\xb6+ \x01(\tH\x00\x88\x01\x01\x1a\x8b\x01\n\x0eLocationsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12h\n\x05value\x18\x02 \x01(\x0b\x32Y.google.cloud.compute.v1.SnapshotSettingsStorageLocationSettingsStorageLocationPreference:\x02\x38\x01\"\x99\x01\n\x06Policy\x12\x14\n\x10UNDEFINED_POLICY\x10\x00\x12\x14\n\x0cLOCAL_REGION\x10\xe8\xec\xb5\xc0\x01\x12\x1b\n\x14NEAREST_MULTI_REGION\x10\xbb\xfe\xa7\x65\x12\x1a\n\x12SPECIFIC_LOCATIONS\x10\xf1\xc8\xc7\x85\x01\x12*\n#STORAGE_LOCATION_POLICY_UNSPECIFIED\x10\xf0\x90\xc2wB\t\n\x07_policy\"a\n@SnapshotSettingsStorageLocationSettingsStorageLocationPreference\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_name\"M\n\x1bSnapshotUpdateKmsKeyRequest\x12\x1d\n\x0ckms_key_name\x18\x99\xeb\xfb\xe6\x01 \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_kms_key_name\"\xb5\x01\n\x17SourceDiskEncryptionKey\x12T\n\x13\x64isk_encryption_key\x18\x85\xed\xc4\x81\x01 \x01(\x0b\x32..google.cloud.compute.v1.CustomerEncryptionKeyH\x00\x88\x01\x01\x12\x1c\n\x0bsource_disk\x18\xc1\xee\xb4\xd7\x01 \x01(\tH\x01\x88\x01\x01\x42\x16\n\x14_disk_encryption_keyB\x0e\n\x0c_source_disk\"a\n\x14SourceInstanceParams\x12I\n\x0c\x64isk_configs\x18\xcf\xd9\xaap \x03(\x0b\x32\x30.google.cloud.compute.v1.DiskInstantiationConfig\"\xe8\n\n\x18SourceInstanceProperties\x12\x1f\n\x0e\x63\x61n_ip_forward\x18\xfc\x86\x84\xdf\x01 \x01(\x08H\x00\x88\x01\x01\x12$\n\x13\x64\x65letion_protection\x18\xea\xff\xb2\xda\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12<\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32*.google.cloud.compute.v1.SavedAttachedDisk\x12J\n\x12guest_accelerators\x18\xef\xcc\x87\xdd\x01 \x03(\x0b\x32*.google.cloud.compute.v1.AcceleratorConfig\x12*\n\x1akey_revocation_action_type\x18\xe2\xdc\xc0p \x01(\tH\x03\x88\x01\x01\x12Q\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32=.google.cloud.compute.v1.SourceInstanceProperties.LabelsEntry\x12\x1c\n\x0cmachine_type\x18\xb2\xb0\xcal \x01(\tH\x04\x88\x01\x01\x12;\n\x08metadata\x18\xaf\xf6\xb5) \x01(\x0b\x32!.google.cloud.compute.v1.MetadataH\x05\x88\x01\x01\x12 \n\x10min_cpu_platform\x18\xf7\x9b\xeas \x01(\tH\x06\x88\x01\x01\x12H\n\x12network_interfaces\x18\x8b\xda\x92\x19 \x03(\x0b\x32).google.cloud.compute.v1.NetworkInterface\x12\x30\n\x1fpost_key_revocation_action_type\x18\xe1\xd2\xd9\x8b\x01 \x01(\tH\x07\x88\x01\x01\x12@\n\nscheduling\x18\x94\xcb\xb1\xb8\x01 \x01(\x0b\x32#.google.cloud.compute.v1.SchedulingH\x08\x88\x01\x01\x12\x45\n\x10service_accounts\x18\xb0\xc4\xab\x84\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.ServiceAccount\x12\x33\n\x04tags\x18\x99\xe8\xd8\x01 \x01(\x0b\x32\x1d.google.cloud.compute.v1.TagsH\t\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8d\x01\n\x17KeyRevocationActionType\x12(\n$UNDEFINED_KEY_REVOCATION_ACTION_TYPE\x10\x00\x12.\n&KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED\x10\xda\x91\xde\xde\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x0b\n\x04STOP\x10\x82\x80\x9c\x01\"\x9e\x01\n\x1bPostKeyRevocationActionType\x12-\n)UNDEFINED_POST_KEY_REVOCATION_ACTION_TYPE\x10\x00\x12\x0b\n\x04NOOP\x10\xe2\xce\x92\x01\x12\x32\n+POST_KEY_REVOCATION_ACTION_TYPE_UNSPECIFIED\x10\xd9\x8a\x89m\x12\x0f\n\x08SHUTDOWN\x10\xd6\xec\xb7$B\x11\n\x0f_can_ip_forwardB\x16\n\x14_deletion_protectionB\x0e\n\x0c_descriptionB\x1d\n\x1b_key_revocation_action_typeB\x0f\n\r_machine_typeB\x0b\n\t_metadataB\x13\n\x11_min_cpu_platformB\"\n _post_key_revocation_action_typeB\r\n\x0b_schedulingB\x07\n\x05_tags\"\xa0\x06\n\x0eSslCertificate\x12\x1c\n\x0b\x63\x65rtificate\x18\x97\x83\xfd\xa2\x01 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0b\x65xpire_time\x18\xed\xd3\x91\xd2\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12V\n\x07managed\x18\x9f\x9f\xa4\x8e\x01 \x01(\x0b\x32<.google.cloud.compute.v1.SslCertificateManagedSslCertificateH\x06\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x1c\n\x0bprivate_key\x18\xa3\xf3\xa5\xac\x01 \x01(\tH\x08\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\t\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\n\x88\x01\x01\x12_\n\x0cself_managed\x18\xac\xf3\x81\x9d\x01 \x01(\x0b\x32@.google.cloud.compute.v1.SslCertificateSelfManagedSslCertificateH\x0b\x88\x01\x01\x12%\n\x19subject_alternative_names\x18\xe3\xef\x93\xfc\x01 \x03(\t\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x0c\x88\x01\x01\"[\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x0f\n\x07MANAGED\x10\xff\xb6\xd2\xe4\x01\x12\x14\n\x0cSELF_MANAGED\x10\x8c\xfb\x93\xcf\x01\x12\x18\n\x10TYPE_UNSPECIFIED\x10\x92\xfb\xdb\xd0\x01\x42\x0e\n\x0c_certificateB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_expire_timeB\x05\n\x03_idB\x07\n\x05_kindB\n\n\x08_managedB\x07\n\x05_nameB\x0e\n\x0c_private_keyB\t\n\x07_regionB\x0c\n\n_self_linkB\x0f\n\r_self_managedB\x07\n\x05_type\"\xcb\x03\n\x1cSslCertificateAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12R\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32@.google.cloud.compute.v1.SslCertificateAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a`\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x41\n\x05value\x18\x02 \x01(\x0b\x32\x32.google.cloud.compute.v1.SslCertificatesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xad\x02\n\x12SslCertificateList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.SslCertificate\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xd0\x03\n#SslCertificateManagedSslCertificate\x12i\n\rdomain_status\x18\xcd\xa7\xe7\xab\x01 \x03(\x0b\x32N.google.cloud.compute.v1.SslCertificateManagedSslCertificate.DomainStatusEntry\x12\x12\n\x07\x64omains\x18\xaf\x88\x9bl \x03(\t\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x00\x88\x01\x01\x1a\x33\n\x11\x44omainStatusEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xd1\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12.\n&MANAGED_CERTIFICATE_STATUS_UNSPECIFIED\x10\xd2\xc5\xb3\xe2\x01\x12\x14\n\x0cPROVISIONING\x10\xed\xf5\xda\x8a\x01\x12\x1a\n\x13PROVISIONING_FAILED\x10\xcf\xab\xd0$\x12\'\n\x1fPROVISIONING_FAILED_PERMANENTLY\x10\xab\xf0\x92\x83\x01\x12\x16\n\x0eRENEWAL_FAILED\x10\x84\xbe\xa1\xcf\x01\x42\t\n\x07_status\"\x85\x01\n\'SslCertificateSelfManagedSslCertificate\x12\x1c\n\x0b\x63\x65rtificate\x18\x97\x83\xfd\xa2\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bprivate_key\x18\xa3\xf3\xa5\xac\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_certificateB\x0e\n\x0c_private_key\"\xa9\x01\n\x19SslCertificatesScopedList\x12\x45\n\x10ssl_certificates\x18\x8f\xa2\xc3\xae\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.SslCertificate\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xe0\x03\n\x19SslPoliciesAggregatedList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12O\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32=.google.cloud.compute.v1.SslPoliciesAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x1a\\\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.SslPoliciesScopedList:\x02\x38\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa5\x02\n\x0fSslPoliciesList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x34\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\".google.cloud.compute.v1.SslPolicy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"?\n(SslPoliciesListAvailableFeaturesResponse\x12\x13\n\x08\x66\x65\x61tures\x18\xbd\xc8\xb3u \x03(\t\"\x9b\x01\n\x15SslPoliciesScopedList\x12;\n\x0cssl_policies\x18\xa3\xe4\x8d\x64 \x03(\x0b\x32\".google.cloud.compute.v1.SslPolicy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xfe\x05\n\tSslPolicy\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1a\n\x0f\x63ustom_features\x18\xcb\xb2\xcb\x10 \x03(\t\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x10\x65nabled_features\x18\xfb\xc6\xd2\xdf\x01 \x03(\t\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x1f\n\x0fmin_tls_version\x18\xa7\xe6\xf1\x03 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x17\n\x07profile\x18\xa9\x93\xbal \x01(\tH\x07\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12\x37\n\x08warnings\x18\xd7\x88\xc1\xed\x01 \x03(\x0b\x32!.google.cloud.compute.v1.Warnings\"n\n\rMinTlsVersion\x12\x1d\n\x19UNDEFINED_MIN_TLS_VERSION\x10\x00\x12\x0e\n\x07TLS_1_0\x10\xbe\xa4\xe5\x0f\x12\x0e\n\x07TLS_1_1\x10\xbf\xa4\xe5\x0f\x12\x0e\n\x07TLS_1_2\x10\xc0\xa4\xe5\x0f\x12\x0e\n\x07TLS_1_3\x10\xc1\xa4\xe5\x0f\"z\n\x07Profile\x12\x15\n\x11UNDEFINED_PROFILE\x10\x00\x12\x11\n\nCOMPATIBLE\x10\xd4\x8d\xc3U\x12\x0e\n\x06\x43USTOM\x10\xf1\xfe\xa5\xb9\x01\x12\x13\n\x0b\x46IPS_202205\x10\xdc\x9f\xf2\xe2\x01\x12\r\n\x06MODERN\x10\x9f\xbe\xf9>\x12\x11\n\nRESTRICTED\x10\xdb\xe8\xdb|B\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_min_tls_versionB\x07\n\x05_nameB\n\n\x08_profileB\t\n\x07_regionB\x0c\n\n_self_link\"@\n\x12SslPolicyReference\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_ssl_policy\"\xa0\x02\n StartAsyncReplicationDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12{\n.disks_start_async_replication_request_resource\x18\xda\x9e\xc0\xe0\x01 \x01(\x0b\x32:.google.cloud.compute.v1.DisksStartAsyncReplicationRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xb8\x02\n&StartAsyncReplicationRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x88\x01\n5region_disks_start_async_replication_request_resource\x18\x85\xc8\x96\xe2\x01 \x01(\x0b\x32@.google.cloud.compute.v1.RegionDisksStartAsyncReplicationRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9b\x01\n\x14StartInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xce\x02\n)StartInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x8d\x01\n8instance_group_managers_start_instances_request_resource\x18\xab\xa5\xbf| \x01(\x0b\x32\x43.google.cloud.compute.v1.InstanceGroupManagersStartInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe6\x02\n/StartInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9b\x01\n?region_instance_group_managers_start_instances_request_resource\x18\x96\x9b\xff\xec\x01 \x01(\x0b\x32I.google.cloud.compute.v1.RegionInstanceGroupManagersStartInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb5\x02\n%StartWithEncryptionKeyInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x86\x01\n4instances_start_with_encryption_key_request_resource\x18\xff\xfe\xcf\xd2\x01 \x01(\x0b\x32?.google.cloud.compute.v1.InstancesStartWithEncryptionKeyRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"|\n\x0eStatefulPolicy\x12V\n\x0fpreserved_state\x18\xaa\xe2\xa0\x01 \x01(\x0b\x32\x35.google.cloud.compute.v1.StatefulPolicyPreservedStateH\x00\x88\x01\x01\x42\x12\n\x10_preserved_state\"\x8e\x05\n\x1cStatefulPolicyPreservedState\x12R\n\x05\x64isks\x18\xf6\xcc\xca- \x03(\x0b\x32@.google.cloud.compute.v1.StatefulPolicyPreservedState.DisksEntry\x12\x61\n\rexternal_i_ps\x18\x8d\xd3\x80\xfe\x01 \x03(\x0b\x32\x46.google.cloud.compute.v1.StatefulPolicyPreservedState.ExternalIPsEntry\x12`\n\rinternal_i_ps\x18\xdb\x9b\xef\x66 \x03(\x0b\x32\x46.google.cloud.compute.v1.StatefulPolicyPreservedState.InternalIPsEntry\x1am\n\nDisksEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12N\n\x05value\x18\x02 \x01(\x0b\x32?.google.cloud.compute.v1.StatefulPolicyPreservedStateDiskDevice:\x02\x38\x01\x1ar\n\x10\x45xternalIPsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12M\n\x05value\x18\x02 \x01(\x0b\x32>.google.cloud.compute.v1.StatefulPolicyPreservedStateNetworkIp:\x02\x38\x01\x1ar\n\x10InternalIPsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12M\n\x05value\x18\x02 \x01(\x0b\x32>.google.cloud.compute.v1.StatefulPolicyPreservedStateNetworkIp:\x02\x38\x01\"\xb4\x01\n&StatefulPolicyPreservedStateDiskDevice\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\tH\x00\x88\x01\x01\"\\\n\nAutoDelete\x12\x19\n\x15UNDEFINED_AUTO_DELETE\x10\x00\x12\x0c\n\x05NEVER\x10\xec\xa4\xaf#\x12%\n\x1eON_PERMANENT_INSTANCE_DELETION\x10\xe7\xe0\xd2-B\x0e\n\x0c_auto_delete\"\xb3\x01\n%StatefulPolicyPreservedStateNetworkIp\x12\x1c\n\x0b\x61uto_delete\x18\xbb\xe4\xce\xdd\x01 \x01(\tH\x00\x88\x01\x01\"\\\n\nAutoDelete\x12\x19\n\x15UNDEFINED_AUTO_DELETE\x10\x00\x12\x0c\n\x05NEVER\x10\xec\xa4\xaf#\x12%\n\x1eON_PERMANENT_INSTANCE_DELETION\x10\xe7\xe0\xd2-B\x0e\n\x0c_auto_delete\"x\n\x06Status\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\x05H\x00\x88\x01\x01\x12)\n\x07\x64\x65tails\x18\xc2\xe4\xe3\xe6\x01 \x03(\x0b\x32\x14.google.protobuf.Any\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_codeB\n\n\x08_message\"\xa2\x01\n\x1fStopAsyncReplicationDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xac\x01\n%StopAsyncReplicationRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9a\x02\n$StopGroupAsyncReplicationDiskRequest\x12\x86\x01\n4disks_stop_group_async_replication_resource_resource\x18\x95\xf8\xaf\xa5\x01 \x01(\x0b\x32?.google.cloud.compute.v1.DisksStopGroupAsyncReplicationResourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xa4\x02\n*StopGroupAsyncReplicationRegionDiskRequest\x12\x86\x01\n4disks_stop_group_async_replication_resource_resource\x18\x95\xf8\xaf\xa5\x01 \x01(\x0b\x32?.google.cloud.compute.v1.DisksStopGroupAsyncReplicationResourceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd4\x01\n\x13StopInstanceRequest\x12\"\n\x11\x64iscard_local_ssd\x18\xcf\xe9\xad\x98\x01 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x14\n\x12_discard_local_ssdB\r\n\x0b_request_id\"\xcb\x02\n(StopInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x8b\x01\n7instance_group_managers_stop_instances_request_resource\x18\x8d\xa5\xf4\x11 \x01(\x0b\x32\x42.google.cloud.compute.v1.InstanceGroupManagersStopInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xe3\x02\n.StopInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x99\x01\n>region_instance_group_managers_stop_instances_request_resource\x18\xc2\x9c\xf2\x80\x01 \x01(\x0b\x32H.google.cloud.compute.v1.RegionInstanceGroupManagersStopInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xec\x0c\n\x0bStoragePool\x12*\n\x1a\x63\x61pacity_provisioning_type\x18\x87\x8a\xfdw \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12r\n\x1f\x65xapool_provisioned_capacity_gb\x18\xe0\xe1\xcb\xa4\x01 \x01(\x0b\x32@.google.cloud.compute.v1.StoragePoolExapoolProvisionedCapacityGbH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x06\x88\x01\x01\x12\x44\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x30.google.cloud.compute.v1.StoragePool.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x07\x88\x01\x01\x12\x42\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32*.google.cloud.compute.v1.StoragePoolParamsH\x08\x88\x01\x01\x12.\n\x1dperformance_provisioning_type\x18\xfd\x9d\xb6\xdf\x01 \x01(\tH\t\x88\x01\x01\x12-\n\x1cpool_provisioned_capacity_gb\x18\xd2\xcf\x97\xe4\x01 \x01(\x03H\n\x88\x01\x01\x12%\n\x15pool_provisioned_iops\x18\x97\xc9\xb9\x35 \x01(\x03H\x0b\x88\x01\x01\x12+\n\x1bpool_provisioned_throughput\x18\x98\x8d\xd8P \x01(\x03H\x0c\x88\x01\x01\x12S\n\x0fresource_status\x18\xc3\xfa\xf7v \x01(\x0b\x32\x32.google.cloud.compute.v1.StoragePoolResourceStatusH\r\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0e\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x0f\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x10\x88\x01\x01\x12J\n\x06status\x18\xf2\x9f\xb7V \x01(\x0b\x32\x32.google.cloud.compute.v1.StoragePoolResourceStatusH\x11\x88\x01\x01\x12\"\n\x11storage_pool_type\x18\xb9\x81\xb0\x88\x01 \x01(\tH\x12\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x13\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"D\n\x18\x43\x61pacityProvisioningType\x12(\n$UNDEFINED_CAPACITY_PROVISIONING_TYPE\x10\x00\"J\n\x1bPerformanceProvisioningType\x12+\n\'UNDEFINED_PERFORMANCE_PROVISIONING_TYPE\x10\x00\"^\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B\x1d\n\x1b_capacity_provisioning_typeB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\"\n _exapool_provisioned_capacity_gbB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\t\n\x07_paramsB \n\x1e_performance_provisioning_typeB\x1f\n\x1d_pool_provisioned_capacity_gbB\x18\n\x16_pool_provisioned_iopsB\x1e\n\x1c_pool_provisioned_throughputB\x12\n\x10_resource_statusB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x08\n\x06_stateB\t\n\x07_statusB\x14\n\x12_storage_pool_typeB\x07\n\x05_zone\"\xe1\x03\n\x19StoragePoolAggregatedList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12O\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32=.google.cloud.compute.v1.StoragePoolAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x1a]\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12>\n\x05value\x18\x02 \x01(\x0b\x32/.google.cloud.compute.v1.StoragePoolsScopedList:\x02\x38\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xe0\x04\n\x0fStoragePoolDisk\x12\x1d\n\x12\x61ttached_instances\x18\xa3\xf3\x8e\x1f \x03(\t\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tH\x01\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x02\x88\x01\x01\x12 \n\x10provisioned_iops\x18\xd4\xbd\x87Y \x01(\x03H\x03\x88\x01\x01\x12\'\n\x16provisioned_throughput\x18\x95\xbe\x88\xfb\x01 \x01(\x03H\x04\x88\x01\x01\x12\x1c\n\x11resource_policies\x18\xe1\x9c\xcc\n \x03(\t\x12\x18\n\x07size_gb\x18\xd9\x8b\x80\xec\x01 \x01(\x03H\x05\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\nused_bytes\x18\xe9\x9a\xban \x01(\x03H\x08\x88\x01\x01\"\x88\x01\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%\x12\x11\n\tRESTORING\x10\xab\xa7\xe2\xc0\x01\x12\x13\n\x0bUNAVAILABLE\x10\xb0\xd8\xa5\xc5\x01\x42\x15\n\x13_creation_timestampB\x07\n\x05_diskB\x07\n\x05_nameB\x13\n\x11_provisioned_iopsB\x19\n\x17_provisioned_throughputB\n\n\x08_size_gbB\t\n\x07_statusB\x07\n\x05_typeB\r\n\x0b_used_bytes\"\xce\x01\n\'StoragePoolExapoolProvisionedCapacityGb\x12\"\n\x12\x63\x61pacity_optimized\x18\xe2\xef\xdfw \x01(\x03H\x00\x88\x01\x01\x12\x1f\n\x0eread_optimized\x18\xbe\xb3\xf3\xb9\x01 \x01(\x03H\x01\x88\x01\x01\x12 \n\x0fwrite_optimized\x18\xc7\xa1\xed\xea\x01 \x01(\x03H\x02\x88\x01\x01\x42\x15\n\x13_capacity_optimizedB\x11\n\x0f_read_optimizedB\x12\n\x10_write_optimized\"\xdf\x02\n\x0fStoragePoolList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x36\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32$.google.cloud.compute.v1.StoragePool\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xe8\x02\n\x14StoragePoolListDisks\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.StoragePoolDisk\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb7\x01\n\x11StoragePoolParams\x12\x66\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x43.google.cloud.compute.v1.StoragePoolParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x90\x08\n\x19StoragePoolResourceStatus\x12\x1a\n\ndisk_count\x18\xed\xaf\x9dW \x01(\x03H\x00\x88\x01\x01\x12%\n\x15\x65xapool_max_read_iops\x18\xc2\xea\x9f\x1c \x01(\x03H\x01\x88\x01\x01\x12,\n\x1b\x65xapool_max_read_throughput\x18\x83\xd6\xb4\xba\x01 \x01(\x03H\x02\x88\x01\x01\x12\'\n\x16\x65xapool_max_write_iops\x18\xf9\xa2\xe8\x8b\x01 \x01(\x03H\x03\x88\x01\x01\x12-\n\x1c\x65xapool_max_write_throughput\x18\xfa\x83\xc4\x9d\x01 \x01(\x03H\x04\x88\x01\x01\x12&\n\x15last_resize_timestamp\x18\xd4\xfb\xe7\xee\x01 \x01(\tH\x05\x88\x01\x01\x12\x36\n&max_total_provisioned_disk_capacity_gb\x18\xdf\xde\x88O \x01(\x03H\x06\x88\x01\x01\x12)\n\x18pool_used_capacity_bytes\x18\xc5\xe9\xb0\xf3\x01 \x01(\x03H\x07\x88\x01\x01\x12\x1e\n\x0epool_used_iops\x18\x88\xc9\xbc/ \x01(\x03H\x08\x88\x01\x01\x12$\n\x14pool_used_throughput\x18\xc9\x9b\xa5\x62 \x01(\x03H\t\x88\x01\x01\x12\'\n\x17pool_user_written_bytes\x18\xd2\xed\x96m \x01(\x03H\n\x88\x01\x01\x12\x33\n\"total_provisioned_disk_capacity_gb\x18\xa4\x8d\xb3\xf8\x01 \x01(\x03H\x0b\x88\x01\x01\x12+\n\x1btotal_provisioned_disk_iops\x18\x85\xdc\xd2\x0f \x01(\x03H\x0c\x88\x01\x01\x12\x32\n!total_provisioned_disk_throughput\x18\x86\x8b\xbc\xd5\x01 \x01(\x03H\r\x88\x01\x01\x42\r\n\x0b_disk_countB\x18\n\x16_exapool_max_read_iopsB\x1e\n\x1c_exapool_max_read_throughputB\x19\n\x17_exapool_max_write_iopsB\x1f\n\x1d_exapool_max_write_throughputB\x18\n\x16_last_resize_timestampB)\n\'_max_total_provisioned_disk_capacity_gbB\x1b\n\x19_pool_used_capacity_bytesB\x11\n\x0f_pool_used_iopsB\x17\n\x15_pool_used_throughputB\x1a\n\x18_pool_user_written_bytesB%\n#_total_provisioned_disk_capacity_gbB\x1e\n\x1c_total_provisioned_disk_iopsB$\n\"_total_provisioned_disk_throughput\"\xe7\x07\n\x0fStoragePoolType\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x30\n max_pool_provisioned_capacity_gb\x18\xcd\xf1\xecV \x01(\x03H\x05\x88\x01\x01\x12*\n\x19max_pool_provisioned_iops\x18\xfc\xcf\xd9\xf5\x01 \x01(\x03H\x06\x88\x01\x01\x12/\n\x1fmax_pool_provisioned_throughput\x18\xbd\xd4\x94m \x01(\x03H\x07\x88\x01\x01\x12\x30\n min_pool_provisioned_capacity_gb\x18\x9f\x8d\x8b[ \x01(\x03H\x08\x88\x01\x01\x12*\n\x19min_pool_provisioned_iops\x18\xea\xc4\xcb\xc6\x01 \x01(\x03H\t\x88\x01\x01\x12\x30\n\x1fmin_pool_provisioned_throughput\x18\xab\xb4\xae\xaf\x01 \x01(\x03H\n\x88\x01\x01\x12\x1c\n\x0bmin_size_gb\x18\xec\xc1\xdb\xb7\x01 \x01(\x03H\x0b\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x0c\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\r\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x0e\x88\x01\x01\x12\x1f\n\x14supported_disk_types\x18\x88\x8f\xe7G \x03(\t\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\x0f\x88\x01\x01\x42\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB#\n!_max_pool_provisioned_capacity_gbB\x1c\n\x1a_max_pool_provisioned_iopsB\"\n _max_pool_provisioned_throughputB#\n!_min_pool_provisioned_capacity_gbB\x1c\n\x1a_min_pool_provisioned_iopsB\"\n _min_pool_provisioned_throughputB\x0e\n\x0c_min_size_gbB\x07\n\x05_nameB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x07\n\x05_zone\"\xb5\x03\n\x1dStoragePoolTypeAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12S\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x41.google.cloud.compute.v1.StoragePoolTypeAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.StoragePoolTypesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xaf\x02\n\x13StoragePoolTypeList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.StoragePoolType\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xad\x01\n\x1aStoragePoolTypesScopedList\x12H\n\x12storage_pool_types\x18\xda\xad\xd0\x83\x01 \x03(\x0b\x32(.google.cloud.compute.v1.StoragePoolType\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xa0\x01\n\x16StoragePoolsScopedList\x12?\n\rstorage_pools\x18\x93\x92\xc0\xd0\x01 \x03(\x0b\x32$.google.cloud.compute.v1.StoragePool\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xa1\x16\n\nSubnetwork\x12\x30\n allow_subnet_cidr_routes_overlap\x18\xd1\xce\xad \x01(\x08H\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12 \n\x10\x65nable_flow_logs\x18\xe4\xc4\xa1H \x01(\x08H\x03\x88\x01\x01\x12$\n\x14\x65xternal_ipv6_prefix\x18\xf6\x92\xb6\x42 \x01(\tH\x04\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x05\x88\x01\x01\x12 \n\x0fgateway_address\x18\xf9\x89\xa4\xdb\x01 \x01(\tH\x06\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x07\x88\x01\x01\x12%\n\x14internal_ipv6_prefix\x18\xe8\xa2\xb4\xf1\x01 \x01(\tH\x08\x88\x01\x01\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\t\x88\x01\x01\x12\x1d\n\rip_collection\x18\xb6\x91\xa8T \x01(\tH\n\x88\x01\x01\x12!\n\x10ipv6_access_type\x18\xdd\xf5\xd1\xf0\x01 \x01(\tH\x0b\x88\x01\x01\x12 \n\x0fipv6_cidr_range\x18\x8a\x9c\x9f\x82\x01 \x01(\tH\x0c\x88\x01\x01\x12\"\n\x11ipv6_gce_endpoint\x18\xe3\xca\xe2\x98\x01 \x01(\tH\r\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x0e\x88\x01\x01\x12I\n\nlog_config\x18\x9d\xd1\xc1\xa7\x01 \x01(\x0b\x32,.google.cloud.compute.v1.SubnetworkLogConfigH\x0f\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x10\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x11\x88\x01\x01\x12\x41\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32).google.cloud.compute.v1.SubnetworkParamsH\x12\x88\x01\x01\x12)\n\x18private_ip_google_access\x18\xce\xe8\xfd\xc8\x01 \x01(\x08H\x13\x88\x01\x01\x12*\n\x1aprivate_ipv6_google_access\x18\x8e\xcc\x82\x17 \x01(\tH\x14\x88\x01\x01\x12\x18\n\x07purpose\x18\x9e\xfa\xef\x96\x01 \x01(\tH\x15\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x16\x88\x01\x01\x12(\n\x17reserved_internal_range\x18\xb2\x9e\xbf\x88\x01 \x01(\tH\x17\x88\x01\x01\x12$\n\x13resolve_subnet_mask\x18\xbb\xd9\xed\xf6\x01 \x01(\tH\x18\x88\x01\x01\x12\x14\n\x04role\x18\xf6\x80\xd6\x01 \x01(\tH\x19\x88\x01\x01\x12Q\n\x13secondary_ip_ranges\x18\xe3\xff\x94\x41 \x03(\x0b\x32\x31.google.cloud.compute.v1.SubnetworkSecondaryRange\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x1a\x88\x01\x01\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH\x1b\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x1c\x88\x01\x01\x12/\n$system_reserved_external_ipv6_ranges\x18\xe1\x88\x93\x1f \x03(\t\x12\x30\n$system_reserved_internal_ipv6_ranges\x18\xd3\x98\x91\xce\x01 \x03(\t\x12Z\n\x13utilization_details\x18\xa5\x8a\xe6; \x01(\x0b\x32\x35.google.cloud.compute.v1.SubnetworkUtilizationDetailsH\x1d\x88\x01\x01\"y\n\x0eIpv6AccessType\x12\x1e\n\x1aUNDEFINED_IPV6_ACCESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\x12$\n\x1cUNSPECIFIED_IPV6_ACCESS_TYPE\x10\xa5\xf6\xa4\x95\x01\"T\n\x0fIpv6GceEndpoint\x12\x1f\n\x1bUNDEFINED_IPV6_GCE_ENDPOINT\x10\x00\x12\x10\n\tVM_AND_FR\x10\xdc\x8d\xf9\x13\x12\x0e\n\x07VM_ONLY\x10\xb4\xc0\xf3p\"\xbe\x01\n\x17PrivateIpv6GoogleAccess\x12(\n$UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS\x10\x00\x12\x1d\n\x15\x44ISABLE_GOOGLE_ACCESS\x10\xf3\xa9\x84\xd7\x01\x12-\n%ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE\x10\xba\xca\x89\xcc\x01\x12+\n#ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE\x10\xd7\xfa\xb6\x89\x01\"\xf8\x01\n\x07Purpose\x12\x15\n\x11UNDEFINED_PURPOSE\x10\x00\x12\x1b\n\x14GLOBAL_MANAGED_PROXY\x10\xf2\xcb\xe0p\x12#\n\x1cINTERNAL_HTTPS_LOAD_BALANCER\x10\xd9\xb6\xcev\x12\x16\n\x0ePEER_MIGRATION\x10\x91\xaa\xc7\xea\x01\x12\x0f\n\x07PRIVATE\x10\xe3\xe2\xb2\xc0\x01\x12\x13\n\x0bPRIVATE_NAT\x10\xa5\xc8\xae\xaf\x01\x12\x17\n\x10PRIVATE_RFC_1918\x10\xdb\xfe\xc5y\x12\x1e\n\x17PRIVATE_SERVICE_CONNECT\x10\xc4\xf4\xf9\x16\x12\x1d\n\x16REGIONAL_MANAGED_PROXY\x10\xee\xb6\xfdH\"h\n\x11ResolveSubnetMask\x12!\n\x1dUNDEFINED_RESOLVE_SUBNET_MASK\x10\x00\x12\x16\n\x0e\x41RP_ALL_RANGES\x10\xd4\xd2\xc0\xd4\x01\x12\x18\n\x11\x41RP_PRIMARY_RANGE\x10\x80\x85\xa9\x39\":\n\x04Role\x12\x12\n\x0eUNDEFINED_ROLE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0e\n\x06\x42\x41\x43KUP\x10\xc2\xd3\xcd\xa2\x01\"{\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\x12\x10\n\tIPV6_ONLY\x10\xe4\xad\xfc%\x12\x1e\n\x16UNSPECIFIED_STACK_TYPE\x10\xd9\xd1\x91\x8e\x01\"<\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x10\n\x08\x44RAINING\x10\xea\xd5\x8c\xe5\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B#\n!_allow_subnet_cidr_routes_overlapB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x13\n\x11_enable_flow_logsB\x17\n\x15_external_ipv6_prefixB\x0e\n\x0c_fingerprintB\x12\n\x10_gateway_addressB\x05\n\x03_idB\x17\n\x15_internal_ipv6_prefixB\x10\n\x0e_ip_cidr_rangeB\x10\n\x0e_ip_collectionB\x13\n\x11_ipv6_access_typeB\x12\n\x10_ipv6_cidr_rangeB\x14\n\x12_ipv6_gce_endpointB\x07\n\x05_kindB\r\n\x0b_log_configB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_paramsB\x1b\n\x19_private_ip_google_accessB\x1d\n\x1b_private_ipv6_google_accessB\n\n\x08_purposeB\t\n\x07_regionB\x1a\n\x18_reserved_internal_rangeB\x16\n\x14_resolve_subnet_maskB\x07\n\x05_roleB\x0c\n\n_self_linkB\r\n\x0b_stack_typeB\x08\n\x06_stateB\x16\n\x14_utilization_details\"\xbf\x03\n\x18SubnetworkAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12N\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32<.google.cloud.compute.v1.SubnetworkAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\\\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.SubnetworksScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa5\x02\n\x0eSubnetworkList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x35\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32#.google.cloud.compute.v1.Subnetwork\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xdd\x04\n\x13SubnetworkLogConfig\x12$\n\x14\x61ggregation_interval\x18\x82\x9b\xb4S \x01(\tH\x00\x88\x01\x01\x12\x17\n\x06\x65nable\x18\x83\xcb\xd4\x94\x01 \x01(\x08H\x01\x88\x01\x01\x12\x1b\n\x0b\x66ilter_expr\x18\xdc\xa4\xb8W \x01(\tH\x02\x88\x01\x01\x12\x1e\n\rflow_sampling\x18\xd8\xe7\xe5\xfc\x01 \x01(\x02H\x03\x88\x01\x01\x12\x18\n\x08metadata\x18\xaf\xf6\xb5) \x01(\tH\x04\x88\x01\x01\x12\x1b\n\x0fmetadata_fields\x18\xc9\xbb\xbb\xb4\x01 \x03(\t\"\xc8\x01\n\x13\x41ggregationInterval\x12\"\n\x1eUNDEFINED_AGGREGATION_INTERVAL\x10\x00\x12\x17\n\x0fINTERVAL_10_MIN\x10\xcc\xd1\xa5\xe8\x01\x12\x17\n\x0fINTERVAL_15_MIN\x10\xd1\xbc\xbf\xea\x01\x12\x15\n\x0eINTERVAL_1_MIN\x10\xaa\xd2\xf6 \x12\x16\n\x0fINTERVAL_30_SEC\x10\x89\xe0\xcc\x03\x12\x15\n\x0eINTERVAL_5_MIN\x10\xae\x8e\xd8\"\x12\x15\n\x0eINTERVAL_5_SEC\x10\xad\xba\xd8\"\"u\n\x08Metadata\x12\x16\n\x12UNDEFINED_METADATA\x10\x00\x12\x16\n\x0f\x43USTOM_METADATA\x10\xbd\xd8\xe3\x1d\x12\x1c\n\x14\x45XCLUDE_ALL_METADATA\x10\x92\xbd\xc1\x9f\x01\x12\x1b\n\x14INCLUDE_ALL_METADATA\x10\x84\xcd\xbfNB\x17\n\x15_aggregation_intervalB\t\n\x07_enableB\x0e\n\x0c_filter_exprB\x10\n\x0e_flow_samplingB\x0b\n\t_metadata\"\xb5\x01\n\x10SubnetworkParams\x12\x65\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x42.google.cloud.compute.v1.SubnetworkParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xbd\x01\n\x18SubnetworkSecondaryRange\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nrange_name\x18\xcd\xf0\xb4\x9e\x01 \x01(\tH\x01\x88\x01\x01\x12(\n\x17reserved_internal_range\x18\xb2\x9e\xbf\x88\x01 \x01(\tH\x02\x88\x01\x01\x42\x10\n\x0e_ip_cidr_rangeB\r\n\x0b_range_nameB\x1a\n\x18_reserved_internal_range\"\xc8\x04\n\x1cSubnetworkUtilizationDetails\x12y\n\"external_ipv6_instance_utilization\x18\xdc\xc2\x93\xc8\x01 \x01(\x0b\x32\x44.google.cloud.compute.v1.SubnetworkUtilizationDetailsIPV6UtilizationH\x00\x88\x01\x01\x12r\n\x1c\x65xternal_ipv6_lb_utilization\x18\xbd\x97\x8f\x41 \x01(\x0b\x32\x44.google.cloud.compute.v1.SubnetworkUtilizationDetailsIPV6UtilizationH\x01\x88\x01\x01\x12o\n\x19internal_ipv6_utilization\x18\x8c\xca\x9e! \x01(\x0b\x32\x44.google.cloud.compute.v1.SubnetworkUtilizationDetailsIPV6UtilizationH\x02\x88\x01\x01\x12\x62\n\x11ipv4_utilizations\x18\xab\x9d\xa8\x62 \x03(\x0b\x32\x44.google.cloud.compute.v1.SubnetworkUtilizationDetailsIPV4UtilizationB%\n#_external_ipv6_instance_utilizationB\x1f\n\x1d_external_ipv6_lb_utilizationB\x1c\n\x1a_internal_ipv6_utilization\"\xc6\x01\n+SubnetworkUtilizationDetailsIPV4Utilization\x12\x1b\n\nrange_name\x18\xcd\xf0\xb4\x9e\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12total_allocated_ip\x18\xba\x99\x88\x85\x01 \x01(\x03H\x01\x88\x01\x01\x12\x1d\n\rtotal_free_ip\x18\xdf\xe3\xae\x32 \x01(\x03H\x02\x88\x01\x01\x42\r\n\x0b_range_nameB\x15\n\x13_total_allocated_ipB\x10\n\x0e_total_free_ip\"\xde\x01\n+SubnetworkUtilizationDetailsIPV6Utilization\x12\x45\n\x12total_allocated_ip\x18\xba\x99\x88\x85\x01 \x01(\x0b\x32 .google.cloud.compute.v1.Uint128H\x00\x88\x01\x01\x12?\n\rtotal_free_ip\x18\xdf\xe3\xae\x32 \x01(\x0b\x32 .google.cloud.compute.v1.Uint128H\x01\x88\x01\x01\x42\x15\n\x13_total_allocated_ipB\x10\n\x0e_total_free_ip\"V\n#SubnetworksExpandIpCidrRangeRequest\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x00\x88\x01\x01\x42\x10\n\x0e_ip_cidr_range\"\x9c\x01\n\x15SubnetworksScopedList\x12<\n\x0bsubnetworks\x18\xc5\xd4\xa5\xc6\x01 \x03(\x0b\x32#.google.cloud.compute.v1.Subnetwork\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x8d\x01\n\x18SubnetworksScopedWarning\x12\x1b\n\nscope_name\x18\x96\x93\xe3\xa4\x01 \x01(\tH\x00\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x01\x88\x01\x01\x42\r\n\x0b_scope_nameB\n\n\x08_warning\"t\n*SubnetworksSetPrivateIpGoogleAccessRequest\x12)\n\x18private_ip_google_access\x18\xce\xe8\xfd\xc8\x01 \x01(\x08H\x00\x88\x01\x01\x42\x1b\n\x19_private_ip_google_access\"\x7f\n\nSubsetting\x12\x16\n\x06policy\x18\xb2\xca\xb6+ \x01(\tH\x00\x88\x01\x01\"N\n\x06Policy\x12\x14\n\x10UNDEFINED_POLICY\x10\x00\x12!\n\x1a\x43ONSISTENT_HASH_SUBSETTING\x10\xb4\x98\xfc\x33\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x42\t\n\x07_policy\"\xd7\x01\n\x16SuspendInstanceRequest\x12\"\n\x11\x64iscard_local_ssd\x18\xcf\xe9\xad\x98\x01 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x14\n\x12_discard_local_ssdB\r\n\x0b_request_id\"\xd4\x02\n+SuspendInstancesInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x91\x01\n:instance_group_managers_suspend_instances_request_resource\x18\xd1\x8d\xa1\x16 \x01(\x0b\x32\x45.google.cloud.compute.v1.InstanceGroupManagersSuspendInstancesRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xeb\x02\n1SuspendInstancesRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9e\x01\nAregion_instance_group_managers_suspend_instances_request_resource\x18\xfc\xe5\x94\x66 \x01(\x0b\x32K.google.cloud.compute.v1.RegionInstanceGroupManagersSuspendInstancesRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x89\x01\n SwitchToCustomModeNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xd8\x03\n\x0eTCPHealthCheck\x12\x14\n\x04port\x18\x81\xb1\xd2\x01 \x01(\x05H\x00\x88\x01\x01\x12\x19\n\tport_name\x18\x89\x87\xe7\x13 \x01(\tH\x01\x88\x01\x01\x12\"\n\x12port_specification\x18\xc5\xeb\xcc\x18 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0cproxy_header\x18\xfe\xba\xbcL \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07request\x18\x8f\xe5\xbb\n \x01(\tH\x04\x88\x01\x01\x12\x18\n\x08response\x18\xc1\xa8\xdc] \x01(\tH\x05\x88\x01\x01\"~\n\x11PortSpecification\x12 \n\x1cUNDEFINED_PORT_SPECIFICATION\x10\x00\x12\x15\n\x0eUSE_FIXED_PORT\x10\xe4\x88\xdbZ\x12\x16\n\x0eUSE_NAMED_PORT\x10\xbf\xcf\xc7\xa6\x01\x12\x18\n\x10USE_SERVING_PORT\x10\xcc\xd1\xf5\xac\x01\"H\n\x0bProxyHeader\x12\x1a\n\x16UNDEFINED_PROXY_HEADER\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x10\n\x08PROXY_V1\x10\xac\xa4\xb7\x9f\x01\x42\x07\n\x05_portB\x0c\n\n_port_nameB\x15\n\x13_port_specificationB\x0f\n\r_proxy_headerB\n\n\x08_requestB\x0b\n\t_response\"E\n\x04Tags\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x00\x88\x01\x01\x12\x10\n\x05items\x18\xc0\xcf\xf7/ \x03(\tB\x0e\n\x0c_fingerprint\"\xca\x03\n\x0fTargetGrpcProxy\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x06\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\x07\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tH\x08\x88\x01\x01\x12&\n\x16validate_for_proxyless\x18\xa8\xe3\xc6\x30 \x01(\x08H\t\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\n\n\x08_url_mapB\x19\n\x17_validate_for_proxyless\"\xaf\x02\n\x13TargetGrpcProxyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.TargetGrpcProxy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xae\x01\n\x1bTargetHttpProxiesScopedList\x12H\n\x13target_http_proxies\x18\xc3\xd5\xa8M \x03(\x0b\x32(.google.cloud.compute.v1.TargetHttpProxy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xeb\x03\n\x0fTargetHttpProxy\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x02\x88\x01\x01\x12,\n\x1bhttp_keep_alive_timeout_sec\x18\xde\xce\xa6\xd5\x01 \x01(\x05H\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x1b\n\nproxy_bind\x18\xee\xce\xb1\x88\x01 \x01(\x08H\x07\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tH\n\x88\x01\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x1e\n\x1c_http_keep_alive_timeout_secB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\r\n\x0b_proxy_bindB\t\n\x07_regionB\x0c\n\n_self_linkB\n\n\x08_url_map\"\x88\x03\n\x1dTargetHttpProxyAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12S\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x41.google.cloud.compute.v1.TargetHttpProxyAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x1a\x62\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.google.cloud.compute.v1.TargetHttpProxiesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_link\"\xaf\x02\n\x13TargetHttpProxyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12:\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32(.google.cloud.compute.v1.TargetHttpProxy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb2\x01\n\x1cTargetHttpsProxiesScopedList\x12K\n\x14target_https_proxies\x18\x8a\xfc\xe7\xae\x01 \x03(\x0b\x32).google.cloud.compute.v1.TargetHttpsProxy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"a\n*TargetHttpsProxiesSetCertificateMapRequest\x12\x1f\n\x0f\x63\x65rtificate_map\x18\xb4\xe5\xcdJ \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_certificate_map\"\xb6\x01\n(TargetHttpsProxiesSetQuicOverrideRequest\x12\x1e\n\rquic_override\x18\xad\xa1\xdb\xd9\x01 \x01(\tH\x00\x88\x01\x01\"X\n\x0cQuicOverride\x12\x1b\n\x17UNDEFINED_QUIC_OVERRIDE\x10\x00\x12\x0e\n\x07\x44ISABLE\x10\xc8\xdd\xa6s\x12\x0e\n\x06\x45NABLE\x10\x83\xb3\xa0\xd1\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x42\x10\n\x0e_quic_override\"K\n+TargetHttpsProxiesSetSslCertificatesRequest\x12\x1c\n\x10ssl_certificates\x18\x8f\xa2\xc3\xae\x01 \x03(\t\"\x9d\x08\n\x10TargetHttpsProxy\x12$\n\x14\x61uthorization_policy\x18\xb8\xef\x97\x10 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x0f\x63\x65rtificate_map\x18\xb4\xe5\xcdJ \x01(\tH\x01\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x04\x88\x01\x01\x12,\n\x1bhttp_keep_alive_timeout_sec\x18\xde\xce\xa6\xd5\x01 \x01(\x05H\x05\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x06\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x07\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12\x1b\n\nproxy_bind\x18\xee\xce\xb1\x88\x01 \x01(\x08H\t\x88\x01\x01\x12\x1e\n\rquic_override\x18\xad\xa1\xdb\xd9\x01 \x01(\tH\n\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0b\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\x12\"\n\x11server_tls_policy\x18\xf2\xde\x87\x8d\x01 \x01(\tH\r\x88\x01\x01\x12\x1c\n\x10ssl_certificates\x18\x8f\xa2\xc3\xae\x01 \x03(\t\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tH\x0e\x88\x01\x01\x12\x1e\n\x0etls_early_data\x18\xca\xe1\x91\x1d \x01(\tH\x0f\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tH\x10\x88\x01\x01\"X\n\x0cQuicOverride\x12\x1b\n\x17UNDEFINED_QUIC_OVERRIDE\x10\x00\x12\x0e\n\x07\x44ISABLE\x10\xc8\xdd\xa6s\x12\x0e\n\x06\x45NABLE\x10\x83\xb3\xa0\xd1\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\"x\n\x0cTlsEarlyData\x12\x1c\n\x18UNDEFINED_TLS_EARLY_DATA\x10\x00\x12\x10\n\x08\x44ISABLED\x10\xfc\xd4\xb0\xf6\x01\x12\x12\n\nPERMISSIVE\x10\x9f\xe5\xbe\xf0\x01\x12\x0e\n\x06STRICT\x10\xc9\xa5\xa1\x93\x01\x12\x14\n\x0cUNRESTRICTED\x10\xb4\xa7\x85\xda\x01\x42\x17\n\x15_authorization_policyB\x12\n\x10_certificate_mapB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x1e\n\x1c_http_keep_alive_timeout_secB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\r\n\x0b_proxy_bindB\x10\n\x0e_quic_overrideB\t\n\x07_regionB\x0c\n\n_self_linkB\x14\n\x12_server_tls_policyB\r\n\x0b_ssl_policyB\x11\n\x0f_tls_early_dataB\n\n\x08_url_map\"\xd2\x03\n\x1eTargetHttpsProxyAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12T\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x42.google.cloud.compute.v1.TargetHttpsProxyAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x63\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x44\n\x05value\x18\x02 \x01(\x0b\x32\x35.google.cloud.compute.v1.TargetHttpsProxiesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb1\x02\n\x14TargetHttpsProxyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12;\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32).google.cloud.compute.v1.TargetHttpsProxy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xfc\x03\n\x0eTargetInstance\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\nnat_policy\x18\x90\xc4\x8a\xf3\x01 \x01(\tH\x06\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x07\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tH\n\x88\x01\x01\"4\n\tNatPolicy\x12\x18\n\x14UNDEFINED_NAT_POLICY\x10\x00\x12\r\n\x06NO_NAT\x10\x83\xbb\xfeLB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x0b\n\t_instanceB\x07\n\x05_kindB\x07\n\x05_nameB\r\n\x0b_nat_policyB\n\n\x08_networkB\x12\n\x10_security_policyB\x0c\n\n_self_linkB\x07\n\x05_zone\"\xcb\x03\n\x1cTargetInstanceAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12R\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32@.google.cloud.compute.v1.TargetInstanceAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a`\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x41\n\x05value\x18\x02 \x01(\x0b\x32\x32.google.cloud.compute.v1.TargetInstancesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xad\x02\n\x12TargetInstanceList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.TargetInstance\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa9\x01\n\x19TargetInstancesScopedList\x12\x45\n\x10target_instances\x18\xd0\xd2\xad\xbb\x01 \x03(\x0b\x32\'.google.cloud.compute.v1.TargetInstance\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xa5\x06\n\nTargetPool\x12\x1b\n\x0b\x62\x61\x63kup_pool\x18\xf9\xc8\xf0\x15 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x1e\n\x0e\x66\x61ilover_ratio\x18\xfe\x94\xb4\x65 \x01(\x02H\x03\x88\x01\x01\x12\x19\n\rhealth_checks\x18\xae\xaf\xe6\xd5\x01 \x03(\t\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x14\n\tinstances\x18\xfe\xfc\xef\r \x03(\t\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x1f\n\x0fsecurity_policy\x18\x91\x86\xcaQ \x01(\tH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12!\n\x10session_affinity\x18\xb1\xc1\x99\xdd\x01 \x01(\tH\n\x88\x01\x01\"\x8b\x02\n\x0fSessionAffinity\x12\x1e\n\x1aUNDEFINED_SESSION_AFFINITY\x10\x00\x12\x11\n\tCLIENT_IP\x10\x9b\xdc\xe9\xa4\x01\x12\x1f\n\x18\x43LIENT_IP_NO_DESTINATION\x10\x94\x9a\xcd\x32\x12\x1b\n\x14\x43LIENT_IP_PORT_PROTO\x10\xae\xf2\xdci\x12\x16\n\x0f\x43LIENT_IP_PROTO\x10\xa4\xc5\x89\x0c\x12\x18\n\x10GENERATED_COOKIE\x10\xb4\xce\xca\xb0\x01\x12\x13\n\x0cHEADER_FIELD\x10\xa8\x89\xdc_\x12\x13\n\x0bHTTP_COOKIE\x10\xfb\xa3\x83\xec\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x1e\n\x16STRONG_COOKIE_AFFINITY\x10\xfb\xdd\x93\xd1\x01\x42\x0e\n\x0c_backup_poolB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x11\n\x0f_failover_ratioB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x12\n\x10_security_policyB\x0c\n\n_self_linkB\x13\n\x11_session_affinity\"\xbf\x03\n\x18TargetPoolAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12N\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32<.google.cloud.compute.v1.TargetPoolAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\\\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.TargetPoolsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"{\n\x18TargetPoolInstanceHealth\x12@\n\rhealth_status\x18\xb5\xd6\xba\xb5\x01 \x03(\x0b\x32%.google.cloud.compute.v1.HealthStatus\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x00\x88\x01\x01\x42\x07\n\x05_kind\"\xa5\x02\n\x0eTargetPoolList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x35\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32#.google.cloud.compute.v1.TargetPool\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"l\n TargetPoolsAddHealthCheckRequest\x12H\n\rhealth_checks\x18\xae\xaf\xe6\xd5\x01 \x03(\x0b\x32-.google.cloud.compute.v1.HealthCheckReference\"a\n\x1dTargetPoolsAddInstanceRequest\x12@\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32*.google.cloud.compute.v1.InstanceReference\"o\n#TargetPoolsRemoveHealthCheckRequest\x12H\n\rhealth_checks\x18\xae\xaf\xe6\xd5\x01 \x03(\x0b\x32-.google.cloud.compute.v1.HealthCheckReference\"d\n TargetPoolsRemoveInstanceRequest\x12@\n\tinstances\x18\xfe\xfc\xef\r \x03(\x0b\x32*.google.cloud.compute.v1.InstanceReference\"\x9d\x01\n\x15TargetPoolsScopedList\x12=\n\x0ctarget_pools\x18\xa9\x9f\xa0\xa0\x01 \x03(\x0b\x32#.google.cloud.compute.v1.TargetPool\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"4\n\x0fTargetReference\x12\x16\n\x06target\x18\x91\xe3\xf9[ \x01(\tH\x00\x88\x01\x01\x42\t\n\x07_target\"P\n(TargetSslProxiesSetBackendServiceRequest\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_service\"_\n(TargetSslProxiesSetCertificateMapRequest\x12\x1f\n\x0f\x63\x65rtificate_map\x18\xb4\xe5\xcdJ \x01(\tH\x00\x88\x01\x01\x42\x12\n\x10_certificate_map\"\xa0\x01\n%TargetSslProxiesSetProxyHeaderRequest\x12\x1c\n\x0cproxy_header\x18\xfe\xba\xbcL \x01(\tH\x00\x88\x01\x01\"H\n\x0bProxyHeader\x12\x1a\n\x16UNDEFINED_PROXY_HEADER\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x10\n\x08PROXY_V1\x10\xac\xa4\xb7\x9f\x01\x42\x0f\n\r_proxy_header\"I\n)TargetSslProxiesSetSslCertificatesRequest\x12\x1c\n\x10ssl_certificates\x18\x8f\xa2\xc3\xae\x01 \x03(\t\"\x98\x04\n\x0eTargetSslProxy\x12\x1f\n\x0f\x63\x65rtificate_map\x18\xb4\xe5\xcdJ \x01(\tH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x1c\n\x0cproxy_header\x18\xfe\xba\xbcL \x01(\tH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x08\x88\x01\x01\x12\x1c\n\x10ssl_certificates\x18\x8f\xa2\xc3\xae\x01 \x03(\t\x12\x1b\n\nssl_policy\x18\xc5\xfd\xe0\x8c\x01 \x01(\tH\t\x88\x01\x01\"H\n\x0bProxyHeader\x12\x1a\n\x16UNDEFINED_PROXY_HEADER\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x10\n\x08PROXY_V1\x10\xac\xa4\xb7\x9f\x01\x42\x12\n\x10_certificate_mapB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x0f\n\r_proxy_headerB\x0c\n\n_self_linkB\n\n\x08_serviceB\r\n\x0b_ssl_policy\"\xad\x02\n\x12TargetSslProxyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.TargetSslProxy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xab\x01\n\x1aTargetTcpProxiesScopedList\x12\x46\n\x12target_tcp_proxies\x18\x80\xd7\xfa| \x03(\x0b\x32\'.google.cloud.compute.v1.TargetTcpProxy\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"P\n(TargetTcpProxiesSetBackendServiceRequest\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_service\"\xa0\x01\n%TargetTcpProxiesSetProxyHeaderRequest\x12\x1c\n\x0cproxy_header\x18\xfe\xba\xbcL \x01(\tH\x00\x88\x01\x01\"H\n\x0bProxyHeader\x12\x1a\n\x16UNDEFINED_PROXY_HEADER\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x10\n\x08PROXY_V1\x10\xac\xa4\xb7\x9f\x01\x42\x0f\n\r_proxy_header\"\xe8\x03\n\x0eTargetTcpProxy\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x04\x88\x01\x01\x12\x1b\n\nproxy_bind\x18\xee\xce\xb1\x88\x01 \x01(\x08H\x05\x88\x01\x01\x12\x1c\n\x0cproxy_header\x18\xfe\xba\xbcL \x01(\tH\x06\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\t\x88\x01\x01\"H\n\x0bProxyHeader\x12\x1a\n\x16UNDEFINED_PROXY_HEADER\x10\x00\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x12\x10\n\x08PROXY_V1\x10\xac\xa4\xb7\x9f\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\r\n\x0b_proxy_bindB\x0f\n\r_proxy_headerB\t\n\x07_regionB\x0c\n\n_self_linkB\n\n\x08_service\"\xcc\x03\n\x1cTargetTcpProxyAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12R\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32@.google.cloud.compute.v1.TargetTcpProxyAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x61\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x42\n\x05value\x18\x02 \x01(\x0b\x32\x33.google.cloud.compute.v1.TargetTcpProxiesScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xad\x02\n\x12TargetTcpProxyList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x39\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\'.google.cloud.compute.v1.TargetTcpProxy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x82\x06\n\x10TargetVpnGateway\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x10\x66orwarding_rules\x18\xb5\x9a\xcc\x96\x01 \x03(\t\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x02\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x03\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x04\x88\x01\x01\x12I\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x35.google.cloud.compute.v1.TargetVpnGateway.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x06\x88\x01\x01\x12G\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32/.google.cloud.compute.v1.TargetVpnGatewayParamsH\x07\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x08\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\t\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\n\x88\x01\x01\x12\x12\n\x07tunnels\x18\x8b\xfa\xed\x31 \x03(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"`\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x10\n\x08\x43REATING\x10\xb9\xbd\x9d\xd9\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x0c\n\x05READY\x10\x83\xc3\x8f%B\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_paramsB\t\n\x07_regionB\x0c\n\n_self_linkB\t\n\x07_status\"\xd1\x03\n\x1eTargetVpnGatewayAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12T\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x42.google.cloud.compute.v1.TargetVpnGatewayAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\x62\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x43\n\x05value\x18\x02 \x01(\x0b\x32\x34.google.cloud.compute.v1.TargetVpnGatewaysScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb1\x02\n\x14TargetVpnGatewayList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12;\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32).google.cloud.compute.v1.TargetVpnGateway\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xc1\x01\n\x16TargetVpnGatewayParams\x12k\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32H.google.cloud.compute.v1.TargetVpnGatewayParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xb0\x01\n\x1bTargetVpnGatewaysScopedList\x12J\n\x13target_vpn_gateways\x18\x88\x93\xca\xbf\x01 \x03(\x0b\x32).google.cloud.compute.v1.TargetVpnGateway\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x93\x04\n\x0bTestFailure\x12\"\n\x11\x61\x63tual_output_url\x18\x82\xd9\xf1\x88\x01 \x01(\tH\x00\x88\x01\x01\x12-\n\x1d\x61\x63tual_redirect_response_code\x18\xd9\x83\xbc\x14 \x01(\x05H\x01\x88\x01\x01\x12\x1f\n\x0e\x61\x63tual_service\x18\x84\xd2\xfe\xd1\x01 \x01(\tH\x02\x88\x01\x01\x12$\n\x13\x65xpected_output_url\x18\x98\xa2\xf7\xce\x01 \x01(\tH\x03\x88\x01\x01\x12/\n\x1f\x65xpected_redirect_response_code\x18\xef\xea\x80\t \x01(\x05H\x04\x88\x01\x01\x12 \n\x10\x65xpected_service\x18\xae\xf8\xf1? \x01(\tH\x05\x88\x01\x01\x12=\n\x07headers\x18\x86\xdf\x9d{ \x03(\x0b\x32).google.cloud.compute.v1.UrlMapTestHeader\x12\x14\n\x04host\x18\xa8\xeb\xc3\x01 \x01(\tH\x06\x88\x01\x01\x12\x14\n\x04path\x18\xa5\xc8\xd1\x01 \x01(\tH\x07\x88\x01\x01\x42\x14\n\x12_actual_output_urlB \n\x1e_actual_redirect_response_codeB\x11\n\x0f_actual_serviceB\x16\n\x14_expected_output_urlB\"\n _expected_redirect_response_codeB\x13\n\x11_expected_serviceB\x07\n\x05_hostB\x07\n\x05_path\"\xd2\x01\n TestIamPermissionsAddressRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd3\x01\n#TestIamPermissionsAutoscalerRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xc0\x01\n&TestIamPermissionsBackendBucketRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xc1\x01\n\'TestIamPermissionsBackendServiceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xcd\x01\n\x1dTestIamPermissionsDiskRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xc5\x01\n+TestIamPermissionsExternalVpnGatewayRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xa8\x01\n\'TestIamPermissionsFirewallPolicyRequest\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xbb\x01\n!TestIamPermissionsFirewallRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xc0\x01\n&TestIamPermissionsGlobalAddressRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xbe\x01\n$TestIamPermissionsHealthCheckRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xb8\x01\n\x1eTestIamPermissionsImageRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd6\x01\n&TestIamPermissionsInstanceGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd1\x01\n!TestIamPermissionsInstanceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xc3\x01\n)TestIamPermissionsInstanceTemplateRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdd\x01\n-TestIamPermissionsInstantSnapshotGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd8\x01\n(TestIamPermissionsInstantSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xce\x01\n4TestIamPermissionsInterconnectAttachmentGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xc4\x01\n*TestIamPermissionsInterconnectGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xbe\x01\n$TestIamPermissionsLicenseCodeRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xba\x01\n TestIamPermissionsLicenseRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xbf\x01\n%TestIamPermissionsMachineImageRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdc\x01\n*TestIamPermissionsNetworkAttachmentRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdd\x01\n-TestIamPermissionsNetworkEndpointGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xc8\x01\n.TestIamPermissionsNetworkFirewallPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd2\x01\n\"TestIamPermissionsNodeGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd7\x01\n%TestIamPermissionsNodeTemplateRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xda\x01\n(TestIamPermissionsPacketMirroringRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdb\x01\n)TestIamPermissionsRegionAutoscalerRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xde\x01\n,TestIamPermissionsRegionBackendBucketRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdf\x01\n-TestIamPermissionsRegionBackendServiceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe5\x01\n3TestIamPermissionsRegionCompositeHealthCheckRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd5\x01\n#TestIamPermissionsRegionDiskRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe8\x01\n6TestIamPermissionsRegionHealthAggregationPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdc\x01\n*TestIamPermissionsRegionHealthCheckRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe3\x01\n1TestIamPermissionsRegionHealthCheckServiceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdd\x01\n+TestIamPermissionsRegionHealthSourceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xde\x01\n,TestIamPermissionsRegionInstanceGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe5\x01\n3TestIamPermissionsRegionInstantSnapshotGroupRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe0\x01\n.TestIamPermissionsRegionInstantSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe6\x01\n4TestIamPermissionsRegionNetworkFirewallPolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xe5\x01\n3TestIamPermissionsRegionNotificationEndpointRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd9\x01\n\'TestIamPermissionsRegionSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xfa\x01\n)TestIamPermissionsReservationBlockRequest\x12\x1f\n\x0fparent_resource\x18\x83\x98\xd0\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd4\x01\n$TestIamPermissionsReservationRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xfd\x01\n,TestIamPermissionsReservationSubBlockRequest\x12\x1f\n\x0fparent_resource\x18\x83\x98\xd0\x08 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd9\x01\n\'TestIamPermissionsResourcePolicyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xb8\x01\n\x1eTestIamPermissionsRouteRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xdc\x01\n*TestIamPermissionsServiceAttachmentRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xbb\x01\n!TestIamPermissionsSnapshotRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd4\x01\n$TestIamPermissionsStoragePoolRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd5\x01\n#TestIamPermissionsSubnetworkRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd7\x01\n\'TestIamPermissionsTargetInstanceRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xd5\x01\n#TestIamPermissionsTargetPoolRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xc1\x01\n\'TestIamPermissionsTargetSslProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xc1\x01\n\'TestIamPermissionsTargetTcpProxyRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xb9\x01\n\x1fTestIamPermissionsUrlMapRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"\xd5\x01\n#TestIamPermissionsVpnGatewayRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x08resource\x18\x8e\x88\xaf] \x01(\tB\x03\xe0\x41\x02\x12\x63\n!test_permissions_request_resource\x18\xa6\xc5\xb7\xd1\x01 \x01(\x0b\x32/.google.cloud.compute.v1.TestPermissionsRequestB\x03\xe0\x41\x02\"0\n\x16TestPermissionsRequest\x12\x16\n\x0bpermissions\x18\x84\xe9\xcb\x1c \x03(\t\"1\n\x17TestPermissionsResponse\x12\x16\n\x0bpermissions\x18\x84\xe9\xcb\x1c \x03(\t\"D\n\x07Uint128\x12\x14\n\x04high\x18\xa2\xbb\xc3\x01 \x01(\x04H\x00\x88\x01\x01\x12\x12\n\x03low\x18\xd4\xc6\x06 \x01(\x04H\x01\x88\x01\x01\x42\x07\n\x05_highB\x06\n\x04_low\"\xd3\t\n\x13UpcomingMaintenance\x12\x1e\n\x0e\x63\x61n_reschedule\x18\x99\xa3\xe2- \x01(\x08H\x00\x88\x01\x01\x12(\n\x18latest_window_start_time\x18\x81\xbb\x86= \x01(\tH\x01\x88\x01\x01\x12\'\n\x17maintenance_on_shutdown\x18\x8a\xc3\x96n \x01(\x08H\x02\x88\x01\x01\x12\x1e\n\x13maintenance_reasons\x18\x83\x9b\xf2\x42 \x03(\t\x12\"\n\x12maintenance_status\x18\x9e\x9d\xf7& \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x04\x88\x01\x01\x12 \n\x0fwindow_end_time\x18\xa0\xae\xce\x81\x01 \x01(\tH\x05\x88\x01\x01\x12\"\n\x11window_start_time\x18\xb9\xb0\xc9\xe1\x01 \x01(\tH\x06\x88\x01\x01\"\xbd\x04\n\x12MaintenanceReasons\x12!\n\x1dUNDEFINED_MAINTENANCE_REASONS\x10\x00\x12\x13\n\x0c\x46\x41ILURE_DISK\x10\xd2\xa6\x8b\x04\x12\x13\n\x0b\x46\x41ILURE_GPU\x10\xb7\xf8\x8c\xdf\x01\x12:\n3FAILURE_GPU_MULTIPLE_FAULTY_HOSTS_CUSTOMER_REPORTED\x10\xdf\x9d\xbcj\x12\x32\n+FAILURE_GPU_NVLINK_SWITCH_CUSTOMER_REPORTED\x10\x9e\xef\x98*\x12\x1e\n\x17\x46\x41ILURE_GPU_TEMPERATURE\x10\xcc\xb2\xf1\x0b\x12\x16\n\x0f\x46\x41ILURE_GPU_XID\x10\xeb\x96\xe3\x18\x12\x15\n\rFAILURE_INFRA\x10\x9b\xc5\x80\x81\x01\x12\x19\n\x11\x46\x41ILURE_INTERFACE\x10\x84\xf1\xff\xb9\x01\x12\x16\n\x0e\x46\x41ILURE_MEMORY\x10\xf6\xca\xef\xd1\x01\x12\x16\n\x0f\x46\x41ILURE_NETWORK\x10\xb9\x80\xb5\x14\x12\x16\n\x0e\x46\x41ILURE_NVLINK\x10\xb7\x84\xff\xe6\x01\x12\'\n FAILURE_REDUNDANT_HARDWARE_FAULT\x10\xd2\x8f\xe4\x0e\x12\x13\n\x0b\x46\x41ILURE_TPU\x10\x84\xda\x8d\xdf\x01\x12!\n\x19INFRASTRUCTURE_RELOCATION\x10\x84\x9e\xcb\xab\x01\x12!\n\x1aMAINTENANCE_REASON_UNKNOWN\x10\xfb\xc7\x8e\x18\x12\x1d\n\x16PLANNED_NETWORK_UPDATE\x10\x95\xf8\xcd@\x12\x15\n\x0ePLANNED_UPDATE\x10\xc4\xb7\x8fM\"g\n\x11MaintenanceStatus\x12 \n\x1cUNDEFINED_MAINTENANCE_STATUS\x10\x00\x12\x0f\n\x07ONGOING\x10\xdb\xa6\xcf\xe1\x01\x12\x0e\n\x07PENDING\x10\xf7\xaa\xf0\x10\x12\x0f\n\x07UNKNOWN\x10\xaa\xf0\xc4\xce\x01\"j\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x10\n\x08MULTIPLE\x10\x90\xac\xfa\xac\x01\x12\x11\n\tSCHEDULED\x10\x8d\xa1\x8f\xe4\x01\x12\x14\n\x0cUNKNOWN_TYPE\x10\xaf\xa4\xfe\xe9\x01\x12\x13\n\x0bUNSCHEDULED\x10\x94\xc4\xce\xd6\x01\x42\x11\n\x0f_can_rescheduleB\x1b\n\x19_latest_window_start_timeB\x1a\n\x18_maintenance_on_shutdownB\x15\n\x13_maintenance_statusB\x07\n\x05_typeB\x12\n\x10_window_end_timeB\x14\n\x12_window_start_time\"\x9c\x02\n!UpdateAccessConfigInstanceRequest\x12N\n\x16\x61\x63\x63\x65ss_config_resource\x18\x90\xff\xf6\xb8\x01 \x01(\x0b\x32%.google.cloud.compute.v1.AccessConfigB\x03\xe0\x41\x02\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11network_interface\x18\xe8\xc0\x9d\xae\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xfa\x01\n\x17UpdateAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tH\x00\x88\x01\x01\x12H\n\x13\x61utoscaler_resource\x18\xf6\xf0\xff\x62 \x01(\x0b\x32#.google.cloud.compute.v1.AutoscalerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_autoscalerB\r\n\x0b_request_id\"\xdc\x01\n\x1aUpdateBackendBucketRequest\x12\x1e\n\x0e\x62\x61\x63kend_bucket\x18\xf5\xe3\xdd+ \x01(\tB\x03\xe0\x41\x02\x12P\n\x17\x62\x61\x63kend_bucket_resource\x18\x98\xce\xc7\xb5\x01 \x01(\x0b\x32&.google.cloud.compute.v1.BackendBucketB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe1\x01\n\x1bUpdateBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x62\x61\x63kend_service_resource\x18\xa3\x81\xdf\xa5\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.BackendServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xa1\x02\n\x11UpdateDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12<\n\rdisk_resource\x18\xf0\xd0\xab\x0c \x01(\x0b\x32\x1d.google.cloud.compute.v1.DiskB\x03\xe0\x41\x02\x12\x15\n\x05paths\x18\xee\xc1\xe0\x32 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x08\n\x06_pathsB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xfb\x01\n\"UpdateDisplayDeviceInstanceRequest\x12P\n\x17\x64isplay_device_resource\x18\xda\x84\x91\x8a\x01 \x01(\x0b\x32&.google.cloud.compute.v1.DisplayDeviceB\x03\xe0\x41\x02\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xc6\x01\n\x15UpdateFirewallRequest\x12\x19\n\x08\x66irewall\x18\x80\xfa\xd5\xf3\x01 \x01(\tB\x03\xe0\x41\x02\x12\x44\n\x11\x66irewall_resource\x18\xed\xb0\xe0\x13 \x01(\x0b\x32!.google.cloud.compute.v1.FirewallB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xb7\x02\n\x1eUpdateFutureReservationRequest\x12\"\n\x12\x66uture_reservation\x18\xd0\xc6\xe6\x1a \x01(\tB\x03\xe0\x41\x02\x12X\n\x1b\x66uture_reservation_resource\x18\x9d\x98\xc8\xde\x01 \x01(\x0b\x32*.google.cloud.compute.v1.FutureReservationB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xd4\x01\n\x18UpdateHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12K\n\x15health_check_resource\x18\xa8\xc3\xa4` \x01(\x0b\x32$.google.cloud.compute.v1.HealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x9f\x04\n\x15UpdateInstanceRequest\x12\"\n\x11\x64iscard_local_ssd\x18\xcf\xe9\xad\x98\x01 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\x44\n\x11instance_resource\x18\xf8\xf0\xfe\x66 \x01(\x0b\x32!.google.cloud.compute.v1.InstanceB\x03\xe0\x41\x02\x12\x1f\n\x0eminimal_action\x18\x94\x8d\x82\x81\x01 \x01(\tH\x01\x88\x01\x01\x12.\n\x1emost_disruptive_allowed_action\x18\x8d\xce\xc2\x1f \x01(\tH\x02\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zone\"-\n\rMinimalAction\x12\x1c\n\x18UNDEFINED_MINIMAL_ACTION\x10\x00\"K\n\x1bMostDisruptiveAllowedAction\x12,\n(UNDEFINED_MOST_DISRUPTIVE_ALLOWED_ACTION\x10\x00\x42\x14\n\x12_discard_local_ssdB\x11\n\x0f_minimal_actionB!\n\x1f_most_disruptive_allowed_actionB\r\n\x0b_request_id\"\x82\x02\n\x17UpdateKmsKeyDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12\x66\n$disk_update_kms_key_request_resource\x18\xe0\xeb\xf1T \x01(\x0b\x32\x30.google.cloud.compute.v1.DiskUpdateKmsKeyRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x99\x02\n\x1dUpdateKmsKeyRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12s\n+region_disk_update_kms_key_request_resource\x18\xcb\xa8\xe3\x04 \x01(\x0b\x32\x36.google.cloud.compute.v1.RegionDiskUpdateKmsKeyRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xab\x02\n!UpdateKmsKeyRegionSnapshotRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12|\n/region_snapshot_update_kms_key_request_resource\x18\xf2\xa5\x9c\x85\x01 \x01(\x0b\x32:.google.cloud.compute.v1.RegionSnapshotUpdateKmsKeyRequestB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x08snapshot\x18\xc4\xab\xeb\x87\x01 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf6\x01\n\x1bUpdateKmsKeySnapshotRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x08snapshot\x18\xc4\xab\xeb\x87\x01 \x01(\tB\x03\xe0\x41\x02\x12n\n(snapshot_update_kms_key_request_resource\x18\x87\xc4\x97\x31 \x01(\x0b\x32\x34.google.cloud.compute.v1.SnapshotUpdateKmsKeyRequestB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xf0\x01\n\x14UpdateLicenseRequest\x12\x17\n\x07license\x18\xc1\x88\xc2O \x01(\tB\x03\xe0\x41\x02\x12\x43\n\x10license_resource\x18\xcc\xd4\xea\xd0\x01 \x01(\x0b\x32 .google.cloud.compute.v1.LicenseB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xa8\x02\n%UpdateNetworkInterfaceInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12\"\n\x11network_interface\x18\xe8\xc0\x9d\xae\x01 \x01(\tB\x03\xe0\x41\x02\x12V\n\x1anetwork_interface_resource\x18\x85\x94\xae\x9b\x01 \x01(\x0b\x32).google.cloud.compute.v1.NetworkInterfaceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf5\x01\n\x1bUpdatePeeringNetworkRequest\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tB\x03\xe0\x41\x02\x12o\n(networks_update_peering_request_resource\x18\xd9\xaa\x82k \x01(\x0b\x32\x35.google.cloud.compute.v1.NetworksUpdatePeeringRequestB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe6\x02\n3UpdatePerInstanceConfigsInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12\x9b\x01\n@instance_group_managers_update_per_instance_configs_req_resource\x18\xbe\xc1\xb6\x43 \x01(\x0b\x32I.google.cloud.compute.v1.InstanceGroupManagersUpdatePerInstanceConfigsReqB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf2\x02\n9UpdatePerInstanceConfigsRegionInstanceGroupManagerRequest\x12&\n\x16instance_group_manager\x18\xc3\xf7\xf3v \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x9d\x01\nAregion_instance_group_manager_update_instance_config_req_resource\x18\xa7\xae\xba* \x01(\x0b\x32J.google.cloud.compute.v1.RegionInstanceGroupManagerUpdateInstanceConfigReqB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe0\x01\n\x1bUpdatePreviewFeatureRequest\x12 \n\x0fpreview_feature\x18\xff\xfa\xfa\xd8\x01 \x01(\tB\x03\xe0\x41\x02\x12Q\n\x18preview_feature_resource\x18\xce\xed\x97\x05 \x01(\x0b\x32\'.google.cloud.compute.v1.PreviewFeatureB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x84\x02\n\x1dUpdateRegionAutoscalerRequest\x12\x1b\n\nautoscaler\x18\xd7\xfd\xd2\xf6\x01 \x01(\tH\x00\x88\x01\x01\x12H\n\x13\x61utoscaler_resource\x18\xf6\xf0\xff\x62 \x01(\x0b\x32#.google.cloud.compute.v1.AutoscalerB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_autoscalerB\r\n\x0b_request_id\"\x88\x02\n!UpdateRegionBackendServiceRequest\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tB\x03\xe0\x41\x02\x12R\n\x18\x62\x61\x63kend_service_resource\x18\xa3\x81\xdf\xa5\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.BackendServiceB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xc4\x02\n\x1dUpdateRegionCommitmentRequest\x12\x1b\n\ncommitment\x18\x95\x96\xf3\xe5\x01 \x01(\tB\x03\xe0\x41\x02\x12H\n\x13\x63ommitment_resource\x18\xf8\xa3\xbbt \x01(\x0b\x32#.google.cloud.compute.v1.CommitmentB\x03\xe0\x41\x02\x12\x15\n\x05paths\x18\xee\xc1\xe0\x32 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x02\x88\x01\x01\x42\x08\n\x06_pathsB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xab\x02\n\x17UpdateRegionDiskRequest\x12\x14\n\x04\x64isk\x18\x9d\x9b\xbc\x01 \x01(\tB\x03\xe0\x41\x02\x12<\n\rdisk_resource\x18\xf0\xd0\xab\x0c \x01(\x0b\x32\x1d.google.cloud.compute.v1.DiskB\x03\xe0\x41\x02\x12\x15\n\x05paths\x18\xee\xc1\xe0\x32 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x02\x88\x01\x01\x42\x08\n\x06_pathsB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xfb\x01\n\x1eUpdateRegionHealthCheckRequest\x12\x1d\n\x0chealth_check\x18\xe5\xaa\xa4\x93\x01 \x01(\tB\x03\xe0\x41\x02\x12K\n\x15health_check_resource\x18\xa8\xc3\xa4` \x01(\x0b\x32$.google.cloud.compute.v1.HealthCheckB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xe7\x01\n\x19UpdateRegionUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x12\x41\n\x10url_map_resource\x18\xe1\x90\xb7P \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xbe\x02\n\x18UpdateReservationRequest\x12\x15\n\x05paths\x18\xee\xc1\xe0\x32 \x01(\tH\x00\x88\x01\x01\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x0breservation\x18\xcc\x87\xd5\x16 \x01(\tB\x03\xe0\x41\x02\x12K\n\x14reservation_resource\x18\xa1\xee\xf4\x87\x01 \x01(\x0b\x32$.google.cloud.compute.v1.ReservationB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x08\n\x06_pathsB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xa3\x02\n\x1cUpdateReservationSlotRequest\x12\x1c\n\x0bparent_name\x18\x80\x8a\x80\xe4\x01 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12!\n\x10reservation_slot\x18\x91\xbd\xa7\x84\x01 \x01(\tB\x03\xe0\x41\x02\x12T\n\x19reservation_slot_resource\x18\xfc\xd3\xe7\xc2\x01 \x01(\x0b\x32(.google.cloud.compute.v1.ReservationSlotB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\x0e\n\x0c_update_mask\"\xf4\x01\n\x1eUpdateRoutePolicyRouterRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12K\n\x15route_policy_resource\x18\x85\xbd\xb5\x37 \x01(\x0b\x32$.google.cloud.compute.v1.RoutePolicyB\x03\xe0\x41\x02\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\xde\x01\n\x13UpdateRouterRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tB\x03\xe0\x41\x02\x12@\n\x0frouter_resource\x18\xc4\x80\x82J \x01(\x0b\x32\x1f.google.cloud.compute.v1.RouterB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x97\x02\n+UpdateShieldedInstanceConfigInstanceRequest\x12\x18\n\x08instance\x18\x95\xa9\xda\x08 \x01(\tB\x03\xe0\x41\x02\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x63\n!shielded_instance_config_resource\x18\xd8\x96\xdd\x81\x01 \x01(\x0b\x32/.google.cloud.compute.v1.ShieldedInstanceConfigB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\x9f\x02\n\x18UpdateStoragePoolRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x0cstorage_pool\x18\xe0\xc6\xf1\xab\x01 \x01(\tB\x03\xe0\x41\x02\x12K\n\x15storage_pool_resource\x18\x8d\xbc\xf9J \x01(\x0b\x32$.google.cloud.compute.v1.StoragePoolB\x03\xe0\x41\x02\x12\x1c\n\x0bupdate_mask\x18\xa2\xb9\xba\xee\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_idB\x0e\n\x0c_update_mask\"\xc0\x01\n\x13UpdateUrlMapRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x12\x41\n\x10url_map_resource\x18\xe1\x90\xb7P \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapB\x03\xe0\x41\x02\x42\r\n\x0b_request_id\"\x90\x02\n\"UpdateZoneVmExtensionPolicyRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x12$\n\x13vm_extension_policy\x18\xba\x93\x8b\x9e\x01 \x01(\tB\x03\xe0\x41\x02\x12Y\n\x1cvm_extension_policy_resource\x18\xf3\xf9\xf1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.VmExtensionPolicyB\x03\xe0\x41\x02\x12\x1b\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\n\xe0\x41\x02\xf2G\x04zoneB\r\n\x0b_request_id\"\xf2\x07\n\x06UrlMap\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12h\n$default_custom_error_response_policy\x18\xa9\x8b\xe0& \x01(\x0b\x32\x32.google.cloud.compute.v1.CustomErrorResponsePolicyH\x01\x88\x01\x01\x12O\n\x14\x64\x65\x66\x61ult_route_action\x18\xaa\xb4\xd7\xb4\x01 \x01(\x0b\x32(.google.cloud.compute.v1.HttpRouteActionH\x02\x88\x01\x01\x12 \n\x0f\x64\x65\x66\x61ult_service\x18\xb7\xe5\xc5\xb0\x01 \x01(\tH\x03\x88\x01\x01\x12R\n\x14\x64\x65\x66\x61ult_url_redirect\x18\xea\xab\xb6\xab\x01 \x01(\x0b\x32+.google.cloud.compute.v1.HttpRedirectActionH\x04\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x05\x88\x01\x01\x12\x1b\n\x0b\x66ingerprint\x18\xe4\xd1\xf3o \x01(\tH\x06\x88\x01\x01\x12I\n\rheader_action\x18\xa8\xa0\xb8\x9c\x01 \x01(\x0b\x32).google.cloud.compute.v1.HttpHeaderActionH\x07\x88\x01\x01\x12\x39\n\nhost_rules\x18\xa0\x87\xd7\x94\x01 \x03(\x0b\x32!.google.cloud.compute.v1.HostRule\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x08\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\t\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\n\x88\x01\x01\x12?\n\rpath_matchers\x18\xdb\x88\xc5\x81\x01 \x03(\x0b\x32$.google.cloud.compute.v1.PathMatcher\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0b\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x0c\x88\x01\x01\x12\x35\n\x05tests\x18\xa1\x9c\xc9\x34 \x03(\x0b\x32#.google.cloud.compute.v1.UrlMapTestB\x15\n\x13_creation_timestampB\'\n%_default_custom_error_response_policyB\x17\n\x15_default_route_actionB\x12\n\x10_default_serviceB\x17\n\x15_default_url_redirectB\x0e\n\x0c_descriptionB\x0e\n\x0c_fingerprintB\x10\n\x0e_header_actionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x0c\n\n_self_link\"\x9d\x02\n\nUrlMapList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x31\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1f.google.cloud.compute.v1.UrlMap\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"7\n\x0fUrlMapReference\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_url_map\"\xf0\x02\n\nUrlMapTest\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x00\x88\x01\x01\x12$\n\x13\x65xpected_output_url\x18\x98\xa2\xf7\xce\x01 \x01(\tH\x01\x88\x01\x01\x12/\n\x1f\x65xpected_redirect_response_code\x18\xef\xea\x80\t \x01(\x05H\x02\x88\x01\x01\x12=\n\x07headers\x18\x86\xdf\x9d{ \x03(\x0b\x32).google.cloud.compute.v1.UrlMapTestHeader\x12\x14\n\x04host\x18\xa8\xeb\xc3\x01 \x01(\tH\x03\x88\x01\x01\x12\x14\n\x04path\x18\xa5\xc8\xd1\x01 \x01(\tH\x04\x88\x01\x01\x12\x18\n\x07service\x18\xb5\x8d\x8f\xb2\x01 \x01(\tH\x05\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x16\n\x14_expected_output_urlB\"\n _expected_redirect_response_codeB\x07\n\x05_hostB\x07\n\x05_pathB\n\n\x08_service\"R\n\x10UrlMapTestHeader\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05value\x18\xf1\xa2\xb2\x35 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_nameB\x08\n\x06_value\"\xd2\x01\n\x16UrlMapValidationResult\x12\x17\n\x0bload_errors\x18\xe4\xf1\xf1\x93\x01 \x03(\t\x12\x1e\n\x0eload_succeeded\x18\xc8\xb4\x98= \x01(\x08H\x00\x88\x01\x01\x12?\n\rtest_failures\x18\xb6\xe2\x9f\xf1\x01 \x03(\x0b\x32$.google.cloud.compute.v1.TestFailure\x12\x1b\n\x0btest_passed\x18\xbd\x81\xf2[ \x01(\x08H\x01\x88\x01\x01\x42\x11\n\x0f_load_succeededB\x0e\n\x0c_test_passed\"\xb5\x03\n\x15UrlMapsAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12K\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x39.google.cloud.compute.v1.UrlMapsAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1aX\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x39\n\x05value\x18\x02 \x01(\x0b\x32*.google.cloud.compute.v1.UrlMapsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x90\x01\n\x11UrlMapsScopedList\x12\x34\n\x08url_maps\x18\xe7\x8e\xa4\x31 \x03(\x0b\x32\x1f.google.cloud.compute.v1.UrlMap\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x98\x02\n\x16UrlMapsValidateRequest\x12!\n\x16load_balancing_schemes\x18\xaf\x85\x81\x03 \x03(\t\x12\x39\n\x08resource\x18\x8e\x88\xaf] \x01(\x0b\x32\x1f.google.cloud.compute.v1.UrlMapH\x00\x88\x01\x01\"\x92\x01\n\x14LoadBalancingSchemes\x12$\n UNDEFINED_LOAD_BALANCING_SCHEMES\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x18\n\x10\x45XTERNAL_MANAGED\x10\x8b\xb6\x92\xf4\x01\x12)\n!LOAD_BALANCING_SCHEME_UNSPECIFIED\x10\xbc\xbb\x87\xfb\x01\x42\x0b\n\t_resource\"m\n\x17UrlMapsValidateResponse\x12G\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32/.google.cloud.compute.v1.UrlMapValidationResultH\x00\x88\x01\x01\x42\t\n\x07_result\"\xba\x01\n\nUrlRewrite\x12\x1c\n\x0chost_rewrite\x18\xf5\xcb\x9aL \x01(\tH\x00\x88\x01\x01\x12#\n\x13path_prefix_rewrite\x18\xb9\xe8\xd1\x13 \x01(\tH\x01\x88\x01\x01\x12&\n\x15path_template_rewrite\x18\xa1\xef\xf2\xc9\x01 \x01(\tH\x02\x88\x01\x01\x42\x0f\n\r_host_rewriteB\x16\n\x14_path_prefix_rewriteB\x18\n\x16_path_template_rewrite\"\xfe\x07\n\x10UsableSubnetwork\x12$\n\x14\x65xternal_ipv6_prefix\x18\xf6\x92\xb6\x42 \x01(\tH\x00\x88\x01\x01\x12%\n\x14internal_ipv6_prefix\x18\xe8\xa2\xb4\xf1\x01 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x02\x88\x01\x01\x12!\n\x10ipv6_access_type\x18\xdd\xf5\xd1\xf0\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x04\x88\x01\x01\x12\x18\n\x07purpose\x18\x9e\xfa\xef\x96\x01 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x04role\x18\xf6\x80\xd6\x01 \x01(\tH\x06\x88\x01\x01\x12W\n\x13secondary_ip_ranges\x18\xe3\xff\x94\x41 \x03(\x0b\x32\x37.google.cloud.compute.v1.UsableSubnetworkSecondaryRange\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH\x07\x88\x01\x01\x12\x1b\n\nsubnetwork\x18\xee\xa7\xe4\x92\x01 \x01(\tH\x08\x88\x01\x01\"S\n\x0eIpv6AccessType\x12\x1e\n\x1aUNDEFINED_IPV6_ACCESS_TYPE\x10\x00\x12\x0f\n\x08\x45XTERNAL\x10\xcb\xa7\xfd\x10\x12\x10\n\x08INTERNAL\x10\xbd\xed\x96\x85\x01\"\xf8\x01\n\x07Purpose\x12\x15\n\x11UNDEFINED_PURPOSE\x10\x00\x12\x1b\n\x14GLOBAL_MANAGED_PROXY\x10\xf2\xcb\xe0p\x12#\n\x1cINTERNAL_HTTPS_LOAD_BALANCER\x10\xd9\xb6\xcev\x12\x16\n\x0ePEER_MIGRATION\x10\x91\xaa\xc7\xea\x01\x12\x0f\n\x07PRIVATE\x10\xe3\xe2\xb2\xc0\x01\x12\x13\n\x0bPRIVATE_NAT\x10\xa5\xc8\xae\xaf\x01\x12\x17\n\x10PRIVATE_RFC_1918\x10\xdb\xfe\xc5y\x12\x1e\n\x17PRIVATE_SERVICE_CONNECT\x10\xc4\xf4\xf9\x16\x12\x1d\n\x16REGIONAL_MANAGED_PROXY\x10\xee\xb6\xfdH\":\n\x04Role\x12\x12\n\x0eUNDEFINED_ROLE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x0e\n\x06\x42\x41\x43KUP\x10\xc2\xd3\xcd\xa2\x01\"[\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\x12\x10\n\tIPV6_ONLY\x10\xe4\xad\xfc%B\x17\n\x15_external_ipv6_prefixB\x17\n\x15_internal_ipv6_prefixB\x10\n\x0e_ip_cidr_rangeB\x13\n\x11_ipv6_access_typeB\n\n\x08_networkB\n\n\x08_purposeB\x07\n\x05_roleB\r\n\x0b_stack_typeB\r\n\x0b_subnetwork\"}\n\x1eUsableSubnetworkSecondaryRange\x12\x1d\n\rip_cidr_range\x18\xca\xcd\xe4. \x01(\tH\x00\x88\x01\x01\x12\x1b\n\nrange_name\x18\xcd\xf0\xb4\x9e\x01 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_ip_cidr_rangeB\r\n\x0b_range_name\"\xa4\x03\n\x1fUsableSubnetworksAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12;\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32).google.cloud.compute.v1.UsableSubnetwork\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12M\n\x0fscoped_warnings\x18\xa6\x96\xf8\x66 \x03(\x0b\x32\x31.google.cloud.compute.v1.SubnetworksScopedWarning\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x7f\n\x13UsageExportLocation\x12\x1c\n\x0b\x62ucket_name\x18\xc0\x97\x9e\x87\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x12report_name_prefix\x18\xbb\xb0\xd7\x98\x01 \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_bucket_nameB\x15\n\x13_report_name_prefix\"\xda\x01\n\x1bValidateRegionUrlMapRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\x12p\n)region_url_maps_validate_request_resource\x18\x9a\xcc\x80\x1b \x01(\x0b\x32\x35.google.cloud.compute.v1.RegionUrlMapsValidateRequestB\x03\xe0\x41\x02\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\"\xb0\x01\n\x15ValidateUrlMapRequest\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x07url_map\x18\x8c\x95\x81\xaf\x01 \x01(\tB\x03\xe0\x41\x02\x12\x64\n\"url_maps_validate_request_resource\x18\xef\xd1\xe4\xbc\x01 \x01(\x0b\x32/.google.cloud.compute.v1.UrlMapsValidateRequestB\x03\xe0\x41\x02\"\xaf\x01\n\x15VmEndpointNatMappings\x12\x1d\n\rinstance_name\x18\xf5\xe7\xd8l \x01(\tH\x00\x88\x01\x01\x12\x65\n\x16interface_nat_mappings\x18\x89\x80\x95z \x03(\x0b\x32\x42.google.cloud.compute.v1.VmEndpointNatMappingsInterfaceNatMappingsB\x10\n\x0e_instance_name\"\xe2\x03\n)VmEndpointNatMappingsInterfaceNatMappings\x12$\n\x18\x64rain_nat_ip_port_ranges\x18\xc1\xe3\xc7\xbc\x01 \x03(\t\x12\x1e\n\x12nat_ip_port_ranges\x18\x9a\xb0\xcc\xfd\x01 \x03(\t\x12*\n\x19num_total_drain_nat_ports\x18\xf9\xa5\xff\x9f\x01 \x01(\x05H\x00\x88\x01\x01\x12$\n\x13num_total_nat_ports\x18\x80\xdb\x80\x8f\x01 \x01(\x05H\x01\x88\x01\x01\x12l\n\rrule_mappings\x18\xc8\xee\xea\xe7\x01 \x03(\x0b\x32Q.google.cloud.compute.v1.VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings\x12&\n\x15source_alias_ip_range\x18\xd8\xa3\xfc\xd1\x01 \x01(\tH\x02\x88\x01\x01\x12!\n\x11source_virtual_ip\x18\xff\xa2\xb9G \x01(\tH\x03\x88\x01\x01\x42\x1c\n\x1a_num_total_drain_nat_portsB\x16\n\x14_num_total_nat_portsB\x18\n\x16_source_alias_ip_rangeB\x14\n\x12_source_virtual_ip\"\xb6\x02\n8VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings\x12$\n\x18\x64rain_nat_ip_port_ranges\x18\xc1\xe3\xc7\xbc\x01 \x03(\t\x12\x1e\n\x12nat_ip_port_ranges\x18\x9a\xb0\xcc\xfd\x01 \x03(\t\x12*\n\x19num_total_drain_nat_ports\x18\xf9\xa5\xff\x9f\x01 \x01(\x05H\x00\x88\x01\x01\x12$\n\x13num_total_nat_ports\x18\x80\xdb\x80\x8f\x01 \x01(\x05H\x01\x88\x01\x01\x12\x1c\n\x0brule_number\x18\xec\xdb\x9a\xff\x01 \x01(\x05H\x02\x88\x01\x01\x42\x1c\n\x1a_num_total_drain_nat_portsB\x16\n\x14_num_total_nat_portsB\x0e\n\x0c_rule_number\"\xbc\x02\n\x19VmEndpointNatMappingsList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x41\n\x06result\x18\x9d\x90\xb7\x42 \x03(\x0b\x32..google.cloud.compute.v1.VmEndpointNatMappings\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xbd\x07\n\x11VmExtensionPolicy\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12`\n\x12\x65xtension_policies\x18\xd0\xba\xcdl \x03(\x0b\x32\x41.google.cloud.compute.v1.VmExtensionPolicy.ExtensionPoliciesEntry\x12%\n\x14global_resource_link\x18\xef\xf3\xa8\xf6\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12Z\n\x12instance_selectors\x18\xca\xc2\x8c\xf8\x01 \x03(\x0b\x32:.google.cloud.compute.v1.VmExtensionPolicyInstanceSelector\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12!\n\x11managed_by_global\x18\xeb\x87\xa0* \x01(\x08H\x05\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x19\n\x08priority\x18\xa4\xf3\xa1\xd4\x01 \x01(\x05H\x07\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x08\x88\x01\x01\x12!\n\x11self_link_with_id\x18\x82\xac\x9d\x15 \x01(\tH\t\x88\x01\x01\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\n\x88\x01\x01\x12 \n\x10update_timestamp\x18\xa0\xea\xd2\x39 \x01(\tH\x0b\x88\x01\x01\x1as\n\x16\x45xtensionPoliciesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12H\n\x05value\x18\x02 \x01(\x0b\x32\x39.google.cloud.compute.v1.VmExtensionPolicyExtensionPolicy:\x02\x38\x01\"Y\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x0e\n\x06\x41\x43TIVE\x10\x86\xe6\x89\x96\x01\x12\x10\n\x08\x44\x45LETING\x10\xa8\xa7\x87\xfc\x01\x12\x19\n\x11STATE_UNSPECIFIED\x10\xc9\xd0\xbc\xe0\x01\x42\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x17\n\x15_global_resource_linkB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_managed_by_globalB\x07\n\x05_nameB\x0b\n\t_priorityB\x0c\n\n_self_linkB\x14\n\x12_self_link_with_idB\x08\n\x06_stateB\x13\n\x11_update_timestamp\"\x88\x01\n VmExtensionPolicyExtensionPolicy\x12\x1f\n\x0epinned_version\x18\xf1\xfe\xe5\xd4\x01 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\rstring_config\x18\xb0\xb6\x88\x98\x01 \x01(\tH\x01\x88\x01\x01\x42\x11\n\x0f_pinned_versionB\x10\n\x0e_string_config\"\x90\x01\n!VmExtensionPolicyInstanceSelector\x12X\n\x0elabel_selector\x18\xca\xf1\xe4\xa6\x01 \x01(\x0b\x32\x37.google.cloud.compute.v1.VmExtensionPolicyLabelSelectorH\x00\x88\x01\x01\x42\x11\n\x0f_label_selector\"\xc4\x01\n\x1eVmExtensionPolicyLabelSelector\x12j\n\x10inclusion_labels\x18\x82\xd9\x85\xef\x01 \x03(\x0b\x32L.google.cloud.compute.v1.VmExtensionPolicyLabelSelector.InclusionLabelsEntry\x1a\x36\n\x14InclusionLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xeb\x02\n\x15VmExtensionPolicyList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12<\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32*.google.cloud.compute.v1.VmExtensionPolicy\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa0\x07\n\nVpnGateway\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x01\x88\x01\x01\x12\"\n\x12gateway_ip_version\x18\x9b\xed\x83\x1f \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x05\x88\x01\x01\x12\x43\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32/.google.cloud.compute.v1.VpnGateway.LabelsEntry\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x06\x88\x01\x01\x12\x17\n\x07network\x18\xae\xb4\x85o \x01(\tH\x07\x88\x01\x01\x12\x41\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32).google.cloud.compute.v1.VpnGatewayParamsH\x08\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\t\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\n\x88\x01\x01\x12\x1b\n\nstack_type\x18\x91\xb5\x8b\xcb\x01 \x01(\tH\x0b\x88\x01\x01\x12Q\n\x0evpn_interfaces\x18\x85\xcd\xe5+ \x03(\x0b\x32\x36.google.cloud.compute.v1.VpnGatewayVpnGatewayInterface\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"N\n\x10GatewayIpVersion\x12 \n\x1cUNDEFINED_GATEWAY_IP_VERSION\x10\x00\x12\x0b\n\x04IPV4\x10\x85\xcc\x89\x01\x12\x0b\n\x04IPV6\x10\x87\xcc\x89\x01\"[\n\tStackType\x12\x18\n\x14UNDEFINED_STACK_TYPE\x10\x00\x12\x10\n\tIPV4_IPV6\x10\x81\xe8\xca\n\x12\x10\n\tIPV4_ONLY\x10\xa6\xcb\xd5\n\x12\x10\n\tIPV6_ONLY\x10\xe4\xad\xfc%B\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x15\n\x13_gateway_ip_versionB\x05\n\x03_idB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\n\n\x08_networkB\t\n\x07_paramsB\t\n\x07_regionB\x0c\n\n_self_linkB\r\n\x0b_stack_type\"\xbf\x03\n\x18VpnGatewayAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12N\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32<.google.cloud.compute.v1.VpnGatewayAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a\\\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.compute.v1.VpnGatewaysScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xa5\x02\n\x0eVpnGatewayList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x35\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32#.google.cloud.compute.v1.VpnGateway\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb5\x01\n\x10VpnGatewayParams\x12\x65\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x42.google.cloud.compute.v1.VpnGatewayParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"g\n\x10VpnGatewayStatus\x12S\n\x0fvpn_connections\x18\x8a\xed\xbe\xd1\x01 \x03(\x0b\x32\x36.google.cloud.compute.v1.VpnGatewayStatusVpnConnection\"\xd1\x02\n0VpnGatewayStatusHighAvailabilityRequirementState\x12\x15\n\x05state\x18\x91\x89\xab\x34 \x01(\tH\x00\x88\x01\x01\x12\"\n\x12unsatisfied_reason\x18\x8a\xf7\x9d\x1a \x01(\tH\x01\x88\x01\x01\"f\n\x05State\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12!\n\x19\x43ONNECTION_REDUNDANCY_MET\x10\x9b\xca\xf5\xf0\x01\x12%\n\x1d\x43ONNECTION_REDUNDANCY_NOT_MET\x10\x8f\xd4\x89\xf4\x01\"Y\n\x11UnsatisfiedReason\x12 \n\x1cUNDEFINED_UNSATISFIED_REASON\x10\x00\x12\"\n\x1bINCOMPLETE_TUNNELS_COVERAGE\x10\xfd\xf6\xd4\x1a\x42\x08\n\x06_stateB\x15\n\x13_unsatisfied_reason\"\xcb\x01\n\x16VpnGatewayStatusTunnel\x12\'\n\x17local_gateway_interface\x18\xaa\x9a\xdaK \x01(\rH\x00\x88\x01\x01\x12&\n\x16peer_gateway_interface\x18\xe1\xde\x9c\x66 \x01(\rH\x01\x88\x01\x01\x12\x1a\n\ntunnel_url\x18\x98\xa2\xd4% \x01(\tH\x02\x88\x01\x01\x42\x1a\n\x18_local_gateway_interfaceB\x19\n\x17_peer_gateway_interfaceB\r\n\x0b_tunnel_url\"\xca\x02\n\x1dVpnGatewayStatusVpnConnection\x12&\n\x15peer_external_gateway\x18\x8d\xee\xc7\xb7\x01 \x01(\tH\x00\x88\x01\x01\x12!\n\x10peer_gcp_gateway\x18\xbc\xe9\xb3\x86\x01 \x01(\tH\x01\x88\x01\x01\x12`\n\x05state\x18\x91\x89\xab\x34 \x01(\x0b\x32I.google.cloud.compute.v1.VpnGatewayStatusHighAvailabilityRequirementStateH\x02\x88\x01\x01\x12\x43\n\x07tunnels\x18\x8b\xfa\xed\x31 \x03(\x0b\x32/.google.cloud.compute.v1.VpnGatewayStatusTunnelB\x18\n\x16_peer_external_gatewayB\x13\n\x11_peer_gcp_gatewayB\x08\n\x06_state\"\xda\x01\n\x1dVpnGatewayVpnGatewayInterface\x12\x10\n\x02id\x18\x9b\x1a \x01(\rH\x00\x88\x01\x01\x12(\n\x17interconnect_attachment\x18\xf4\x8a\xf7\x92\x01 \x01(\tH\x01\x88\x01\x01\x12\x1b\n\nip_address\x18\xdc\xf1\xdc\xc1\x01 \x01(\tH\x02\x88\x01\x01\x12\x1d\n\x0cipv6_address\x18\x9c\xb3\xef\xa2\x01 \x01(\tH\x03\x88\x01\x01\x42\x05\n\x03_idB\x1a\n\x18_interconnect_attachmentB\r\n\x0b_ip_addressB\x0f\n\r_ipv6_address\"l\n\x1cVpnGatewaysGetStatusResponse\x12\x41\n\x06result\x18\x9d\x90\xb7\x42 \x01(\x0b\x32).google.cloud.compute.v1.VpnGatewayStatusH\x00\x88\x01\x01\x42\t\n\x07_result\"\x9c\x01\n\x15VpnGatewaysScopedList\x12<\n\x0cvpn_gateways\x18\x9a\xfb\xca{ \x03(\x0b\x32#.google.cloud.compute.v1.VpnGateway\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\xc7\r\n\tVpnTunnel\x12L\n\x0c\x63ipher_suite\x18\xc4\xd7\xce\xd3\x01 \x01(\x0b\x32-.google.cloud.compute.v1.VpnTunnelCipherSuiteH\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12 \n\x0f\x64\x65tailed_status\x18\xe1\xa4\x83\x9f\x01 \x01(\tH\x03\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x04\x88\x01\x01\x12\x1b\n\x0bike_version\x18\x9c\xd0\x90h \x01(\x05H\x05\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x06\x88\x01\x01\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x07\x88\x01\x01\x12\x42\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32..google.cloud.compute.v1.VpnTunnel.LabelsEntry\x12\"\n\x16local_traffic_selector\x18\xb5\xac\xa7\x97\x01 \x03(\t\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x08\x88\x01\x01\x12@\n\x06params\x18\x86\xf3\xab% \x01(\x0b\x32(.google.cloud.compute.v1.VpnTunnelParamsH\t\x88\x01\x01\x12&\n\x15peer_external_gateway\x18\x8d\xee\xc7\xb7\x01 \x01(\tH\n\x88\x01\x01\x12\x30\n\x1fpeer_external_gateway_interface\x18\x87\xe5\xf2\xd7\x01 \x01(\x05H\x0b\x88\x01\x01\x12!\n\x10peer_gcp_gateway\x18\xbc\xe9\xb3\x86\x01 \x01(\tH\x0c\x88\x01\x01\x12\x18\n\x07peer_ip\x18\xa4\xda\xdf\xb6\x01 \x01(\tH\r\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x0e\x88\x01\x01\x12#\n\x17remote_traffic_selector\x18\xba\xdd\x90\xab\x01 \x03(\t\x12\x16\n\x06router\x18\xc9\xae\xee\x46 \x01(\tH\x0f\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x10\x88\x01\x01\x12\x1e\n\rshared_secret\x18\xca\xa7\x8f\xb6\x01 \x01(\tH\x11\x88\x01\x01\x12#\n\x12shared_secret_hash\x18\xe3\xe8\x99\xbe\x01 \x01(\tH\x12\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x13\x88\x01\x01\x12#\n\x12target_vpn_gateway\x18\xcb\x80\xf6\xfd\x01 \x01(\tH\x14\x88\x01\x01\x12\x1c\n\x0bvpn_gateway\x18\xf9\x83\xf6\xc1\x01 \x01(\tH\x15\x88\x01\x01\x12%\n\x15vpn_gateway_interface\x18\xf3\x8c\xe2- \x01(\x05H\x16\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xd3\x02\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x1c\n\x14\x41LLOCATING_RESOURCES\x10\xc0\xc9\x83\x99\x01\x12\x1a\n\x13\x41UTHORIZATION_ERROR\x10\x82\x9d\x9f\x0b\x12\x16\n\x0e\x44\x45PROVISIONING\x10\xee\x93\xc4\xcc\x01\x12\x12\n\x0b\x45STABLISHED\x10\xf8\x8e\xaf*\x12\x0e\n\x06\x46\x41ILED\x10\xbd\x90\xa6\xd9\x01\x12\x16\n\x0f\x46IRST_HANDSHAKE\x10\xe8\xd9\xa1[\x12\x1b\n\x13NEGOTIATION_FAILURE\x10\xec\xc5\xe8\xab\x01\x12\x14\n\rNETWORK_ERROR\x10\xf7\xc0\xbb\\\x12\x1a\n\x13NO_INCOMING_PACKETS\x10\xf0\x98\x9b\x39\x12\x14\n\x0cPROVISIONING\x10\xed\xf5\xda\x8a\x01\x12\x0f\n\x08REJECTED\x10\xfe\x88\x84S\x12\x0f\n\x07STOPPED\x10\xad\xbb\xec\xd3\x01\x12\x1e\n\x17WAITING_FOR_FULL_CONFIG\x10\xca\xc4\xed\x13\x42\x0f\n\r_cipher_suiteB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x12\n\x10_detailed_statusB\x05\n\x03_idB\x0e\n\x0c_ike_versionB\x07\n\x05_kindB\x14\n\x12_label_fingerprintB\x07\n\x05_nameB\t\n\x07_paramsB\x18\n\x16_peer_external_gatewayB\"\n _peer_external_gateway_interfaceB\x13\n\x11_peer_gcp_gatewayB\n\n\x08_peer_ipB\t\n\x07_regionB\t\n\x07_routerB\x0c\n\n_self_linkB\x10\n\x0e_shared_secretB\x15\n\x13_shared_secret_hashB\t\n\x07_statusB\x15\n\x13_target_vpn_gatewayB\x0e\n\x0c_vpn_gatewayB\x18\n\x16_vpn_gateway_interface\"\xbc\x03\n\x17VpnTunnelAggregatedList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12M\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32;.google.cloud.compute.v1.VpnTunnelAggregatedList.ItemsEntry\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x1a[\n\nItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12<\n\x05value\x18\x02 \x01(\x0b\x32-.google.cloud.compute.v1.VpnTunnelsScopedList:\x02\x38\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xc4\x01\n\x14VpnTunnelCipherSuite\x12J\n\x06phase1\x18\x96\xcc\x98( \x01(\x0b\x32\x32.google.cloud.compute.v1.VpnTunnelPhase1AlgorithmsH\x00\x88\x01\x01\x12J\n\x06phase2\x18\x97\xcc\x98( \x01(\x0b\x32\x32.google.cloud.compute.v1.VpnTunnelPhase2AlgorithmsH\x01\x88\x01\x01\x42\t\n\x07_phase1B\t\n\x07_phase2\"\xa3\x02\n\rVpnTunnelList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x34\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\".google.cloud.compute.v1.VpnTunnel\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xb3\x01\n\x0fVpnTunnelParams\x12\x64\n\x15resource_manager_tags\x18\xfc\x9b\x8b\xb4\x01 \x03(\x0b\x32\x41.google.cloud.compute.v1.VpnTunnelParams.ResourceManagerTagsEntry\x1a:\n\x18ResourceManagerTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"e\n\x19VpnTunnelPhase1Algorithms\x12\x0b\n\x02\x64h\x18\x84\x19 \x03(\t\x12\x15\n\nencryption\x18\x83\x9f\xdc. \x03(\t\x12\x15\n\tintegrity\x18\xcd\xfe\xff\xea\x01 \x03(\t\x12\r\n\x03prf\x18\xa4\xe5\x06 \x03(\t\"X\n\x19VpnTunnelPhase2Algorithms\x12\x15\n\nencryption\x18\x83\x9f\xdc. \x03(\t\x12\x15\n\tintegrity\x18\xcd\xfe\xff\xea\x01 \x03(\t\x12\r\n\x03pfs\x18\xbd\xe2\x06 \x03(\t\"\x99\x01\n\x14VpnTunnelsScopedList\x12:\n\x0bvpn_tunnels\x18\xc0\xf1\xfaM \x03(\x0b\x32\".google.cloud.compute.v1.VpnTunnel\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x00\x88\x01\x01\x42\n\n\x08_warning\"\x8c\x01\n\x10WafExpressionSet\x12\x12\n\x07\x61liases\x18\xfe\x9d\xf5K \x03(\t\x12K\n\x0b\x65xpressions\x18\xdb\x81\xdbS \x03(\x0b\x32\x33.google.cloud.compute.v1.WafExpressionSetExpression\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x42\x05\n\x03_id\"b\n\x1aWafExpressionSetExpression\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0bsensitivity\x18\x9f\xbd\x90\r \x01(\x05H\x01\x88\x01\x01\x42\x05\n\x03_idB\x0e\n\x0c_sensitivity\"P\n\x1aWaitGlobalOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\"h\n\x1aWaitRegionOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x03\xe0\x41\x02\"d\n\x18WaitZoneOperationRequest\x12\x19\n\toperation\x18\xe7\xaa\xeb\x18 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\x07project\x18\x99\x96\xc1l \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x04zone\x18\xac\xc7\xe4\x01 \x01(\tB\x03\xe0\x41\x02\"\xfd\x08\n\x07Warning\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\tH\x00\x88\x01\x01\x12.\n\x04\x64\x61ta\x18\xaa\xdf\xbb\x01 \x03(\x0b\x32\x1d.google.cloud.compute.v1.Data\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x01\x88\x01\x01\"\xfc\x07\n\x04\x43ode\x12\x12\n\x0eUNDEFINED_CODE\x10\x00\x12\x15\n\x0e\x43LEANUP_FAILED\x10\xd8\x8c\xd6G\x12 \n\x18\x44\x45PRECATED_RESOURCE_USED\x10\xc2\xdf\xeb\xba\x01\x12\x1c\n\x14\x44\x45PRECATED_TYPE_USED\x10\x96\xa4\x9e\xa5\x01\x12(\n DISK_SIZE_LARGER_THAN_IMAGE_SIZE\x10\x97\x81\x95\xb0\x01\x12\x1e\n\x16\x45XPERIMENTAL_TYPE_USED\x10\x8b\x8e\xc1\xd7\x01\x12\x1b\n\x14\x45XTERNAL_API_WARNING\x10\xc3\xbf\xdaS\x12\x1d\n\x15\x46IELD_VALUE_OVERRIDEN\x10\xaf\xb6\x99\x9d\x01\x12#\n\x1bINJECTED_KERNELS_DEPRECATED\x10\x8b\xd9\x82\xc7\x01\x12\x34\n,INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB\x10\xce\x9b\xbc\xbf\x01\x12 \n\x18LARGE_DEPLOYMENT_WARNING\x10\xa6\xe7\xc8\xe5\x01\x12!\n\x1aLIST_OVERHEAD_QUOTA_EXCEED\x10\xc5\xb0\xda\x16\x12\x1f\n\x17MISSING_TYPE_DEPENDENCY\x10\xf7\xf8\xa2\xa4\x01\x12%\n\x1dNEXT_HOP_ADDRESS_NOT_ASSIGNED\x10\x87\xa5\xfa\x9a\x01\x12\"\n\x1aNEXT_HOP_CANNOT_IP_FORWARD\x10\xe7\xea\xe7\xb6\x01\x12.\n\'NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE\x10\x92\xe8\xfc\x45\x12#\n\x1bNEXT_HOP_INSTANCE_NOT_FOUND\x10\xce\xcc\xaf\xdd\x01\x12\'\n NEXT_HOP_INSTANCE_NOT_ON_NETWORK\x10\xc2\xe8\x9dt\x12\x1c\n\x14NEXT_HOP_NOT_RUNNING\x10\xb1\xcf\xf0\xc6\x01\x12\x19\n\x12NOT_CRITICAL_ERROR\x10\xd4\xa8\xb7\x32\x12\x19\n\x12NO_RESULTS_ON_PAGE\x10\x88\xa6\xa9\x0e\x12\x16\n\x0fPARTIAL_SUCCESS\x10\x85\xae\x87\x13\x12\x1e\n\x16QUOTA_INFO_UNAVAILABLE\x10\xa6\xd2\x8c\x91\x01\x12\x1d\n\x16REQUIRED_TOS_AGREEMENT\x10\x83\xce\xe4\x01\x12\x31\n)RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING\x10\xc1\xf4\xed\xec\x01\x12\x1b\n\x14RESOURCE_NOT_DELETED\x10\xbc\xb7\xb2P\x12!\n\x19SCHEMA_VALIDATION_IGNORED\x10\xca\xd4\x9f\x83\x01\x12(\n!SINGLE_INSTANCE_PROPERTY_TEMPLATE\x10\xd1\x89\xf8\x7f\x12\x1d\n\x15UNDECLARED_PROPERTIES\x10\x9f\x86\x9b\xba\x01\x12\x12\n\x0bUNREACHABLE\x10\xb4\xbd\xad\x06\x42\x07\n\x05_codeB\n\n\x08_message\"\xfe\x08\n\x08Warnings\x12\x14\n\x04\x63ode\x18\xed\xdb\xba\x01 \x01(\tH\x00\x88\x01\x01\x12.\n\x04\x64\x61ta\x18\xaa\xdf\xbb\x01 \x03(\x0b\x32\x1d.google.cloud.compute.v1.Data\x12\x18\n\x07message\x18\x87\x80\xac\xc7\x01 \x01(\tH\x01\x88\x01\x01\"\xfc\x07\n\x04\x43ode\x12\x12\n\x0eUNDEFINED_CODE\x10\x00\x12\x15\n\x0e\x43LEANUP_FAILED\x10\xd8\x8c\xd6G\x12 \n\x18\x44\x45PRECATED_RESOURCE_USED\x10\xc2\xdf\xeb\xba\x01\x12\x1c\n\x14\x44\x45PRECATED_TYPE_USED\x10\x96\xa4\x9e\xa5\x01\x12(\n DISK_SIZE_LARGER_THAN_IMAGE_SIZE\x10\x97\x81\x95\xb0\x01\x12\x1e\n\x16\x45XPERIMENTAL_TYPE_USED\x10\x8b\x8e\xc1\xd7\x01\x12\x1b\n\x14\x45XTERNAL_API_WARNING\x10\xc3\xbf\xdaS\x12\x1d\n\x15\x46IELD_VALUE_OVERRIDEN\x10\xaf\xb6\x99\x9d\x01\x12#\n\x1bINJECTED_KERNELS_DEPRECATED\x10\x8b\xd9\x82\xc7\x01\x12\x34\n,INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB\x10\xce\x9b\xbc\xbf\x01\x12 \n\x18LARGE_DEPLOYMENT_WARNING\x10\xa6\xe7\xc8\xe5\x01\x12!\n\x1aLIST_OVERHEAD_QUOTA_EXCEED\x10\xc5\xb0\xda\x16\x12\x1f\n\x17MISSING_TYPE_DEPENDENCY\x10\xf7\xf8\xa2\xa4\x01\x12%\n\x1dNEXT_HOP_ADDRESS_NOT_ASSIGNED\x10\x87\xa5\xfa\x9a\x01\x12\"\n\x1aNEXT_HOP_CANNOT_IP_FORWARD\x10\xe7\xea\xe7\xb6\x01\x12.\n\'NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE\x10\x92\xe8\xfc\x45\x12#\n\x1bNEXT_HOP_INSTANCE_NOT_FOUND\x10\xce\xcc\xaf\xdd\x01\x12\'\n NEXT_HOP_INSTANCE_NOT_ON_NETWORK\x10\xc2\xe8\x9dt\x12\x1c\n\x14NEXT_HOP_NOT_RUNNING\x10\xb1\xcf\xf0\xc6\x01\x12\x19\n\x12NOT_CRITICAL_ERROR\x10\xd4\xa8\xb7\x32\x12\x19\n\x12NO_RESULTS_ON_PAGE\x10\x88\xa6\xa9\x0e\x12\x16\n\x0fPARTIAL_SUCCESS\x10\x85\xae\x87\x13\x12\x1e\n\x16QUOTA_INFO_UNAVAILABLE\x10\xa6\xd2\x8c\x91\x01\x12\x1d\n\x16REQUIRED_TOS_AGREEMENT\x10\x83\xce\xe4\x01\x12\x31\n)RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING\x10\xc1\xf4\xed\xec\x01\x12\x1b\n\x14RESOURCE_NOT_DELETED\x10\xbc\xb7\xb2P\x12!\n\x19SCHEMA_VALIDATION_IGNORED\x10\xca\xd4\x9f\x83\x01\x12(\n!SINGLE_INSTANCE_PROPERTY_TEMPLATE\x10\xd1\x89\xf8\x7f\x12\x1d\n\x15UNDECLARED_PROPERTIES\x10\x9f\x86\x9b\xba\x01\x12\x12\n\x0bUNREACHABLE\x10\xb4\xbd\xad\x06\x42\x07\n\x05_codeB\n\n\x08_message\"\xcf\x01\n\x16WeightedBackendService\x12 \n\x0f\x62\x61\x63kend_service\x18\x8a\xc0\xae\x92\x01 \x01(\tH\x00\x88\x01\x01\x12I\n\rheader_action\x18\xa8\xa0\xb8\x9c\x01 \x01(\x0b\x32).google.cloud.compute.v1.HttpHeaderActionH\x01\x88\x01\x01\x12\x17\n\x06weight\x18\xf8\x84\xc5\x86\x01 \x01(\rH\x02\x88\x01\x01\x42\x12\n\x10_backend_serviceB\x10\n\x0e_header_actionB\t\n\x07_weight\"\xf6\x01\n\x04Wire\x12\x1e\n\radmin_enabled\x18\xd1\xec\xc1\xd4\x01 \x01(\x08H\x00\x88\x01\x01\x12<\n\tendpoints\x18\xfe\xaa\xf2\x88\x01 \x03(\x0b\x32%.google.cloud.compute.v1.WireEndpoint\x12\x15\n\x05label\x18\xf4\xfd\xfd\x30 \x01(\tH\x01\x88\x01\x01\x12I\n\x0fwire_properties\x18\xad\xba\xc4\x90\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.WirePropertiesH\x02\x88\x01\x01\x42\x10\n\x0e_admin_enabledB\x08\n\x06_labelB\x12\n\x10_wire_properties\"e\n\x0cWireEndpoint\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tH\x00\x88\x01\x01\x12\x19\n\x08vlan_tag\x18\xbe\x95\xb3\xf5\x01 \x01(\x05H\x01\x88\x01\x01\x42\x0f\n\r_interconnectB\x0b\n\t_vlan_tag\"\xe0\x05\n\tWireGroup\x12\x1e\n\radmin_enabled\x18\xd1\xec\xc1\xd4\x01 \x01(\x08H\x00\x88\x01\x01\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12H\n\tendpoints\x18\xfe\xaa\xf2\x88\x01 \x03(\x0b\x32\x31.google.cloud.compute.v1.WireGroup.EndpointsEntry\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x1c\n\x0breconciling\x18\x8b\xd9\x88\xce\x01 \x01(\x08H\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12\x44\n\x08topology\x18\xef\x84\xa7: \x01(\x0b\x32*.google.cloud.compute.v1.WireGroupTopologyH\x08\x88\x01\x01\x12I\n\x0fwire_properties\x18\xad\xba\xc4\x90\x01 \x01(\x0b\x32\'.google.cloud.compute.v1.WirePropertiesH\t\x88\x01\x01\x12/\n\x05wires\x18\x8e\xc1\xf9\x35 \x03(\x0b\x32\x1d.google.cloud.compute.v1.Wire\x1a\\\n\x0e\x45ndpointsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x39\n\x05value\x18\x02 \x01(\x0b\x32*.google.cloud.compute.v1.WireGroupEndpoint:\x02\x38\x01\x42\x10\n\x0e_admin_enabledB\x15\n\x13_creation_timestampB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\x0e\n\x0c_reconcilingB\x0c\n\n_self_linkB\x0b\n\t_topologyB\x12\n\x10_wire_properties\"\xdb\x01\n\x11WireGroupEndpoint\x12X\n\rinterconnects\x18\xa5\xdb\x85\xf8\x01 \x03(\x0b\x32=.google.cloud.compute.v1.WireGroupEndpoint.InterconnectsEntry\x1al\n\x12InterconnectsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x45\n\x05value\x18\x02 \x01(\x0b\x32\x36.google.cloud.compute.v1.WireGroupEndpointInterconnect:\x02\x38\x01\"e\n\x1dWireGroupEndpointInterconnect\x12\x1c\n\x0cinterconnect\x18\x8e\xc9\x8ck \x01(\tH\x00\x88\x01\x01\x12\x15\n\tvlan_tags\x18\xf5\x9a\xb2\xb7\x01 \x03(\x05\x42\x0f\n\r_interconnect\"\xdb\x02\n\rWireGroupList\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x01\x88\x01\x01\x12\x34\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\".google.cloud.compute.v1.WireGroup\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x02\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x03\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x04\x88\x01\x01\x12\x17\n\x0cunreachables\x18\x9f\xa0\x86t \x03(\t\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x05\x88\x01\x01\x42\x07\n\x05_etagB\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"^\n\x11WireGroupTopology\x12I\n\tendpoints\x18\xfe\xaa\xf2\x88\x01 \x03(\x0b\x32\x32.google.cloud.compute.v1.WireGroupTopologyEndpoint\"[\n\x19WireGroupTopologyEndpoint\x12\x14\n\x04\x63ity\x18\xeb\xb2\xba\x01 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x05label\x18\xf4\xfd\xfd\x30 \x01(\tH\x01\x88\x01\x01\x42\x07\n\x05_cityB\x08\n\x06_label\"\x89\x03\n\x0eWireProperties\x12$\n\x14\x62\x61ndwidth_allocation\x18\xae\xfa\x9c+ \x01(\tH\x00\x88\x01\x01\x12$\n\x13\x62\x61ndwidth_unmetered\x18\xa1\x9e\x81\x82\x01 \x01(\x03H\x01\x88\x01\x01\x12\x1f\n\x0e\x66\x61ult_response\x18\xbe\xa3\xcd\xa8\x01 \x01(\tH\x02\x88\x01\x01\"t\n\x13\x42\x61ndwidthAllocation\x12\"\n\x1eUNDEFINED_BANDWIDTH_ALLOCATION\x10\x00\x12\x19\n\x11\x41LLOCATE_PER_WIRE\x10\xc9\x92\x87\xab\x01\x12\x1e\n\x16SHARED_WITH_WIRE_GROUP\x10\xe4\xe6\xcb\x88\x01\"P\n\rFaultResponse\x12\x1c\n\x18UNDEFINED_FAULT_RESPONSE\x10\x00\x12\x14\n\x0c\x44ISABLE_PORT\x10\x98\xaf\xf2\x88\x01\x12\x0b\n\x04NONE\x10\xb8\xce\x92\x01\x42\x17\n\x15_bandwidth_allocationB\x16\n\x14_bandwidth_unmeteredB\x11\n\x0f_fault_response\"\xa0\x01\n&WithdrawPublicAdvertisedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12(\n\x18public_advertised_prefix\x18\x9e\xf7\xc9\x30 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\xbf\x01\n%WithdrawPublicDelegatedPrefixeRequest\x12!\n\x07project\x18\x99\x96\xc1l \x01(\tB\r\xe0\x41\x02\xf2G\x07project\x12\'\n\x17public_delegated_prefix\x18\xe8\xdc\xb1\x61 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tB\x0c\xe0\x41\x02\xf2G\x06region\x12\x1a\n\nrequest_id\x18\xcb\x81\xd9\x11 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_request_id\"\x90\x01\n\x16WorkloadIdentityConfig\x12\x19\n\x08identity\x18\xbe\xe1\xa1\xbf\x01 \x01(\tH\x00\x88\x01\x01\x12-\n\x1cidentity_certificate_enabled\x18\x98\xbf\xc0\xa3\x01 \x01(\x08H\x01\x88\x01\x01\x42\x0b\n\t_identityB\x1f\n\x1d_identity_certificate_enabled\"\x9f\x02\n\x0bXpnHostList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x32\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32 .google.cloud.compute.v1.Project\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\x9a\x01\n\rXpnResourceId\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12\x14\n\x04type\x18\xba\x9e\xda\x01 \x01(\tH\x01\x88\x01\x01\"Q\n\x04Type\x12\x12\n\x0eUNDEFINED_TYPE\x10\x00\x12\x0f\n\x07PROJECT\x10\xf9\xad\xef\xc2\x01\x12$\n\x1dXPN_RESOURCE_TYPE_UNSPECIFIED\x10\xfa\xad\xa5HB\x05\n\x03_idB\x07\n\x05_type\"\x97\x04\n\x04Zone\x12\"\n\x17\x61vailable_cpu_platforms\x18\x93\xf3\xd9S \x03(\t\x12\"\n\x12\x63reation_timestamp\x18\xb6\x8f\xc7\x0e \x01(\tH\x00\x88\x01\x01\x12G\n\ndeprecated\x18\xb3\xcb\xd1\xf5\x01 \x01(\x0b\x32*.google.cloud.compute.v1.DeprecationStatusH\x01\x88\x01\x01\x12\x1c\n\x0b\x64\x65scription\x18\xfc\x87\xd6\xc9\x01 \x01(\tH\x02\x88\x01\x01\x12\x10\n\x02id\x18\x9b\x1a \x01(\x04H\x03\x88\x01\x01\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x04\x88\x01\x01\x12\x14\n\x04name\x18\x8b\xf5\xcd\x01 \x01(\tH\x05\x88\x01\x01\x12\x16\n\x06region\x18\xf4\xcd\xa0\x42 \x01(\tH\x06\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x07\x88\x01\x01\x12\x16\n\x06status\x18\xf2\x9f\xb7V \x01(\tH\x08\x88\x01\x01\x12\x1c\n\x0csupports_pzs\x18\xee\xf6\x85( \x01(\x08H\t\x88\x01\x01\"4\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\x0b\n\x04\x44OWN\x10\xa2\xb9\x80\x01\x12\x07\n\x02UP\x10\x9b\x15\x42\x15\n\x13_creation_timestampB\r\n\x0b_deprecatedB\x0e\n\x0c_descriptionB\x05\n\x03_idB\x07\n\x05_kindB\x07\n\x05_nameB\t\n\x07_regionB\x0c\n\n_self_linkB\t\n\x07_statusB\x0f\n\r_supports_pzs\"\x99\x02\n\x08ZoneList\x12\x10\n\x02id\x18\x9b\x1a \x01(\tH\x00\x88\x01\x01\x12/\n\x05items\x18\xc0\xcf\xf7/ \x03(\x0b\x32\x1d.google.cloud.compute.v1.Zone\x12\x14\n\x04kind\x18\x94\xf7\xc8\x01 \x01(\tH\x01\x88\x01\x01\x12\x1f\n\x0fnext_page_token\x18\x95\xba\x86& \x01(\tH\x02\x88\x01\x01\x12\x1a\n\tself_link\x18\x8d\x92\xc5\xd9\x01 \x01(\tH\x03\x88\x01\x01\x12\x39\n\x07warning\x18\x9c\xdf\x96\x18 \x01(\x0b\x32 .google.cloud.compute.v1.WarningH\x04\x88\x01\x01\x42\x05\n\x03_idB\x07\n\x05_kindB\x12\n\x10_next_page_tokenB\x0c\n\n_self_linkB\n\n\x08_warning\"\xcd\x01\n\x14ZoneSetLabelsRequest\x12!\n\x11label_fingerprint\x18\x99\xf0\xf7T \x01(\tH\x00\x88\x01\x01\x12M\n\x06labels\x18\xff\xbf\xc1\xee\x01 \x03(\x0b\x32\x39.google.cloud.compute.v1.ZoneSetLabelsRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x14\n\x12_label_fingerprint\"\xb7\x01\n\x1aZoneSetNestedPolicyRequest\x12\x36\n\x08\x62indings\x18\x8e\xc5\xa4\xc0\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Binding\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x06policy\x18\xb2\xca\xb6+ \x01(\x0b\x32\x1f.google.cloud.compute.v1.PolicyH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_policy\"\xb1\x01\n\x14ZoneSetPolicyRequest\x12\x36\n\x08\x62indings\x18\x8e\xc5\xa4\xc0\x01 \x03(\x0b\x32 .google.cloud.compute.v1.Binding\x12\x14\n\x04\x65tag\x18\x95\xd2\xbe\x01 \x01(\tH\x00\x88\x01\x01\x12\x37\n\x06policy\x18\xb2\xca\xb6+ \x01(\x0b\x32\x1f.google.cloud.compute.v1.PolicyH\x01\x88\x01\x01\x42\x07\n\x05_etagB\t\n\x07_policy2\xb3\x06\n\x10\x41\x63\x63\x65leratorTypes\x12\xd6\x01\n\x0e\x41ggregatedList\x12>.google.cloud.compute.v1.AggregatedListAcceleratorTypesRequest\x1a\x36.google.cloud.compute.v1.AcceleratorTypeAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/acceleratorTypes\x12\xdc\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetAcceleratorTypeRequest\x1a(.google.cloud.compute.v1.AcceleratorType\"w\xda\x41\x1dproject,zone,accelerator_type\x82\xd3\xe4\x93\x02Q\x12O/compute/v1/projects/{project}/zones/{zone}/acceleratorTypes/{accelerator_type}\x12\xbf\x01\n\x04List\x12\x34.google.cloud.compute.v1.ListAcceleratorTypesRequest\x1a,.google.cloud.compute.v1.AcceleratorTypeList\"S\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02>\x12project,zone,disk,disks_add_resource_policies_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02|\"L/compute/v1/projects/{project}/zones/{zone}/disks/{disk}/addResourcePolicies:,disks_add_resource_policies_request_resource\x12\xb5\x01\n\x0e\x41ggregatedList\x12\x33.google.cloud.compute.v1.AggregatedListDisksRequest\x1a+.google.cloud.compute.v1.DiskAggregatedList\"A\xda\x41\x07project\x82\xd3\xe4\x93\x02\x31\x12//compute/v1/projects/{project}/aggregated/disks\x12\x8e\x02\n\nBulkInsert\x12..google.cloud.compute.v1.BulkInsertDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x01\xda\x41/project,zone,bulk_insert_disk_resource_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x62\".google.cloud.compute.v1.ListAssociationsFirewallPolicyRequest\x1a\x41.google.cloud.compute.v1.FirewallPoliciesListAssociationsResponse\"I\xda\x41\x00\x82\xd3\xe4\x93\x02@\x12>/compute/v1/locations/global/firewallPolicies/listAssociations\x12\xe8\x01\n\x04Move\x12\x32.google.cloud.compute.v1.MoveFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x87\x01\xda\x41\x19\x66irewall_policy,parent_id\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02\x46\"D/compute/v1/locations/global/firewallPolicies/{firewall_policy}/move\x12\x8e\x02\n\x05Patch\x12\x33.google.cloud.compute.v1.PatchFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x01\xda\x41(firewall_policy,firewall_policy_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02[2?/compute/v1/locations/global/firewallPolicies/{firewall_policy}:\x18\x66irewall_policy_resource\x12\xaa\x02\n\tPatchRule\x12\x37.google.cloud.compute.v1.PatchRuleFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xbf\x01\xda\x41-firewall_policy,firewall_policy_rule_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02j\"I/compute/v1/locations/global/firewallPolicies/{firewall_policy}/patchRule:\x1d\x66irewall_policy_rule_resource\x12\x85\x02\n\x11RemoveAssociation\x12?.google.cloud.compute.v1.RemoveAssociationFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x8a\x01\xda\x41\x0f\x66irewall_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02S\"Q/compute/v1/locations/global/firewallPolicies/{firewall_policy}/removeAssociation\x12\xf0\x01\n\nRemoveRule\x12\x38.google.cloud.compute.v1.RemoveRuleFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x83\x01\xda\x41\x0f\x66irewall_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02L\"J/compute/v1/locations/global/firewallPolicies/{firewall_policy}/removeRule\x12\xa7\x02\n\x0cSetIamPolicy\x12:.google.cloud.compute.v1.SetIamPolicyFirewallPolicyRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xb9\x01\xda\x41\x38resource,global_organization_set_policy_request_resource\x82\xd3\xe4\x93\x02x\"E/compute/v1/locations/global/firewallPolicies/{resource}/setIamPolicy:/global_organization_set_policy_request_resource\x12\xae\x02\n\x12TestIamPermissions\x12@.google.cloud.compute.v1.TestIamPermissionsFirewallPolicyRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xa3\x01\xda\x41*resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02p\"K/compute/v1/locations/global/firewallPolicies/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x84\r\n\tFirewalls\x12\xc6\x01\n\x06\x44\x65lete\x12..google.cloud.compute.v1.DeleteFirewallRequest\x1a\".google.cloud.compute.v1.Operation\"h\xda\x41\x10project,firewall\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02<*:/compute/v1/projects/{project}/global/firewalls/{firewall}\x12\xac\x01\n\x03Get\x12+.google.cloud.compute.v1.GetFirewallRequest\x1a!.google.cloud.compute.v1.Firewall\"U\xda\x41\x10project,firewall\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/global/firewalls/{firewall}\x12\xd7\x01\n\x06Insert\x12..google.cloud.compute.v1.InsertFirewallRequest\x1a\".google.cloud.compute.v1.Operation\"y\xda\x41\x19project,firewall_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x44\"//compute/v1/projects/{project}/global/firewalls:\x11\x66irewall_resource\x12\x9f\x01\n\x04List\x12-.google.cloud.compute.v1.ListFirewallsRequest\x1a%.google.cloud.compute.v1.FirewallList\"A\xda\x41\x07project\x82\xd3\xe4\x93\x02\x31\x12//compute/v1/projects/{project}/global/firewalls\x12\xea\x01\n\x05Patch\x12-.google.cloud.compute.v1.PatchFirewallRequest\x1a\".google.cloud.compute.v1.Operation\"\x8d\x01\xda\x41\"project,firewall,firewall_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02O2:/compute/v1/projects/{project}/global/firewalls/{firewall}:\x11\x66irewall_resource\x12\xb2\x02\n\x12TestIamPermissions\x12:.google.cloud.compute.v1.TestIamPermissionsFirewallRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xad\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02r\"M/compute/v1/projects/{project}/global/firewalls/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xec\x01\n\x06Update\x12..google.cloud.compute.v1.UpdateFirewallRequest\x1a\".google.cloud.compute.v1.Operation\"\x8d\x01\xda\x41\"project,firewall,firewall_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02O\x1a:/compute/v1/projects/{project}/global/firewalls/{firewall}:\x11\x66irewall_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x99\x11\n\x0f\x46orwardingRules\x12\xd3\x01\n\x0e\x41ggregatedList\x12=.google.cloud.compute.v1.AggregatedListForwardingRulesRequest\x1a\x35.google.cloud.compute.v1.ForwardingRuleAggregatedList\"K\xda\x41\x07project\x82\xd3\xe4\x93\x02;\x12\x39/compute/v1/projects/{project}/aggregated/forwardingRules\x12\xf2\x01\n\x06\x44\x65lete\x12\x34.google.cloud.compute.v1.DeleteForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\x8d\x01\xda\x41\x1eproject,region,forwarding_rule\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S*Q/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}\x12\xdd\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetForwardingRuleRequest\x1a\'.google.cloud.compute.v1.ForwardingRule\"z\xda\x41\x1eproject,region,forwarding_rule\x82\xd3\xe4\x93\x02S\x12Q/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}\x12\x83\x02\n\x06Insert\x12\x34.google.cloud.compute.v1.InsertForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\x9e\x01\xda\x41\'project,region,forwarding_rule_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02[\"?/compute/v1/projects/{project}/regions/{region}/forwardingRules:\x18\x66orwarding_rule_resource\x12\xc2\x01\n\x04List\x12\x33.google.cloud.compute.v1.ListForwardingRulesRequest\x1a+.google.cloud.compute.v1.ForwardingRuleList\"X\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/projects/{project}/regions/{region}/forwardingRules\x12\xa3\x02\n\x05Patch\x12\x33.google.cloud.compute.v1.PatchForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\xc0\x01\xda\x41\x37project,region,forwarding_rule,forwarding_rule_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02m2Q/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}:\x18\x66orwarding_rule_resource\x12\xbb\x02\n\tSetLabels\x12\x37.google.cloud.compute.v1.SetLabelsForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\xd0\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02z\"T/compute/v1/projects/{project}/regions/{region}/forwardingRules/{resource}/setLabels:\"region_set_labels_request_resource\x12\xb7\x02\n\tSetTarget\x12\x37.google.cloud.compute.v1.SetTargetForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\xcc\x01\xda\x41\x38project,region,forwarding_rule,target_reference_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02x\"[/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}/setTarget:\x19target_reference_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xdf\x0e\n\x12\x46utureReservations\x12\xe5\x01\n\x0e\x41ggregatedList\x12@.google.cloud.compute.v1.AggregatedListFutureReservationsRequest\x1a\x41.google.cloud.compute.v1.FutureReservationsAggregatedListResponse\"N\xda\x41\x07project\x82\xd3\xe4\x93\x02>\x12/compute/v1/projects/{project}/zones/{zone}/futureReservations:\x1b\x66uture_reservation_resource\x12\xce\x01\n\x04List\x12\x36.google.cloud.compute.v1.ListFutureReservationsRequest\x1a\x37.google.cloud.compute.v1.FutureReservationsListResponse\"U\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02@\x12>/compute/v1/projects/{project}/zones/{zone}/futureReservations\x12\xaf\x02\n\x06Update\x12\x37.google.cloud.compute.v1.UpdateFutureReservationRequest\x1a\".google.cloud.compute.v1.Operation\"\xc7\x01\xda\x41;project,zone,future_reservation,future_reservation_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02r2S/compute/v1/projects/{project}/zones/{zone}/futureReservations/{future_reservation}:\x1b\x66uture_reservation_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x83\x0e\n\x0fGlobalAddresses\x12\xc9\x01\n\x06\x44\x65lete\x12\x33.google.cloud.compute.v1.DeleteGlobalAddressRequest\x1a\".google.cloud.compute.v1.Operation\"f\xda\x41\x0fproject,address\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02;*9/compute/v1/projects/{project}/global/addresses/{address}\x12\xae\x01\n\x03Get\x12\x30.google.cloud.compute.v1.GetGlobalAddressRequest\x1a .google.cloud.compute.v1.Address\"S\xda\x41\x0fproject,address\x82\xd3\xe4\x93\x02;\x12\x39/compute/v1/projects/{project}/global/addresses/{address}\x12\xda\x01\n\x06Insert\x12\x33.google.cloud.compute.v1.InsertGlobalAddressRequest\x1a\".google.cloud.compute.v1.Operation\"w\xda\x41\x18project,address_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x43\"//compute/v1/projects/{project}/global/addresses:\x10\x61\x64\x64ress_resource\x12\xa4\x01\n\x04List\x12\x33.google.cloud.compute.v1.ListGlobalAddressesRequest\x1a$.google.cloud.compute.v1.AddressList\"A\xda\x41\x07project\x82\xd3\xe4\x93\x02\x31\x12//compute/v1/projects/{project}/global/addresses\x12\x9a\x02\n\x04Move\x12\x31.google.cloud.compute.v1.MoveGlobalAddressRequest\x1a\".google.cloud.compute.v1.Operation\"\xba\x01\xda\x41\x36project,address,global_addresses_move_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02h\">/compute/v1/projects/{project}/global/addresses/{address}/move:&global_addresses_move_request_resource\x12\xa3\x02\n\tSetLabels\x12\x36.google.cloud.compute.v1.SetLabelsGlobalAddressRequest\x1a\".google.cloud.compute.v1.Operation\"\xb9\x01\xda\x41\x33project,resource,global_set_labels_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02j\"D/compute/v1/projects/{project}/global/addresses/{resource}/setLabels:\"global_set_labels_request_resource\x12\xb7\x02\n\x12TestIamPermissions\x12?.google.cloud.compute.v1.TestIamPermissionsGlobalAddressRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xad\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02r\"M/compute/v1/projects/{project}/global/addresses/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xfb\x0e\n\x15GlobalForwardingRules\x12\xe6\x01\n\x06\x44\x65lete\x12:.google.cloud.compute.v1.DeleteGlobalForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"|\xda\x41\x17project,forwarding_rule\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02I*G/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}\x12\xd2\x01\n\x03Get\x12\x37.google.cloud.compute.v1.GetGlobalForwardingRuleRequest\x1a\'.google.cloud.compute.v1.ForwardingRule\"i\xda\x41\x17project,forwarding_rule\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}\x12\xf8\x01\n\x06Insert\x12:.google.cloud.compute.v1.InsertGlobalForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\x8d\x01\xda\x41 project,forwarding_rule_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02Q\"5/compute/v1/projects/{project}/global/forwardingRules:\x18\x66orwarding_rule_resource\x12\xb7\x01\n\x04List\x12\x39.google.cloud.compute.v1.ListGlobalForwardingRulesRequest\x1a+.google.cloud.compute.v1.ForwardingRuleList\"G\xda\x41\x07project\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/global/forwardingRules\x12\x98\x02\n\x05Patch\x12\x39.google.cloud.compute.v1.PatchGlobalForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\xaf\x01\xda\x41\x30project,forwarding_rule,forwarding_rule_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x63\x32G/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}:\x18\x66orwarding_rule_resource\x12\xb0\x02\n\tSetLabels\x12=.google.cloud.compute.v1.SetLabelsGlobalForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\xbf\x01\xda\x41\x33project,resource,global_set_labels_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02p\"J/compute/v1/projects/{project}/global/forwardingRules/{resource}/setLabels:\"global_set_labels_request_resource\x12\xac\x02\n\tSetTarget\x12=.google.cloud.compute.v1.SetTargetGlobalForwardingRuleRequest\x1a\".google.cloud.compute.v1.Operation\"\xbb\x01\xda\x41\x31project,forwarding_rule,target_reference_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02n\"Q/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}/setTarget:\x19target_reference_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xac\x12\n\x1bGlobalNetworkEndpointGroups\x12\xbc\x03\n\x16\x41ttachNetworkEndpoints\x12P.google.cloud.compute.v1.AttachNetworkEndpointsGlobalNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x02\xda\x41_project,network_endpoint_group,global_network_endpoint_groups_attach_endpoints_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\xaf\x01\"k/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}/attachNetworkEndpoints:@global_network_endpoint_groups_attach_endpoints_request_resource\x12\x81\x02\n\x06\x44\x65lete\x12@.google.cloud.compute.v1.DeleteGlobalNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\x1eproject,network_endpoint_group\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02V*T/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}\x12\xbc\x03\n\x16\x44\x65tachNetworkEndpoints\x12P.google.cloud.compute.v1.DetachNetworkEndpointsGlobalNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x02\xda\x41_project,network_endpoint_group,global_network_endpoint_groups_detach_endpoints_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\xaf\x01\"k/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}/detachNetworkEndpoints:@global_network_endpoint_groups_detach_endpoints_request_resource\x12\xf2\x01\n\x03Get\x12=.google.cloud.compute.v1.GetGlobalNetworkEndpointGroupRequest\x1a-.google.cloud.compute.v1.NetworkEndpointGroup\"}\xda\x41\x1eproject,network_endpoint_group\x82\xd3\xe4\x93\x02V\x12T/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}\x12\x92\x02\n\x06Insert\x12@.google.cloud.compute.v1.InsertGlobalNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41\'project,network_endpoint_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02^\";/compute/v1/projects/{project}/global/networkEndpointGroups:\x1fnetwork_endpoint_group_resource\x12\xc9\x01\n\x04List\x12?.google.cloud.compute.v1.ListGlobalNetworkEndpointGroupsRequest\x1a\x31.google.cloud.compute.v1.NetworkEndpointGroupList\"M\xda\x41\x07project\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/global/networkEndpointGroups\x12\xc0\x02\n\x14ListNetworkEndpoints\x12O.google.cloud.compute.v1.ListNetworkEndpointsGlobalNetworkEndpointGroupsRequest\x1a\x42.google.cloud.compute.v1.NetworkEndpointGroupsListNetworkEndpoints\"\x92\x01\xda\x41\x1eproject,network_endpoint_group\x82\xd3\xe4\x93\x02k\"i/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}/listNetworkEndpoints\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd0\x08\n\x10GlobalOperations\x12\xca\x01\n\x0e\x41ggregatedList\x12>.google.cloud.compute.v1.AggregatedListGlobalOperationsRequest\x1a\x30.google.cloud.compute.v1.OperationAggregatedList\"F\xda\x41\x07project\x82\xd3\xe4\x93\x02\x36\x12\x34/compute/v1/projects/{project}/aggregated/operations\x12\xd1\x01\n\x06\x44\x65lete\x12\x35.google.cloud.compute.v1.DeleteGlobalOperationRequest\x1a\x36.google.cloud.compute.v1.DeleteGlobalOperationResponse\"X\xda\x41\x11project,operation\x82\xd3\xe4\x93\x02>*\x12.google.cloud.compute.v1.GetGlobalOrganizationOperationRequest\x1a\".google.cloud.compute.v1.Operation\"J\xda\x41\toperation\x90N\x01\x82\xd3\xe4\x93\x02\x35\x12\x33/compute/v1/locations/global/operations/{operation}\x12\xa4\x01\n\x04List\x12@.google.cloud.compute.v1.ListGlobalOrganizationOperationsRequest\x1a&.google.cloud.compute.v1.OperationList\"2\xda\x41\x00\x82\xd3\xe4\x93\x02)\x12\'/compute/v1/locations/global/operations\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd1\x0b\n\x1dGlobalPublicDelegatedPrefixes\x12\x87\x02\n\x06\x44\x65lete\x12\x42.google.cloud.compute.v1.DeleteGlobalPublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\x94\x01\xda\x41\x1fproject,public_delegated_prefix\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02Y*W/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{public_delegated_prefix}\x12\xfa\x01\n\x03Get\x12?.google.cloud.compute.v1.GetGlobalPublicDelegatedPrefixeRequest\x1a..google.cloud.compute.v1.PublicDelegatedPrefix\"\x81\x01\xda\x41\x1fproject,public_delegated_prefix\x82\xd3\xe4\x93\x02Y\x12W/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{public_delegated_prefix}\x12\x98\x02\n\x06Insert\x12\x42.google.cloud.compute.v1.InsertGlobalPublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xa5\x01\xda\x41(project,public_delegated_prefix_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x61\"=/compute/v1/projects/{project}/global/publicDelegatedPrefixes: public_delegated_prefix_resource\x12\xce\x01\n\x04List\x12\x41.google.cloud.compute.v1.ListGlobalPublicDelegatedPrefixesRequest\x1a\x32.google.cloud.compute.v1.PublicDelegatedPrefixList\"O\xda\x41\x07project\x82\xd3\xe4\x93\x02?\x12=/compute/v1/projects/{project}/global/publicDelegatedPrefixes\x12\xc8\x02\n\x05Patch\x12\x41.google.cloud.compute.v1.PatchGlobalPublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xd7\x01\xda\x41@project,public_delegated_prefix,public_delegated_prefix_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02{2W/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{public_delegated_prefix}: public_delegated_prefix_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xbe\x0f\n\x0cHealthChecks\x12\xcb\x01\n\x0e\x41ggregatedList\x12:.google.cloud.compute.v1.AggregatedListHealthChecksRequest\x1a\x33.google.cloud.compute.v1.HealthChecksAggregatedList\"H\xda\x41\x07project\x82\xd3\xe4\x93\x02\x38\x12\x36/compute/v1/projects/{project}/aggregated/healthChecks\x12\xd4\x01\n\x06\x44\x65lete\x12\x31.google.cloud.compute.v1.DeleteHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"s\xda\x41\x14project,health_check\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x43*A/compute/v1/projects/{project}/global/healthChecks/{health_check}\x12\xbd\x01\n\x03Get\x12..google.cloud.compute.v1.GetHealthCheckRequest\x1a$.google.cloud.compute.v1.HealthCheck\"`\xda\x41\x14project,health_check\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/global/healthChecks/{health_check}\x12\xe6\x01\n\x06Insert\x12\x31.google.cloud.compute.v1.InsertHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\x84\x01\xda\x41\x1dproject,health_check_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02K\"2/compute/v1/projects/{project}/global/healthChecks:\x15health_check_resource\x12\xa8\x01\n\x04List\x12\x30.google.cloud.compute.v1.ListHealthChecksRequest\x1a(.google.cloud.compute.v1.HealthCheckList\"D\xda\x41\x07project\x82\xd3\xe4\x93\x02\x34\x12\x32/compute/v1/projects/{project}/global/healthChecks\x12\x80\x02\n\x05Patch\x12\x30.google.cloud.compute.v1.PatchHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\xa0\x01\xda\x41*project,health_check,health_check_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02Z2A/compute/v1/projects/{project}/global/healthChecks/{health_check}:\x15health_check_resource\x12\xb8\x02\n\x12TestIamPermissions\x12=.google.cloud.compute.v1.TestIamPermissionsHealthCheckRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb0\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02u\"P/compute/v1/projects/{project}/global/healthChecks/{resource}/testIamPermissions:!test_permissions_request_resource\x12\x82\x02\n\x06Update\x12\x31.google.cloud.compute.v1.UpdateHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\xa0\x01\xda\x41*project,health_check,health_check_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02Z\x1a\x41/compute/v1/projects/{project}/global/healthChecks/{health_check}:\x15health_check_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x84\x03\n\x10ImageFamilyViews\x12\xc8\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetImageFamilyViewRequest\x1a(.google.cloud.compute.v1.ImageFamilyView\"c\xda\x41\x13project,zone,family\x82\xd3\xe4\x93\x02G\x12\x45/compute/v1/projects/{project}/zones/{zone}/imageFamilyViews/{family}\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xfc\x13\n\x06Images\x12\xba\x01\n\x06\x44\x65lete\x12+.google.cloud.compute.v1.DeleteImageRequest\x1a\".google.cloud.compute.v1.Operation\"_\xda\x41\rproject,image\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x36*4/compute/v1/projects/{project}/global/images/{image}\x12\x84\x02\n\tDeprecate\x12..google.cloud.compute.v1.DeprecateImageRequest\x1a\".google.cloud.compute.v1.Operation\"\xa2\x01\xda\x41)project,image,deprecation_status_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02]\">/compute/v1/projects/{project}/global/images/{image}/deprecate:\x1b\x64\x65precation_status_resource\x12\x9d\x01\n\x03Get\x12(.google.cloud.compute.v1.GetImageRequest\x1a\x1e.google.cloud.compute.v1.Image\"L\xda\x41\rproject,image\x82\xd3\xe4\x93\x02\x36\x12\x34/compute/v1/projects/{project}/global/images/{image}\x12\xba\x01\n\rGetFromFamily\x12\x32.google.cloud.compute.v1.GetFromFamilyImageRequest\x1a\x1e.google.cloud.compute.v1.Image\"U\xda\x41\x0eproject,family\x82\xd3\xe4\x93\x02>\x12\",/compute/v1/projects/{project}/global/images:\x0eimage_resource\x12\x96\x01\n\x04List\x12*.google.cloud.compute.v1.ListImagesRequest\x1a\".google.cloud.compute.v1.ImageList\">\xda\x41\x07project\x82\xd3\xe4\x93\x02.\x12,/compute/v1/projects/{project}/global/images\x12\xd7\x01\n\x05Patch\x12*.google.cloud.compute.v1.PatchImageRequest\x1a\".google.cloud.compute.v1.Operation\"~\xda\x41\x1cproject,image,image_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x46\x32\x34/compute/v1/projects/{project}/global/images/{image}:\x0eimage_resource\x12\x8b\x02\n\x0cSetIamPolicy\x12\x31.google.cloud.compute.v1.SetIamPolicyImageRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xa6\x01\xda\x41\x33project,resource,global_set_policy_request_resource\x82\xd3\xe4\x93\x02j\"D/compute/v1/projects/{project}/global/images/{resource}/setIamPolicy:\"global_set_policy_request_resource\x12\x98\x02\n\tSetLabels\x12..google.cloud.compute.v1.SetLabelsImageRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x01\xda\x41\x33project,resource,global_set_labels_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02g\"A/compute/v1/projects/{project}/global/images/{resource}/setLabels:\"global_set_labels_request_resource\x12\xac\x02\n\x12TestIamPermissions\x12\x37.google.cloud.compute.v1.TestIamPermissionsImageRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xaa\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02o\"J/compute/v1/projects/{project}/global/images/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xa2\x0e\n\"InstanceGroupManagerResizeRequests\x12\xc9\x02\n\x06\x43\x61ncel\x12G.google.cloud.compute.v1.CancelInstanceGroupManagerResizeRequestRequest\x1a\".google.cloud.compute.v1.Operation\"\xd1\x01\xda\x41\x32project,zone,instance_group_manager,resize_request\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x84\x01\"\x81\x01/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resizeRequests/{resize_request}/cancel\x12\xc0\x02\n\x06\x44\x65lete\x12G.google.cloud.compute.v1.DeleteInstanceGroupManagerResizeRequestRequest\x1a\".google.cloud.compute.v1.Operation\"\xc8\x01\xda\x41\x32project,zone,instance_group_manager,resize_request\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02|*z/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resizeRequests/{resize_request}\x12\xc1\x02\n\x03Get\x12\x44.google.cloud.compute.v1.GetInstanceGroupManagerResizeRequestRequest\x1a:.google.cloud.compute.v1.InstanceGroupManagerResizeRequest\"\xb7\x01\xda\x41\x32project,zone,instance_group_manager,resize_request\x82\xd3\xe4\x93\x02|\x12z/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resizeRequests/{resize_request}\x12\x80\x03\n\x06Insert\x12G.google.cloud.compute.v1.InsertInstanceGroupManagerResizeRequestRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x02\xda\x41Rproject,zone,instance_group_manager,instance_group_manager_resize_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x9b\x01\"i/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resizeRequests:.instance_group_manager_resize_request_resource\x12\xb1\x02\n\x04List\x12\x46.google.cloud.compute.v1.ListInstanceGroupManagerResizeRequestsRequest\x1aG.google.cloud.compute.v1.InstanceGroupManagerResizeRequestsListResponse\"\x97\x01\xda\x41#project,zone,instance_group_manager\x82\xd3\xe4\x93\x02k\x12i/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resizeRequests\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd5\x45\n\x15InstanceGroupManagers\x12\xa1\x03\n\x10\x41\x62\x61ndonInstances\x12\x44.google.cloud.compute.v1.AbandonInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xa2\x02\xda\x41^project,zone,instance_group_manager,instance_group_managers_abandon_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa9\x01\"k/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/abandonInstances::instance_group_managers_abandon_instances_request_resource\x12\xe5\x01\n\x0e\x41ggregatedList\x12\x43.google.cloud.compute.v1.AggregatedListInstanceGroupManagersRequest\x1a;.google.cloud.compute.v1.InstanceGroupManagerAggregatedList\"Q\xda\x41\x07project\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/projects/{project}/aggregated/instanceGroupManagers\x12\xae\x03\n\x17\x41pplyUpdatesToInstances\x12K.google.cloud.compute.v1.ApplyUpdatesToInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x02\xda\x41Zproject,zone,instance_group_manager,instance_group_managers_apply_updates_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xac\x01\"r/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/applyUpdatesToInstances:6instance_group_managers_apply_updates_request_resource\x12\x9c\x03\n\x0f\x43reateInstances\x12\x43.google.cloud.compute.v1.CreateInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x02\xda\x41]project,zone,instance_group_manager,instance_group_managers_create_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa7\x01\"j/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/createInstances:9instance_group_managers_create_instances_request_resource\x12\x84\x02\n\x06\x44\x65lete\x12:.google.cloud.compute.v1.DeleteInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x99\x01\xda\x41#project,zone,instance_group_manager\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\\*Z/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}\x12\x9c\x03\n\x0f\x44\x65leteInstances\x12\x43.google.cloud.compute.v1.DeleteInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x02\xda\x41]project,zone,instance_group_manager,instance_group_managers_delete_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa7\x01\"j/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/deleteInstances:9instance_group_managers_delete_instances_request_resource\x12\xc5\x03\n\x18\x44\x65letePerInstanceConfigs\x12L.google.cloud.compute.v1.DeletePerInstanceConfigsInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x02\xda\x41\x64project,zone,instance_group_manager,instance_group_managers_delete_per_instance_configs_req_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xb7\x01\"s/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/deletePerInstanceConfigs:@instance_group_managers_delete_per_instance_configs_req_resource\x12\xf8\x01\n\x03Get\x12\x37.google.cloud.compute.v1.GetInstanceGroupManagerRequest\x1a-.google.cloud.compute.v1.InstanceGroupManager\"\x88\x01\xda\x41#project,zone,instance_group_manager\x82\xd3\xe4\x93\x02\\\x12Z/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}\x12\x95\x02\n\x06Insert\x12:.google.cloud.compute.v1.InsertInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xaa\x01\xda\x41,project,zone,instance_group_manager_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x64\"A/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers:\x1finstance_group_manager_resource\x12\xce\x01\n\x04List\x12\x39.google.cloud.compute.v1.ListInstanceGroupManagersRequest\x1a\x31.google.cloud.compute.v1.InstanceGroupManagerList\"X\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers\x12\xa5\x02\n\nListErrors\x12?.google.cloud.compute.v1.ListErrorsInstanceGroupManagersRequest\x1a@.google.cloud.compute.v1.InstanceGroupManagersListErrorsResponse\"\x93\x01\xda\x41#project,zone,instance_group_manager\x82\xd3\xe4\x93\x02g\x12\x65/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/listErrors\x12\xcd\x02\n\x14ListManagedInstances\x12I.google.cloud.compute.v1.ListManagedInstancesInstanceGroupManagersRequest\x1aJ.google.cloud.compute.v1.InstanceGroupManagersListManagedInstancesResponse\"\x9d\x01\xda\x41#project,zone,instance_group_manager\x82\xd3\xe4\x93\x02q\"o/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/listManagedInstances\x12\xd1\x02\n\x16ListPerInstanceConfigs\x12K.google.cloud.compute.v1.ListPerInstanceConfigsInstanceGroupManagersRequest\x1aH.google.cloud.compute.v1.InstanceGroupManagersListPerInstanceConfigsResp\"\x9f\x01\xda\x41#project,zone,instance_group_manager\x82\xd3\xe4\x93\x02s\"q/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/listPerInstanceConfigs\x12\xc3\x02\n\x05Patch\x12\x39.google.cloud.compute.v1.PatchInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xda\x01\xda\x41\x43project,zone,instance_group_manager,instance_group_manager_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02}2Z/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}:\x1finstance_group_manager_resource\x12\xc0\x03\n\x17PatchPerInstanceConfigs\x12K.google.cloud.compute.v1.PatchPerInstanceConfigsInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xb3\x02\xda\x41\x63project,zone,instance_group_manager,instance_group_managers_patch_per_instance_configs_req_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xb5\x01\"r/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/patchPerInstanceConfigs:?instance_group_managers_patch_per_instance_configs_req_resource\x12\xa6\x03\n\x11RecreateInstances\x12\x45.google.cloud.compute.v1.RecreateInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xa5\x02\xda\x41_project,zone,instance_group_manager,instance_group_managers_recreate_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xab\x01\"l/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/recreateInstances:;instance_group_managers_recreate_instances_request_resource\x12\x90\x02\n\x06Resize\x12:.google.cloud.compute.v1.ResizeInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xa5\x01\xda\x41(project,zone,instance_group_manager,size\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x63\"a/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resize\x12\x9c\x03\n\x0fResumeInstances\x12\x43.google.cloud.compute.v1.ResumeInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x02\xda\x41]project,zone,instance_group_manager,instance_group_managers_resume_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa7\x01\"j/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resumeInstances:9instance_group_managers_resume_instances_request_resource\x12\xb2\x03\n\x13SetInstanceTemplate\x12G.google.cloud.compute.v1.SetInstanceTemplateInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xad\x02\xda\x41\x62project,zone,instance_group_manager,instance_group_managers_set_instance_template_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xb0\x01\"n/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/setInstanceTemplate:>instance_group_managers_set_instance_template_request_resource\x12\x99\x03\n\x0eSetTargetPools\x12\x42.google.cloud.compute.v1.SetTargetPoolsInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x9e\x02\xda\x41]project,zone,instance_group_manager,instance_group_managers_set_target_pools_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa6\x01\"i/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/setTargetPools:9instance_group_managers_set_target_pools_request_resource\x12\x97\x03\n\x0eStartInstances\x12\x42.google.cloud.compute.v1.StartInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x9c\x02\xda\x41\\project,zone,instance_group_manager,instance_group_managers_start_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa5\x01\"i/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/startInstances:8instance_group_managers_start_instances_request_resource\x12\x92\x03\n\rStopInstances\x12\x41.google.cloud.compute.v1.StopInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\x99\x02\xda\x41[project,zone,instance_group_manager,instance_group_managers_stop_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa3\x01\"h/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/stopInstances:7instance_group_managers_stop_instances_request_resource\x12\xa1\x03\n\x10SuspendInstances\x12\x44.google.cloud.compute.v1.SuspendInstancesInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xa2\x02\xda\x41^project,zone,instance_group_manager,instance_group_managers_suspend_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xa9\x01\"k/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/suspendInstances::instance_group_managers_suspend_instances_request_resource\x12\xc5\x03\n\x18UpdatePerInstanceConfigs\x12L.google.cloud.compute.v1.UpdatePerInstanceConfigsInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x02\xda\x41\x64project,zone,instance_group_manager,instance_group_managers_update_per_instance_configs_req_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\xb7\x01\"s/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/updatePerInstanceConfigs:@instance_group_managers_update_per_instance_configs_req_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xba\x17\n\x0eInstanceGroups\x12\xdf\x02\n\x0c\x41\x64\x64Instances\x12\x39.google.cloud.compute.v1.AddInstancesInstanceGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xef\x01\xda\x41Jproject,zone,instance_group,instance_groups_add_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x8a\x01\"X/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/addInstances:.instance_groups_add_instances_request_resource\x12\xd0\x01\n\x0e\x41ggregatedList\x12<.google.cloud.compute.v1.AggregatedListInstanceGroupsRequest\x1a\x34.google.cloud.compute.v1.InstanceGroupAggregatedList\"J\xda\x41\x07project\x82\xd3\xe4\x93\x02:\x12\x38/compute/v1/projects/{project}/aggregated/instanceGroups\x12\xe6\x01\n\x06\x44\x65lete\x12\x33.google.cloud.compute.v1.DeleteInstanceGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x82\x01\xda\x41\x1bproject,zone,instance_group\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02M*K/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}\x12\xd2\x01\n\x03Get\x12\x30.google.cloud.compute.v1.GetInstanceGroupRequest\x1a&.google.cloud.compute.v1.InstanceGroup\"q\xda\x41\x1bproject,zone,instance_group\x82\xd3\xe4\x93\x02M\x12K/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}\x12\xf7\x01\n\x06Insert\x12\x33.google.cloud.compute.v1.InsertInstanceGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x93\x01\xda\x41$project,zone,instance_group_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02U\":/compute/v1/projects/{project}/zones/{zone}/instanceGroups:\x17instance_group_resource\x12\xb9\x01\n\x04List\x12\x32.google.cloud.compute.v1.ListInstanceGroupsRequest\x1a*.google.cloud.compute.v1.InstanceGroupList\"Q\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/zones/{zone}/instanceGroups\x12\xe6\x02\n\rListInstances\x12;.google.cloud.compute.v1.ListInstancesInstanceGroupsRequest\x1a\x34.google.cloud.compute.v1.InstanceGroupsListInstances\"\xe1\x01\xda\x41Kproject,zone,instance_group,instance_groups_list_instances_request_resource\x82\xd3\xe4\x93\x02\x8c\x01\"Y/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/listInstances:/instance_groups_list_instances_request_resource\x12\xee\x02\n\x0fRemoveInstances\x12<.google.cloud.compute.v1.RemoveInstancesInstanceGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xf8\x01\xda\x41Mproject,zone,instance_group,instance_groups_remove_instances_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x90\x01\"[/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/removeInstances:1instance_groups_remove_instances_request_resource\x12\xe6\x02\n\rSetNamedPorts\x12:.google.cloud.compute.v1.SetNamedPortsInstanceGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xf4\x01\xda\x41Lproject,zone,instance_group,instance_groups_set_named_ports_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x8d\x01\"Y/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/setNamedPorts:0instance_groups_set_named_ports_request_resource\x12\xc7\x02\n\x12TestIamPermissions\x12?.google.cloud.compute.v1.TestIamPermissionsInstanceGroupRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xbd\x01\xda\x41\x37project,zone,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02}\"X/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xcb\x04\n\x17InstanceSettingsService\x12\xb9\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetInstanceSettingRequest\x1a).google.cloud.compute.v1.InstanceSettings\"S\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02>\x12project,zone,instance,network_interface,access_config_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02j\"P/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addAccessConfig:\x16\x61\x63\x63\x65ss_config_resource\x12\xb5\x02\n\x13\x41\x64\x64NetworkInterface\x12;.google.cloud.compute.v1.AddNetworkInterfaceInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xbc\x01\xda\x41\x30project,zone,instance,network_interface_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02r\"T/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addNetworkInterface:\x1anetwork_interface_resource\x12\xe2\x02\n\x13\x41\x64\x64ResourcePolicies\x12;.google.cloud.compute.v1.AddResourcePoliciesInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe9\x01\xda\x41\x46project,zone,instance,instances_add_resource_policies_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x88\x01\"T/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addResourcePolicies:0instances_add_resource_policies_request_resource\x12\xc1\x01\n\x0e\x41ggregatedList\x12\x37.google.cloud.compute.v1.AggregatedListInstancesRequest\x1a/.google.cloud.compute.v1.InstanceAggregatedList\"E\xda\x41\x07project\x82\xd3\xe4\x93\x02\x35\x12\x33/compute/v1/projects/{project}/aggregated/instances\x12\x92\x02\n\nAttachDisk\x12\x32.google.cloud.compute.v1.AttachDiskInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x01\xda\x41,project,zone,instance,attached_disk_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x65\"K/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/attachDisk:\x16\x61ttached_disk_resource\x12\x9e\x02\n\nBulkInsert\x12\x32.google.cloud.compute.v1.BulkInsertInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xb7\x01\xda\x41\x33project,zone,bulk_insert_instance_resource_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02j\"@/compute/v1/projects/{project}/zones/{zone}/instances/bulkInsert:&bulk_insert_instance_resource_resource\x12\xcf\x01\n\x06\x44\x65lete\x12..google.cloud.compute.v1.DeleteInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"q\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x42*@/compute/v1/projects/{project}/zones/{zone}/instances/{instance}\x12\x9b\x02\n\x12\x44\x65leteAccessConfig\x12:.google.cloud.compute.v1.DeleteAccessConfigInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xa4\x01\xda\x41\x35project,zone,instance,access_config,network_interface\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02U\"S/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/deleteAccessConfig\x12\x9e\x02\n\x16\x44\x65leteNetworkInterface\x12>.google.cloud.compute.v1.DeleteNetworkInterfaceInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x01\xda\x41,project,zone,instance,network_interface_name\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02Y\"W/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/deleteNetworkInterface\x12\xef\x01\n\nDetachDisk\x12\x32.google.cloud.compute.v1.DetachDiskInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x01\xda\x41!project,zone,instance,device_name\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02M\"K/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/detachDisk\x12\xb7\x01\n\x03Get\x12+.google.cloud.compute.v1.GetInstanceRequest\x1a!.google.cloud.compute.v1.Instance\"`\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/zones/{zone}/instances/{instance}\x12\xa2\x02\n\x15GetEffectiveFirewalls\x12=.google.cloud.compute.v1.GetEffectiveFirewallsInstanceRequest\x1a?.google.cloud.compute.v1.InstancesGetEffectiveFirewallsResponse\"\x88\x01\xda\x41\'project,zone,instance,network_interface\x82\xd3\xe4\x93\x02X\x12V/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getEffectiveFirewalls\x12\xef\x01\n\x12GetGuestAttributes\x12:.google.cloud.compute.v1.GetGuestAttributesInstanceRequest\x1a(.google.cloud.compute.v1.GuestAttributes\"s\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02U\x12S/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getGuestAttributes\x12\xd4\x01\n\x0cGetIamPolicy\x12\x34.google.cloud.compute.v1.GetIamPolicyInstanceRequest\x1a\x1f.google.cloud.compute.v1.Policy\"m\xda\x41\x15project,zone,resource\x82\xd3\xe4\x93\x02O\x12M/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/getIamPolicy\x12\xd8\x01\n\rGetScreenshot\x12\x35.google.cloud.compute.v1.GetScreenshotInstanceRequest\x1a#.google.cloud.compute.v1.Screenshot\"k\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02M\x12K/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/screenshot\x12\xea\x01\n\x13GetSerialPortOutput\x12;.google.cloud.compute.v1.GetSerialPortOutputInstanceRequest\x1a).google.cloud.compute.v1.SerialPortOutput\"k\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02M\x12K/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/serialPort\x12\x93\x02\n\x1bGetShieldedInstanceIdentity\x12\x43.google.cloud.compute.v1.GetShieldedInstanceIdentityInstanceRequest\x1a\x31.google.cloud.compute.v1.ShieldedInstanceIdentity\"|\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02^\x12\\/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getShieldedInstanceIdentity\x12\xe1\x01\n\x06Insert\x12..google.cloud.compute.v1.InsertInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x82\x01\xda\x41\x1eproject,zone,instance_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02J\"5/compute/v1/projects/{project}/zones/{zone}/instances:\x11instance_resource\x12\xaa\x01\n\x04List\x12-.google.cloud.compute.v1.ListInstancesRequest\x1a%.google.cloud.compute.v1.InstanceList\"L\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/zones/{zone}/instances\x12\xe3\x01\n\rListReferrers\x12\x36.google.cloud.compute.v1.ListReferrersInstancesRequest\x1a..google.cloud.compute.v1.InstanceListReferrers\"j\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02L\x12J/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/referrers\x12\xfb\x01\n\x12PerformMaintenance\x12:.google.cloud.compute.v1.PerformMaintenanceInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x84\x01\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02U\"S/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/performMaintenance\x12\xf1\x02\n\x16RemoveResourcePolicies\x12>.google.cloud.compute.v1.RemoveResourcePoliciesInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xf2\x01\xda\x41Iproject,zone,instance,instances_remove_resource_policies_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x8e\x01\"W/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/removeResourcePolicies:3instances_remove_resource_policies_request_resource\x12\xdf\x02\n\x12ReportHostAsFaulty\x12:.google.cloud.compute.v1.ReportHostAsFaultyInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe8\x01\xda\x41\x46project,zone,instance,instances_report_host_as_faulty_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x87\x01\"S/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/reportHostAsFaulty:0instances_report_host_as_faulty_request_resource\x12\xd3\x01\n\x05Reset\x12-.google.cloud.compute.v1.ResetInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"w\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02H\"F/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/reset\x12\xd6\x01\n\x06Resume\x12..google.cloud.compute.v1.ResumeInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"x\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02I\"G/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/resume\x12\x96\x02\n\x17SendDiagnosticInterrupt\x12?.google.cloud.compute.v1.SendDiagnosticInterruptInstanceRequest\x1a@.google.cloud.compute.v1.SendDiagnosticInterruptInstanceResponse\"x\xda\x41\x15project,zone,instance\x82\xd3\xe4\x93\x02Z\"X/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/sendDiagnosticInterrupt\x12\x84\x02\n\x15SetDeletionProtection\x12=.google.cloud.compute.v1.SetDeletionProtectionInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x87\x01\xda\x41\x15project,zone,resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02X\"V/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/setDeletionProtection\x12\x90\x02\n\x11SetDiskAutoDelete\x12\x39.google.cloud.compute.v1.SetDiskAutoDeleteInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x9b\x01\xda\x41-project,zone,instance,auto_delete,device_name\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02T\"R/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete\x12\x98\x02\n\x0cSetIamPolicy\x12\x34.google.cloud.compute.v1.SetIamPolicyInstanceRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xb0\x01\xda\x41\x36project,zone,resource,zone_set_policy_request_resource\x82\xd3\xe4\x93\x02q\"M/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/setIamPolicy: zone_set_policy_request_resource\x12\xad\x02\n\tSetLabels\x12\x31.google.cloud.compute.v1.SetLabelsInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xc8\x01\xda\x41;project,zone,instance,instances_set_labels_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02s\"J/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setLabels:%instances_set_labels_request_resource\x12\xe2\x02\n\x13SetMachineResources\x12;.google.cloud.compute.v1.SetMachineResourcesInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe9\x01\xda\x41\x46project,zone,instance,instances_set_machine_resources_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x88\x01\"T/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMachineResources:0instances_set_machine_resources_request_resource\x12\xc8\x02\n\x0eSetMachineType\x12\x36.google.cloud.compute.v1.SetMachineTypeInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xd9\x01\xda\x41\x41project,zone,instance,instances_set_machine_type_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02~\"O/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMachineType:+instances_set_machine_type_request_resource\x12\x8b\x02\n\x0bSetMetadata\x12\x33.google.cloud.compute.v1.SetMetadataInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xa2\x01\xda\x41\'project,zone,instance,metadata_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x61\"L/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMetadata:\x11metadata_resource\x12\xda\x02\n\x11SetMinCpuPlatform\x12\x39.google.cloud.compute.v1.SetMinCpuPlatformInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe5\x01\xda\x41\x45project,zone,instance,instances_set_min_cpu_platform_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x85\x01\"R/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform:/instances_set_min_cpu_platform_request_resource\x12\xa3\x02\n\x07SetName\x12/.google.cloud.compute.v1.SetNameInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xc2\x01\xda\x41\x39project,zone,instance,instances_set_name_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02o\"H/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setName:#instances_set_name_request_resource\x12\x95\x02\n\rSetScheduling\x12\x35.google.cloud.compute.v1.SetSchedulingInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xa8\x01\xda\x41)project,zone,instance,scheduling_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x65\"N/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setScheduling:\x13scheduling_resource\x12\xd8\x02\n\x11SetSecurityPolicy\x12\x39.google.cloud.compute.v1.SetSecurityPolicyInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe3\x01\xda\x41\x44project,zone,instance,instances_set_security_policy_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x84\x01\"R/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setSecurityPolicy:.instances_set_security_policy_request_resource\x12\xd8\x02\n\x11SetServiceAccount\x12\x39.google.cloud.compute.v1.SetServiceAccountInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe3\x01\xda\x41\x44project,zone,instance,instances_set_service_account_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x84\x01\"R/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setServiceAccount:.instances_set_service_account_request_resource\x12\x85\x03\n\"SetShieldedInstanceIntegrityPolicy\x12J.google.cloud.compute.v1.SetShieldedInstanceIntegrityPolicyInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xee\x01\xda\x41\x41project,zone,instance,shielded_instance_integrity_policy_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x92\x01\x32\x63/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setShieldedInstanceIntegrityPolicy:+shielded_instance_integrity_policy_resource\x12\xf7\x01\n\x07SetTags\x12/.google.cloud.compute.v1.SetTagsInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x96\x01\xda\x41#project,zone,instance,tags_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02Y\"H/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setTags:\rtags_resource\x12\x8d\x02\n\x18SimulateMaintenanceEvent\x12@.google.cloud.compute.v1.SimulateMaintenanceEventInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x8a\x01\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02[\"Y/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent\x12\xd3\x01\n\x05Start\x12-.google.cloud.compute.v1.StartInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"w\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02H\"F/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/start\x12\xf3\x02\n\x16StartWithEncryptionKey\x12>.google.cloud.compute.v1.StartWithEncryptionKeyInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xf4\x01\xda\x41Jproject,zone,instance,instances_start_with_encryption_key_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x8f\x01\"W/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey:4instances_start_with_encryption_key_request_resource\x12\xd0\x01\n\x04Stop\x12,.google.cloud.compute.v1.StopInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"v\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02G\"E/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/stop\x12\xd9\x01\n\x07Suspend\x12/.google.cloud.compute.v1.SuspendInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"y\xda\x41\x15project,zone,instance\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02J\"H/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/suspend\x12\xbd\x02\n\x12TestIamPermissions\x12:.google.cloud.compute.v1.TestIamPermissionsInstanceRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb8\x01\xda\x41\x37project,zone,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02x\"S/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xf5\x01\n\x06Update\x12..google.cloud.compute.v1.UpdateInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\x96\x01\xda\x41\'project,zone,instance,instance_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02U\x1a@/compute/v1/projects/{project}/zones/{zone}/instances/{instance}:\x11instance_resource\x12\xbc\x02\n\x12UpdateAccessConfig\x12:.google.cloud.compute.v1.UpdateAccessConfigInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xc5\x01\xda\x41>project,zone,instance,network_interface,access_config_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02m\"S/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateAccessConfig:\x16\x61\x63\x63\x65ss_config_resource\x12\xaf\x02\n\x13UpdateDisplayDevice\x12;.google.cloud.compute.v1.UpdateDisplayDeviceInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x01\xda\x41-project,zone,instance,display_device_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02o2T/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateDisplayDevice:\x17\x64isplay_device_resource\x12\xd0\x02\n\x16UpdateNetworkInterface\x12>.google.cloud.compute.v1.UpdateNetworkInterfaceInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xd1\x01\xda\x41\x42project,zone,instance,network_interface,network_interface_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02u2W/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateNetworkInterface:\x1anetwork_interface_resource\x12\xdf\x02\n\x1cUpdateShieldedInstanceConfig\x12\x44.google.cloud.compute.v1.UpdateShieldedInstanceConfigInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xd4\x01\xda\x41\x37project,zone,instance,shielded_instance_config_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x82\x01\x32]/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateShieldedInstanceConfig:!shielded_instance_config_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xf2\x0f\n\x15InstantSnapshotGroups\x12\x84\x02\n\x06\x44\x65lete\x12:.google.cloud.compute.v1.DeleteInstantSnapshotGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x99\x01\xda\x41#project,zone,instant_snapshot_group\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\\*Z/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{instant_snapshot_group}\x12\xf8\x01\n\x03Get\x12\x37.google.cloud.compute.v1.GetInstantSnapshotGroupRequest\x1a-.google.cloud.compute.v1.InstantSnapshotGroup\"\x88\x01\xda\x41#project,zone,instant_snapshot_group\x82\xd3\xe4\x93\x02\\\x12Z/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{instant_snapshot_group}\x12\xec\x01\n\x0cGetIamPolicy\x12@.google.cloud.compute.v1.GetIamPolicyInstantSnapshotGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"y\xda\x41\x15project,zone,resource\x82\xd3\xe4\x93\x02[\x12Y/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/getIamPolicy\x12\x95\x02\n\x06Insert\x12:.google.cloud.compute.v1.InsertInstantSnapshotGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xaa\x01\xda\x41,project,zone,instant_snapshot_group_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x64\"A/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups:\x1finstant_snapshot_group_resource\x12\xcf\x01\n\x04List\x12\x39.google.cloud.compute.v1.ListInstantSnapshotGroupsRequest\x1a\x32.google.cloud.compute.v1.ListInstantSnapshotGroups\"X\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups\x12\xb0\x02\n\x0cSetIamPolicy\x12@.google.cloud.compute.v1.SetIamPolicyInstantSnapshotGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xbc\x01\xda\x41\x36project,zone,resource,zone_set_policy_request_resource\x82\xd3\xe4\x93\x02}\"Y/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/setIamPolicy: zone_set_policy_request_resource\x12\xd6\x02\n\x12TestIamPermissions\x12\x46.google.cloud.compute.v1.TestIamPermissionsInstantSnapshotGroupRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc5\x01\xda\x41\x37project,zone,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x84\x01\"_/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x83\x13\n\x10InstantSnapshots\x12\xd6\x01\n\x0e\x41ggregatedList\x12>.google.cloud.compute.v1.AggregatedListInstantSnapshotsRequest\x1a\x36.google.cloud.compute.v1.InstantSnapshotAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/instantSnapshots\x12\xee\x01\n\x06\x44\x65lete\x12\x35.google.cloud.compute.v1.DeleteInstantSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x01\xda\x41\x1dproject,zone,instant_snapshot\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02Q*O/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{instant_snapshot}\x12\xdc\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetInstantSnapshotRequest\x1a(.google.cloud.compute.v1.InstantSnapshot\"w\xda\x41\x1dproject,zone,instant_snapshot\x82\xd3\xe4\x93\x02Q\x12O/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{instant_snapshot}\x12\xe2\x01\n\x0cGetIamPolicy\x12;.google.cloud.compute.v1.GetIamPolicyInstantSnapshotRequest\x1a\x1f.google.cloud.compute.v1.Policy\"t\xda\x41\x15project,zone,resource\x82\xd3\xe4\x93\x02V\x12T/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy\x12\xff\x01\n\x06Insert\x12\x35.google.cloud.compute.v1.InsertInstantSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\x99\x01\xda\x41&project,zone,instant_snapshot_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02Y\"\x12.google.cloud.compute.v1.GetInterconnectAttachmentGroupRequest\x1a\x34.google.cloud.compute.v1.InterconnectAttachmentGroup\"\x92\x01\xda\x41%project,interconnect_attachment_group\x82\xd3\xe4\x93\x02\x64\x12\x62/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnect_attachment_group}\x12\xef\x01\n\x0cGetIamPolicy\x12G.google.cloud.compute.v1.GetIamPolicyInterconnectAttachmentGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"u\xda\x41\x10project,resource\x82\xd3\xe4\x93\x02\\\x12Z/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/getIamPolicy\x12\xe4\x02\n\x14GetOperationalStatus\x12O.google.cloud.compute.v1.GetOperationalStatusInterconnectAttachmentGroupRequest\x1aQ.google.cloud.compute.v1.InterconnectAttachmentGroupsGetOperationalStatusResponse\"\xa7\x01\xda\x41%project,interconnect_attachment_group\x82\xd3\xe4\x93\x02y\x12w/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnect_attachment_group}/getOperationalStatus\x12\xa8\x02\n\x06Insert\x12\x41.google.cloud.compute.v1.InsertInterconnectAttachmentGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x01\xda\x41.project,interconnect_attachment_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02l\"B/compute/v1/projects/{project}/global/interconnectAttachmentGroups:&interconnect_attachment_group_resource\x12\xe1\x01\n\x04List\x12@.google.cloud.compute.v1.ListInterconnectAttachmentGroupsRequest\x1a\x41.google.cloud.compute.v1.InterconnectAttachmentGroupsListResponse\"T\xda\x41\x07project\x82\xd3\xe4\x93\x02\x44\x12\x42/compute/v1/projects/{project}/global/interconnectAttachmentGroups\x12\xe5\x02\n\x05Patch\x12@.google.cloud.compute.v1.PatchInterconnectAttachmentGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xf5\x01\xda\x41Lproject,interconnect_attachment_group,interconnect_attachment_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x8c\x01\x32\x62/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnect_attachment_group}:&interconnect_attachment_group_resource\x12\xb8\x02\n\x0cSetIamPolicy\x12G.google.cloud.compute.v1.SetIamPolicyInterconnectAttachmentGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xbd\x01\xda\x41\x33project,resource,global_set_policy_request_resource\x82\xd3\xe4\x93\x02\x80\x01\"Z/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/setIamPolicy:\"global_set_policy_request_resource\x12\xd9\x02\n\x12TestIamPermissions\x12M.google.cloud.compute.v1.TestIamPermissionsInterconnectAttachmentGroupRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc1\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x85\x01\"`/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xc2\x10\n\x17InterconnectAttachments\x12\xeb\x01\n\x0e\x41ggregatedList\x12\x45.google.cloud.compute.v1.AggregatedListInterconnectAttachmentsRequest\x1a=.google.cloud.compute.v1.InterconnectAttachmentAggregatedList\"S\xda\x41\x07project\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/aggregated/interconnectAttachments\x12\x92\x02\n\x06\x44\x65lete\x12<.google.cloud.compute.v1.DeleteInterconnectAttachmentRequest\x1a\".google.cloud.compute.v1.Operation\"\xa5\x01\xda\x41&project,region,interconnect_attachment\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x63*a/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnect_attachment}\x12\x86\x02\n\x03Get\x12\x39.google.cloud.compute.v1.GetInterconnectAttachmentRequest\x1a/.google.cloud.compute.v1.InterconnectAttachment\"\x92\x01\xda\x41&project,region,interconnect_attachment\x82\xd3\xe4\x93\x02\x63\x12\x61/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnect_attachment}\x12\xa3\x02\n\x06Insert\x12<.google.cloud.compute.v1.InsertInterconnectAttachmentRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x01\xda\x41/project,region,interconnect_attachment_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02k\"G/compute/v1/projects/{project}/regions/{region}/interconnectAttachments: interconnect_attachment_resource\x12\xda\x01\n\x04List\x12;.google.cloud.compute.v1.ListInterconnectAttachmentsRequest\x1a\x33.google.cloud.compute.v1.InterconnectAttachmentList\"`\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/regions/{region}/interconnectAttachments\x12\xd4\x02\n\x05Patch\x12;.google.cloud.compute.v1.PatchInterconnectAttachmentRequest\x1a\".google.cloud.compute.v1.Operation\"\xe9\x01\xda\x41Gproject,region,interconnect_attachment,interconnect_attachment_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x85\x01\x32\x61/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnect_attachment}: interconnect_attachment_resource\x12\xcc\x02\n\tSetLabels\x12?.google.cloud.compute.v1.SetLabelsInterconnectAttachmentRequest\x1a\".google.cloud.compute.v1.Operation\"\xd9\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x82\x01\"\\/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{resource}/setLabels:\"region_set_labels_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb8\x16\n\x12InterconnectGroups\x12\xf3\x02\n\rCreateMembers\x12>.google.cloud.compute.v1.CreateMembersInterconnectGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xfd\x01\xda\x41Nproject,interconnect_group,interconnect_groups_create_members_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x92\x01\"[/compute/v1/projects/{project}/global/interconnectGroups/{interconnect_group}/createMembers:3interconnect_groups_create_members_request_resource\x12\xed\x01\n\x06\x44\x65lete\x12\x37.google.cloud.compute.v1.DeleteInterconnectGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x85\x01\xda\x41\x1aproject,interconnect_group\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02O*M/compute/v1/projects/{project}/global/interconnectGroups/{interconnect_group}\x12\xdb\x01\n\x03Get\x12\x34.google.cloud.compute.v1.GetInterconnectGroupRequest\x1a*.google.cloud.compute.v1.InterconnectGroup\"r\xda\x41\x1aproject,interconnect_group\x82\xd3\xe4\x93\x02O\x12M/compute/v1/projects/{project}/global/interconnectGroups/{interconnect_group}\x12\xdb\x01\n\x0cGetIamPolicy\x12=.google.cloud.compute.v1.GetIamPolicyInterconnectGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"k\xda\x41\x10project,resource\x82\xd3\xe4\x93\x02R\x12P/compute/v1/projects/{project}/global/interconnectGroups/{resource}/getIamPolicy\x12\xb0\x02\n\x14GetOperationalStatus\x12\x45.google.cloud.compute.v1.GetOperationalStatusInterconnectGroupRequest\x1aG.google.cloud.compute.v1.InterconnectGroupsGetOperationalStatusResponse\"\x87\x01\xda\x41\x1aproject,interconnect_group\x82\xd3\xe4\x93\x02\x64\x12\x62/compute/v1/projects/{project}/global/interconnectGroups/{interconnect_group}/getOperationalStatus\x12\xfe\x01\n\x06Insert\x12\x37.google.cloud.compute.v1.InsertInterconnectGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x96\x01\xda\x41#project,interconnect_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02W\"8/compute/v1/projects/{project}/global/interconnectGroups:\x1binterconnect_group_resource\x12\xc3\x01\n\x04List\x12\x36.google.cloud.compute.v1.ListInterconnectGroupsRequest\x1a\x37.google.cloud.compute.v1.InterconnectGroupsListResponse\"J\xda\x41\x07project\x82\xd3\xe4\x93\x02:\x12\x38/compute/v1/projects/{project}/global/interconnectGroups\x12\xa4\x02\n\x05Patch\x12\x36.google.cloud.compute.v1.PatchInterconnectGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xbe\x01\xda\x41\x36project,interconnect_group,interconnect_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02l2M/compute/v1/projects/{project}/global/interconnectGroups/{interconnect_group}:\x1binterconnect_group_resource\x12\xa3\x02\n\x0cSetIamPolicy\x12=.google.cloud.compute.v1.SetIamPolicyInterconnectGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xb2\x01\xda\x41\x33project,resource,global_set_policy_request_resource\x82\xd3\xe4\x93\x02v\"P/compute/v1/projects/{project}/global/interconnectGroups/{resource}/setIamPolicy:\"global_set_policy_request_resource\x12\xc4\x02\n\x12TestIamPermissions\x12\x43.google.cloud.compute.v1.TestIamPermissionsInterconnectGroupRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb6\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02{\"V/compute/v1/projects/{project}/global/interconnectGroups/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xf1\x04\n\x15InterconnectLocations\x12\xea\x01\n\x03Get\x12\x37.google.cloud.compute.v1.GetInterconnectLocationRequest\x1a-.google.cloud.compute.v1.InterconnectLocation\"{\xda\x41\x1dproject,interconnect_location\x82\xd3\xe4\x93\x02U\x12S/compute/v1/projects/{project}/global/interconnectLocations/{interconnect_location}\x12\xc3\x01\n\x04List\x12\x39.google.cloud.compute.v1.ListInterconnectLocationsRequest\x1a\x31.google.cloud.compute.v1.InterconnectLocationList\"M\xda\x41\x07project\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/global/interconnectLocations\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xaa\x05\n\x1bInterconnectRemoteLocations\x12\x8b\x02\n\x03Get\x12=.google.cloud.compute.v1.GetInterconnectRemoteLocationRequest\x1a\x33.google.cloud.compute.v1.InterconnectRemoteLocation\"\x8f\x01\xda\x41$project,interconnect_remote_location\x82\xd3\xe4\x93\x02\x62\x12`/compute/v1/projects/{project}/global/interconnectRemoteLocations/{interconnect_remote_location}\x12\xd5\x01\n\x04List\x12?.google.cloud.compute.v1.ListInterconnectRemoteLocationsRequest\x1a\x37.google.cloud.compute.v1.InterconnectRemoteLocationList\"S\xda\x41\x07project\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/global/interconnectRemoteLocations\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xe8\x0f\n\rInterconnects\x12\xd6\x01\n\x06\x44\x65lete\x12\x32.google.cloud.compute.v1.DeleteInterconnectRequest\x1a\".google.cloud.compute.v1.Operation\"t\xda\x41\x14project,interconnect\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x44*B/compute/v1/projects/{project}/global/interconnects/{interconnect}\x12\xc0\x01\n\x03Get\x12/.google.cloud.compute.v1.GetInterconnectRequest\x1a%.google.cloud.compute.v1.Interconnect\"a\xda\x41\x14project,interconnect\x82\xd3\xe4\x93\x02\x44\x12\x42/compute/v1/projects/{project}/global/interconnects/{interconnect}\x12\xfc\x01\n\x0eGetDiagnostics\x12:.google.cloud.compute.v1.GetDiagnosticsInterconnectRequest\x1a<.google.cloud.compute.v1.InterconnectsGetDiagnosticsResponse\"p\xda\x41\x14project,interconnect\x82\xd3\xe4\x93\x02S\x12Q/compute/v1/projects/{project}/global/interconnects/{interconnect}/getDiagnostics\x12\x80\x02\n\x0fGetMacsecConfig\x12;.google.cloud.compute.v1.GetMacsecConfigInterconnectRequest\x1a=.google.cloud.compute.v1.InterconnectsGetMacsecConfigResponse\"q\xda\x41\x14project,interconnect\x82\xd3\xe4\x93\x02T\x12R/compute/v1/projects/{project}/global/interconnects/{interconnect}/getMacsecConfig\x12\xe8\x01\n\x06Insert\x12\x32.google.cloud.compute.v1.InsertInterconnectRequest\x1a\".google.cloud.compute.v1.Operation\"\x85\x01\xda\x41\x1dproject,interconnect_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02L\"3/compute/v1/projects/{project}/global/interconnects:\x15interconnect_resource\x12\xab\x01\n\x04List\x12\x31.google.cloud.compute.v1.ListInterconnectsRequest\x1a).google.cloud.compute.v1.InterconnectList\"E\xda\x41\x07project\x82\xd3\xe4\x93\x02\x35\x12\x33/compute/v1/projects/{project}/global/interconnects\x12\x82\x02\n\x05Patch\x12\x31.google.cloud.compute.v1.PatchInterconnectRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41*project,interconnect,interconnect_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02[2B/compute/v1/projects/{project}/global/interconnects/{interconnect}:\x15interconnect_resource\x12\xa6\x02\n\tSetLabels\x12\x35.google.cloud.compute.v1.SetLabelsInterconnectRequest\x1a\".google.cloud.compute.v1.Operation\"\xbd\x01\xda\x41\x33project,resource,global_set_labels_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02n\"H/compute/v1/projects/{project}/global/interconnects/{resource}/setLabels:\"global_set_labels_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb0\x05\n\x0cLicenseCodes\x12\xbd\x01\n\x03Get\x12..google.cloud.compute.v1.GetLicenseCodeRequest\x1a$.google.cloud.compute.v1.LicenseCode\"`\xda\x41\x14project,license_code\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/global/licenseCodes/{license_code}\x12\xb8\x02\n\x12TestIamPermissions\x12=.google.cloud.compute.v1.TestIamPermissionsLicenseCodeRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb0\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02u\"P/compute/v1/projects/{project}/global/licenseCodes/{resource}/testIamPermissions:!test_permissions_request_resource\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xe3\x0e\n\x08Licenses\x12\xc2\x01\n\x06\x44\x65lete\x12-.google.cloud.compute.v1.DeleteLicenseRequest\x1a\".google.cloud.compute.v1.Operation\"e\xda\x41\x0fproject,license\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02:*8/compute/v1/projects/{project}/global/licenses/{license}\x12\xa7\x01\n\x03Get\x12*.google.cloud.compute.v1.GetLicenseRequest\x1a .google.cloud.compute.v1.License\"R\xda\x41\x0fproject,license\x82\xd3\xe4\x93\x02:\x12\x38/compute/v1/projects/{project}/global/licenses/{license}\x12\xc7\x01\n\x0cGetIamPolicy\x12\x33.google.cloud.compute.v1.GetIamPolicyLicenseRequest\x1a\x1f.google.cloud.compute.v1.Policy\"a\xda\x41\x10project,resource\x82\xd3\xe4\x93\x02H\x12\x46/compute/v1/projects/{project}/global/licenses/{resource}/getIamPolicy\x12\xd3\x01\n\x06Insert\x12-.google.cloud.compute.v1.InsertLicenseRequest\x1a\".google.cloud.compute.v1.Operation\"v\xda\x41\x18project,license_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x42\"./compute/v1/projects/{project}/global/licenses:\x10license_resource\x12\xa5\x01\n\x04List\x12,.google.cloud.compute.v1.ListLicensesRequest\x1a-.google.cloud.compute.v1.LicensesListResponse\"@\xda\x41\x07project\x82\xd3\xe4\x93\x02\x30\x12./compute/v1/projects/{project}/global/licenses\x12\x8f\x02\n\x0cSetIamPolicy\x12\x33.google.cloud.compute.v1.SetIamPolicyLicenseRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xa8\x01\xda\x41\x33project,resource,global_set_policy_request_resource\x82\xd3\xe4\x93\x02l\"F/compute/v1/projects/{project}/global/licenses/{resource}/setIamPolicy:\"global_set_policy_request_resource\x12\xb0\x02\n\x12TestIamPermissions\x12\x39.google.cloud.compute.v1.TestIamPermissionsLicenseRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xac\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02q\"L/compute/v1/projects/{project}/global/licenses/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xe6\x01\n\x06Update\x12-.google.cloud.compute.v1.UpdateLicenseRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x01\xda\x41 project,license,license_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02L28/compute/v1/projects/{project}/global/licenses/{license}:\x10license_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x94\x10\n\rMachineImages\x12\xd8\x01\n\x06\x44\x65lete\x12\x32.google.cloud.compute.v1.DeleteMachineImageRequest\x1a\".google.cloud.compute.v1.Operation\"v\xda\x41\x15project,machine_image\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x45*C/compute/v1/projects/{project}/global/machineImages/{machine_image}\x12\xc2\x01\n\x03Get\x12/.google.cloud.compute.v1.GetMachineImageRequest\x1a%.google.cloud.compute.v1.MachineImage\"c\xda\x41\x15project,machine_image\x82\xd3\xe4\x93\x02\x45\x12\x43/compute/v1/projects/{project}/global/machineImages/{machine_image}\x12\xd1\x01\n\x0cGetIamPolicy\x12\x38.google.cloud.compute.v1.GetIamPolicyMachineImageRequest\x1a\x1f.google.cloud.compute.v1.Policy\"f\xda\x41\x10project,resource\x82\xd3\xe4\x93\x02M\x12K/compute/v1/projects/{project}/global/machineImages/{resource}/getIamPolicy\x12\xea\x01\n\x06Insert\x12\x32.google.cloud.compute.v1.InsertMachineImageRequest\x1a\".google.cloud.compute.v1.Operation\"\x87\x01\xda\x41\x1eproject,machine_image_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02M\"3/compute/v1/projects/{project}/global/machineImages:\x16machine_image_resource\x12\xab\x01\n\x04List\x12\x31.google.cloud.compute.v1.ListMachineImagesRequest\x1a).google.cloud.compute.v1.MachineImageList\"E\xda\x41\x07project\x82\xd3\xe4\x93\x02\x35\x12\x33/compute/v1/projects/{project}/global/machineImages\x12\x99\x02\n\x0cSetIamPolicy\x12\x38.google.cloud.compute.v1.SetIamPolicyMachineImageRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xad\x01\xda\x41\x33project,resource,global_set_policy_request_resource\x82\xd3\xe4\x93\x02q\"K/compute/v1/projects/{project}/global/machineImages/{resource}/setIamPolicy:\"global_set_policy_request_resource\x12\xa6\x02\n\tSetLabels\x12\x35.google.cloud.compute.v1.SetLabelsMachineImageRequest\x1a\".google.cloud.compute.v1.Operation\"\xbd\x01\xda\x41\x33project,resource,global_set_labels_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02n\"H/compute/v1/projects/{project}/global/machineImages/{resource}/setLabels:\"global_set_labels_request_resource\x12\xba\x02\n\x12TestIamPermissions\x12>.google.cloud.compute.v1.TestIamPermissionsMachineImageRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb1\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02v\"Q/compute/v1/projects/{project}/global/machineImages/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x83\x06\n\x0cMachineTypes\x12\xca\x01\n\x0e\x41ggregatedList\x12:.google.cloud.compute.v1.AggregatedListMachineTypesRequest\x1a\x32.google.cloud.compute.v1.MachineTypeAggregatedList\"H\xda\x41\x07project\x82\xd3\xe4\x93\x02\x38\x12\x36/compute/v1/projects/{project}/aggregated/machineTypes\x12\xc8\x01\n\x03Get\x12..google.cloud.compute.v1.GetMachineTypeRequest\x1a$.google.cloud.compute.v1.MachineType\"k\xda\x41\x19project,zone,machine_type\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/zones/{zone}/machineTypes/{machine_type}\x12\xb3\x01\n\x04List\x12\x30.google.cloud.compute.v1.ListMachineTypesRequest\x1a(.google.cloud.compute.v1.MachineTypeList\"O\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02:\x12\x38/compute/v1/projects/{project}/zones/{zone}/machineTypes\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xf0\x13\n\x12NetworkAttachments\x12\xdc\x01\n\x0e\x41ggregatedList\x12@.google.cloud.compute.v1.AggregatedListNetworkAttachmentsRequest\x1a\x38.google.cloud.compute.v1.NetworkAttachmentAggregatedList\"N\xda\x41\x07project\x82\xd3\xe4\x93\x02>\x12.google.cloud.compute.v1.PatchRuleNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xc4\x01\xda\x41\x35project,firewall_policy,firewall_policy_rule_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02s\"R/compute/v1/projects/{project}/global/firewallPolicies/{firewall_policy}/patchRule:\x1d\x66irewall_policy_rule_resource\x12\x91\x02\n\x11RemoveAssociation\x12\x46.google.cloud.compute.v1.RemoveAssociationNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x8f\x01\xda\x41\x17project,firewall_policy\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\\\"Z/compute/v1/projects/{project}/global/firewallPolicies/{firewall_policy}/removeAssociation\x12\xa9\x02\n\x19RemovePacketMirroringRule\x12N.google.cloud.compute.v1.RemovePacketMirroringRuleNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x97\x01\xda\x41\x17project,firewall_policy\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x64\"b/compute/v1/projects/{project}/global/firewallPolicies/{firewall_policy}/removePacketMirroringRule\x12\xfc\x01\n\nRemoveRule\x12?.google.cloud.compute.v1.RemoveRuleNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x01\xda\x41\x17project,firewall_policy\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02U\"S/compute/v1/projects/{project}/global/firewallPolicies/{firewall_policy}/removeRule\x12\xa5\x02\n\x0cSetIamPolicy\x12\x41.google.cloud.compute.v1.SetIamPolicyNetworkFirewallPolicyRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xb0\x01\xda\x41\x33project,resource,global_set_policy_request_resource\x82\xd3\xe4\x93\x02t\"N/compute/v1/projects/{project}/global/firewallPolicies/{resource}/setIamPolicy:\"global_set_policy_request_resource\x12\xc6\x02\n\x12TestIamPermissions\x12G.google.cloud.compute.v1.TestIamPermissionsNetworkFirewallPolicyRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb4\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02y\"T/compute/v1/projects/{project}/global/firewallPolicies/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xc4\x04\n\x0fNetworkProfiles\x12\xcc\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetNetworkProfileRequest\x1a\'.google.cloud.compute.v1.NetworkProfile\"i\xda\x41\x17project,network_profile\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/global/networkProfiles/{network_profile}\x12\xba\x01\n\x04List\x12\x33.google.cloud.compute.v1.ListNetworkProfilesRequest\x1a\x34.google.cloud.compute.v1.NetworkProfilesListResponse\"G\xda\x41\x07project\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/global/networkProfiles\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x92\x18\n\x08Networks\x12\xa3\x02\n\nAddPeering\x12\x31.google.cloud.compute.v1.AddPeeringNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"\xbd\x01\xda\x41\x35project,network,networks_add_peering_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02l\"C/compute/v1/projects/{project}/global/networks/{network}/addPeering:%networks_add_peering_request_resource\x12\xc2\x01\n\x06\x44\x65lete\x12-.google.cloud.compute.v1.DeleteNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"e\xda\x41\x0fproject,network\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02:*8/compute/v1/projects/{project}/global/networks/{network}\x12\xa7\x01\n\x03Get\x12*.google.cloud.compute.v1.GetNetworkRequest\x1a .google.cloud.compute.v1.Network\"R\xda\x41\x0fproject,network\x82\xd3\xe4\x93\x02:\x12\x38/compute/v1/projects/{project}/global/networks/{network}\x12\xff\x01\n\x15GetEffectiveFirewalls\x12<.google.cloud.compute.v1.GetEffectiveFirewallsNetworkRequest\x1a>.google.cloud.compute.v1.NetworksGetEffectiveFirewallsResponse\"h\xda\x41\x0fproject,network\x82\xd3\xe4\x93\x02P\x12N/compute/v1/projects/{project}/global/networks/{network}/getEffectiveFirewalls\x12\xd3\x01\n\x06Insert\x12-.google.cloud.compute.v1.InsertNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"v\xda\x41\x18project,network_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x42\"./compute/v1/projects/{project}/global/networks:\x10network_resource\x12\x9c\x01\n\x04List\x12,.google.cloud.compute.v1.ListNetworksRequest\x1a$.google.cloud.compute.v1.NetworkList\"@\xda\x41\x07project\x82\xd3\xe4\x93\x02\x30\x12./compute/v1/projects/{project}/global/networks\x12\xe9\x01\n\x11ListPeeringRoutes\x12\x39.google.cloud.compute.v1.ListPeeringRoutesNetworksRequest\x1a\x33.google.cloud.compute.v1.ExchangedPeeringRoutesList\"d\xda\x41\x0fproject,network\x82\xd3\xe4\x93\x02L\x12J/compute/v1/projects/{project}/global/networks/{network}/listPeeringRoutes\x12\xe4\x01\n\x05Patch\x12,.google.cloud.compute.v1.PatchNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x01\xda\x41 project,network,network_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02L28/compute/v1/projects/{project}/global/networks/{network}:\x10network_resource\x12\xb2\x02\n\rRemovePeering\x12\x34.google.cloud.compute.v1.RemovePeeringNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"\xc6\x01\xda\x41\x38project,network,networks_remove_peering_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02r\"F/compute/v1/projects/{project}/global/networks/{network}/removePeering:(networks_remove_peering_request_resource\x12\xd8\x02\n\x14RequestRemovePeering\x12;.google.cloud.compute.v1.RequestRemovePeeringNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"\xde\x01\xda\x41@project,network,networks_request_remove_peering_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x81\x01\"M/compute/v1/projects/{project}/global/networks/{network}/requestRemovePeering:0networks_request_remove_peering_request_resource\x12\xed\x01\n\x12SwitchToCustomMode\x12\x39.google.cloud.compute.v1.SwitchToCustomModeNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"x\xda\x41\x0fproject,network\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02M\"K/compute/v1/projects/{project}/global/networks/{network}/switchToCustomMode\x12\xb2\x02\n\rUpdatePeering\x12\x34.google.cloud.compute.v1.UpdatePeeringNetworkRequest\x1a\".google.cloud.compute.v1.Operation\"\xc6\x01\xda\x41\x38project,network,networks_update_peering_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02r2F/compute/v1/projects/{project}/global/networks/{network}/updatePeering:(networks_update_peering_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xeb \n\nNodeGroups\x12\xb2\x02\n\x08\x41\x64\x64Nodes\x12\x31.google.cloud.compute.v1.AddNodesNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xce\x01\xda\x41>project,zone,node_group,node_groups_add_nodes_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02v\"L/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/addNodes:&node_groups_add_nodes_request_resource\x12\xc4\x01\n\x0e\x41ggregatedList\x12\x38.google.cloud.compute.v1.AggregatedListNodeGroupsRequest\x1a\x30.google.cloud.compute.v1.NodeGroupAggregatedList\"F\xda\x41\x07project\x82\xd3\xe4\x93\x02\x36\x12\x34/compute/v1/projects/{project}/aggregated/nodeGroups\x12\xd5\x01\n\x06\x44\x65lete\x12/.google.cloud.compute.v1.DeleteNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"v\xda\x41\x17project,zone,node_group\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x45*C/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}\x12\xc1\x02\n\x0b\x44\x65leteNodes\x12\x34.google.cloud.compute.v1.DeleteNodesNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xd7\x01\xda\x41\x41project,zone,node_group,node_groups_delete_nodes_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02|\"O/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/deleteNodes:)node_groups_delete_nodes_request_resource\x12\xbe\x01\n\x03Get\x12,.google.cloud.compute.v1.GetNodeGroupRequest\x1a\".google.cloud.compute.v1.NodeGroup\"e\xda\x41\x17project,zone,node_group\x82\xd3\xe4\x93\x02\x45\x12\x43/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}\x12\xd6\x01\n\x0cGetIamPolicy\x12\x35.google.cloud.compute.v1.GetIamPolicyNodeGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"n\xda\x41\x15project,zone,resource\x82\xd3\xe4\x93\x02P\x12N/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy\x12\xfa\x01\n\x06Insert\x12/.google.cloud.compute.v1.InsertNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x9a\x01\xda\x41\x33project,zone,initial_node_count,node_group_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02M\"6/compute/v1/projects/{project}/zones/{zone}/nodeGroups:\x13node_group_resource\x12\xad\x01\n\x04List\x12..google.cloud.compute.v1.ListNodeGroupsRequest\x1a&.google.cloud.compute.v1.NodeGroupList\"M\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02\x38\x12\x36/compute/v1/projects/{project}/zones/{zone}/nodeGroups\x12\xdf\x01\n\tListNodes\x12\x33.google.cloud.compute.v1.ListNodesNodeGroupsRequest\x1a,.google.cloud.compute.v1.NodeGroupsListNodes\"o\xda\x41\x17project,zone,node_group\x82\xd3\xe4\x93\x02O\"M/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/listNodes\x12\xfd\x01\n\x05Patch\x12..google.cloud.compute.v1.PatchNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x01\xda\x41+project,zone,node_group,node_group_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02Z2C/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}:\x13node_group_resource\x12\xe5\x02\n\x12PerformMaintenance\x12;.google.cloud.compute.v1.PerformMaintenanceNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xed\x01\xda\x41Hproject,zone,node_group,node_groups_perform_maintenance_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x8a\x01\"V/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/performMaintenance:0node_groups_perform_maintenance_request_resource\x12\x9a\x02\n\x0cSetIamPolicy\x12\x35.google.cloud.compute.v1.SetIamPolicyNodeGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xb1\x01\xda\x41\x36project,zone,resource,zone_set_policy_request_resource\x82\xd3\xe4\x93\x02r\"N/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy: zone_set_policy_request_resource\x12\xd8\x02\n\x0fSetNodeTemplate\x12\x38.google.cloud.compute.v1.SetNodeTemplateNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xe6\x01\xda\x41\x46project,zone,node_group,node_groups_set_node_template_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x85\x01\"S/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/setNodeTemplate:.node_groups_set_node_template_request_resource\x12\x85\x03\n\x18SimulateMaintenanceEvent\x12\x41.google.cloud.compute.v1.SimulateMaintenanceEventNodeGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x81\x02\xda\x41Oproject,zone,node_group,node_groups_simulate_maintenance_event_request_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02\x97\x01\"\\/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/simulateMaintenanceEvent:7node_groups_simulate_maintenance_event_request_resource\x12\xbf\x02\n\x12TestIamPermissions\x12;.google.cloud.compute.v1.TestIamPermissionsNodeGroupRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb9\x01\xda\x41\x37project,zone,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02y\"T/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb4\x10\n\rNodeTemplates\x12\xcd\x01\n\x0e\x41ggregatedList\x12;.google.cloud.compute.v1.AggregatedListNodeTemplatesRequest\x1a\x33.google.cloud.compute.v1.NodeTemplateAggregatedList\"I\xda\x41\x07project\x82\xd3\xe4\x93\x02\x39\x12\x37/compute/v1/projects/{project}/aggregated/nodeTemplates\x12\xea\x01\n\x06\x44\x65lete\x12\x32.google.cloud.compute.v1.DeleteNodeTemplateRequest\x1a\".google.cloud.compute.v1.Operation\"\x87\x01\xda\x41\x1cproject,region,node_template\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02O*M/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{node_template}\x12\xd3\x01\n\x03Get\x12/.google.cloud.compute.v1.GetNodeTemplateRequest\x1a%.google.cloud.compute.v1.NodeTemplate\"t\xda\x41\x1cproject,region,node_template\x82\xd3\xe4\x93\x02O\x12M/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{node_template}\x12\xe2\x01\n\x0cGetIamPolicy\x12\x38.google.cloud.compute.v1.GetIamPolicyNodeTemplateRequest\x1a\x1f.google.cloud.compute.v1.Policy\"w\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02W\x12U/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy\x12\xfb\x01\n\x06Insert\x12\x32.google.cloud.compute.v1.InsertNodeTemplateRequest\x1a\".google.cloud.compute.v1.Operation\"\x98\x01\xda\x41%project,region,node_template_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02W\"=/compute/v1/projects/{project}/regions/{region}/nodeTemplates:\x16node_template_resource\x12\xbc\x01\n\x04List\x12\x31.google.cloud.compute.v1.ListNodeTemplatesRequest\x1a).google.cloud.compute.v1.NodeTemplateList\"V\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02?\x12=/compute/v1/projects/{project}/regions/{region}/nodeTemplates\x12\xaa\x02\n\x0cSetIamPolicy\x12\x38.google.cloud.compute.v1.SetIamPolicyNodeTemplateRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xbe\x01\xda\x41:project,region,resource,region_set_policy_request_resource\x82\xd3\xe4\x93\x02{\"U/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy:\"region_set_policy_request_resource\x12\xcc\x02\n\x12TestIamPermissions\x12>.google.cloud.compute.v1.TestIamPermissionsNodeTemplateRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc3\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x80\x01\"[/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xdf\x05\n\tNodeTypes\x12\xc1\x01\n\x0e\x41ggregatedList\x12\x37.google.cloud.compute.v1.AggregatedListNodeTypesRequest\x1a/.google.cloud.compute.v1.NodeTypeAggregatedList\"E\xda\x41\x07project\x82\xd3\xe4\x93\x02\x35\x12\x33/compute/v1/projects/{project}/aggregated/nodeTypes\x12\xb9\x01\n\x03Get\x12+.google.cloud.compute.v1.GetNodeTypeRequest\x1a!.google.cloud.compute.v1.NodeType\"b\xda\x41\x16project,zone,node_type\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/zones/{zone}/nodeTypes/{node_type}\x12\xaa\x01\n\x04List\x12-.google.cloud.compute.v1.ListNodeTypesRequest\x1a%.google.cloud.compute.v1.NodeTypeList\"L\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/zones/{zone}/nodeTypes\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd3!\n\x1cOrganizationSecurityPolicies\x12\xd3\x02\n\x0e\x41\x64\x64\x41ssociation\x12H.google.cloud.compute.v1.AddAssociationOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xd2\x01\xda\x41\x34security_policy,security_policy_association_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02v\"N/compute/v1/locations/global/securityPolicies/{security_policy}/addAssociation:$security_policy_association_resource\x12\xb0\x02\n\x07\x41\x64\x64Rule\x12\x41.google.cloud.compute.v1.AddRuleOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xbd\x01\xda\x41-security_policy,security_policy_rule_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02h\"G/compute/v1/locations/global/securityPolicies/{security_policy}/addRule:\x1dsecurity_policy_rule_resource\x12\xf9\x01\n\tCopyRules\x12\x43.google.cloud.compute.v1.CopyRulesOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x82\x01\xda\x41\x0fsecurity_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02K\"I/compute/v1/locations/global/securityPolicies/{security_policy}/copyRules\x12\xe8\x01\n\x06\x44\x65lete\x12@.google.cloud.compute.v1.DeleteOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"x\xda\x41\x0fsecurity_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02\x41*?/compute/v1/locations/global/securityPolicies/{security_policy}\x12\xc8\x01\n\x03Get\x12=.google.cloud.compute.v1.GetOrganizationSecurityPolicyRequest\x1a\'.google.cloud.compute.v1.SecurityPolicy\"Y\xda\x41\x0fsecurity_policy\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/locations/global/securityPolicies/{security_policy}\x12\xf8\x01\n\x0eGetAssociation\x12H.google.cloud.compute.v1.GetAssociationOrganizationSecurityPolicyRequest\x1a\x32.google.cloud.compute.v1.SecurityPolicyAssociation\"h\xda\x41\x0fsecurity_policy\x82\xd3\xe4\x93\x02P\x12N/compute/v1/locations/global/securityPolicies/{security_policy}/getAssociation\x12\xdc\x01\n\x07GetRule\x12\x41.google.cloud.compute.v1.GetRuleOrganizationSecurityPolicyRequest\x1a+.google.cloud.compute.v1.SecurityPolicyRule\"a\xda\x41\x0fsecurity_policy\x82\xd3\xe4\x93\x02I\x12G/compute/v1/locations/global/securityPolicies/{security_policy}/getRule\x12\xfa\x01\n\x06Insert\x12@.google.cloud.compute.v1.InsertOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x89\x01\xda\x41\x18security_policy_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02I\"-/compute/v1/locations/global/securityPolicies:\x18security_policy_resource\x12\xaf\x01\n\x04List\x12@.google.cloud.compute.v1.ListOrganizationSecurityPoliciesRequest\x1a+.google.cloud.compute.v1.SecurityPolicyList\"8\xda\x41\x00\x82\xd3\xe4\x93\x02/\x12-/compute/v1/locations/global/securityPolicies\x12\xf8\x01\n\x10ListAssociations\x12J.google.cloud.compute.v1.ListAssociationsOrganizationSecurityPolicyRequest\x1aM.google.cloud.compute.v1.OrganizationSecurityPoliciesListAssociationsResponse\"I\xda\x41\x00\x82\xd3\xe4\x93\x02@\x12>/compute/v1/locations/global/securityPolicies/listAssociations\x12\xaa\x02\n\x1fListPreconfiguredExpressionSets\x12[.google.cloud.compute.v1.ListPreconfiguredExpressionSetsOrganizationSecurityPoliciesRequest\x1aP.google.cloud.compute.v1.SecurityPoliciesListPreconfiguredExpressionSetsResponse\"X\xda\x41\x00\x82\xd3\xe4\x93\x02O\x12M/compute/v1/locations/global/securityPolicies/listPreconfiguredExpressionSets\x12\xe9\x01\n\x04Move\x12>.google.cloud.compute.v1.MoveOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"}\xda\x41\x0fsecurity_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02\x46\"D/compute/v1/locations/global/securityPolicies/{security_policy}/move\x12\x9a\x02\n\x05Patch\x12?.google.cloud.compute.v1.PatchOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x01\xda\x41(security_policy,security_policy_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02[2?/compute/v1/locations/global/securityPolicies/{security_policy}:\x18security_policy_resource\x12\xb6\x02\n\tPatchRule\x12\x43.google.cloud.compute.v1.PatchRuleOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xbf\x01\xda\x41-security_policy,security_policy_rule_resource\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02j\"I/compute/v1/locations/global/securityPolicies/{security_policy}/patchRule:\x1dsecurity_policy_rule_resource\x12\x91\x02\n\x11RemoveAssociation\x12K.google.cloud.compute.v1.RemoveAssociationOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x8a\x01\xda\x41\x0fsecurity_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02S\"Q/compute/v1/locations/global/securityPolicies/{security_policy}/removeAssociation\x12\xfc\x01\n\nRemoveRule\x12\x44.google.cloud.compute.v1.RemoveRuleOrganizationSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x83\x01\xda\x41\x0fsecurity_policy\x8aN\x1cGlobalOrganizationOperations\x82\xd3\xe4\x93\x02L\"J/compute/v1/locations/global/securityPolicies/{security_policy}/removeRule\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x90\x0f\n\x10PacketMirrorings\x12\xd6\x01\n\x0e\x41ggregatedList\x12>.google.cloud.compute.v1.AggregatedListPacketMirroringsRequest\x1a\x36.google.cloud.compute.v1.PacketMirroringAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/packetMirrorings\x12\xf6\x01\n\x06\x44\x65lete\x12\x35.google.cloud.compute.v1.DeletePacketMirroringRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\x1fproject,region,packet_mirroring\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02U*S/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{packet_mirroring}\x12\xe2\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetPacketMirroringRequest\x1a(.google.cloud.compute.v1.PacketMirroring\"}\xda\x41\x1fproject,region,packet_mirroring\x82\xd3\xe4\x93\x02U\x12S/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{packet_mirroring}\x12\x87\x02\n\x06Insert\x12\x35.google.cloud.compute.v1.InsertPacketMirroringRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41(project,region,packet_mirroring_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02]\"@/compute/v1/projects/{project}/regions/{region}/packetMirrorings:\x19packet_mirroring_resource\x12\xc5\x01\n\x04List\x12\x34.google.cloud.compute.v1.ListPacketMirroringsRequest\x1a,.google.cloud.compute.v1.PacketMirroringList\"Y\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/regions/{region}/packetMirrorings\x12\xa9\x02\n\x05Patch\x12\x34.google.cloud.compute.v1.PatchPacketMirroringRequest\x1a\".google.cloud.compute.v1.Operation\"\xc5\x01\xda\x41\x39project,region,packet_mirroring,packet_mirroring_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02p2S/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{packet_mirroring}:\x19packet_mirroring_resource\x12\xd2\x02\n\x12TestIamPermissions\x12\x41.google.cloud.compute.v1.TestIamPermissionsPacketMirroringRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc6\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x83\x01\"^/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x9f\x06\n\x0fPreviewFeatures\x12\xcc\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetPreviewFeatureRequest\x1a\'.google.cloud.compute.v1.PreviewFeature\"i\xda\x41\x17project,preview_feature\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/global/previewFeatures/{preview_feature}\x12\xb1\x01\n\x04List\x12\x33.google.cloud.compute.v1.ListPreviewFeaturesRequest\x1a+.google.cloud.compute.v1.PreviewFeatureList\"G\xda\x41\x07project\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/global/previewFeatures\x12\x94\x02\n\x06Update\x12\x34.google.cloud.compute.v1.UpdatePreviewFeatureRequest\x1a\".google.cloud.compute.v1.Operation\"\xaf\x01\xda\x41\x30project,preview_feature,preview_feature_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x63\x32G/compute/v1/projects/{project}/global/previewFeatures/{preview_feature}:\x18preview_feature_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xab\x1b\n\x08Projects\x12\xbf\x01\n\x0e\x44isableXpnHost\x12\x35.google.cloud.compute.v1.DisableXpnHostProjectRequest\x1a\".google.cloud.compute.v1.Operation\"R\xda\x41\x07project\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02/\"-/compute/v1/projects/{project}/disableXpnHost\x12\xab\x02\n\x12\x44isableXpnResource\x12\x39.google.cloud.compute.v1.DisableXpnResourceProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\xb5\x01\xda\x41\x36project,projects_disable_xpn_resource_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x63\"1/compute/v1/projects/{project}/disableXpnResource:.projects_disable_xpn_resource_request_resource\x12\xbc\x01\n\rEnableXpnHost\x12\x34.google.cloud.compute.v1.EnableXpnHostProjectRequest\x1a\".google.cloud.compute.v1.Operation\"Q\xda\x41\x07project\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02.\",/compute/v1/projects/{project}/enableXpnHost\x12\xa6\x02\n\x11\x45nableXpnResource\x12\x38.google.cloud.compute.v1.EnableXpnResourceProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\xb2\x01\xda\x41\x35project,projects_enable_xpn_resource_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x61\"0/compute/v1/projects/{project}/enableXpnResource:-projects_enable_xpn_resource_request_resource\x12\x85\x01\n\x03Get\x12*.google.cloud.compute.v1.GetProjectRequest\x1a .google.cloud.compute.v1.Project\"0\xda\x41\x07project\x82\xd3\xe4\x93\x02 \x12\x1e/compute/v1/projects/{project}\x12\x9e\x01\n\nGetXpnHost\x12\x31.google.cloud.compute.v1.GetXpnHostProjectRequest\x1a .google.cloud.compute.v1.Project\";\xda\x41\x07project\x82\xd3\xe4\x93\x02+\x12)/compute/v1/projects/{project}/getXpnHost\x12\xbe\x01\n\x0fGetXpnResources\x12\x37.google.cloud.compute.v1.GetXpnResourcesProjectsRequest\x1a\x30.google.cloud.compute.v1.ProjectsGetXpnResources\"@\xda\x41\x07project\x82\xd3\xe4\x93\x02\x30\x12./compute/v1/projects/{project}/getXpnResources\x12\xfd\x01\n\x0cListXpnHosts\x12\x34.google.cloud.compute.v1.ListXpnHostsProjectsRequest\x1a$.google.cloud.compute.v1.XpnHostList\"\x90\x01\xda\x41\x30project,projects_list_xpn_hosts_request_resource\x82\xd3\xe4\x93\x02W\"+/compute/v1/projects/{project}/listXpnHosts:(projects_list_xpn_hosts_request_resource\x12\xe5\x01\n\x08MoveDisk\x12/.google.cloud.compute.v1.MoveDiskProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\x83\x01\xda\x41\"project,disk_move_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x45\"\'/compute/v1/projects/{project}/moveDisk:\x1a\x64isk_move_request_resource\x12\xf9\x01\n\x0cMoveInstance\x12\x33.google.cloud.compute.v1.MoveInstanceProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\x8f\x01\xda\x41&project,instance_move_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02M\"+/compute/v1/projects/{project}/moveInstance:\x1einstance_move_request_resource\x12\xa8\x02\n\x11SetCloudArmorTier\x12\x38.google.cloud.compute.v1.SetCloudArmorTierProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\xb4\x01\xda\x41\x36project,projects_set_cloud_armor_tier_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x62\"0/compute/v1/projects/{project}/setCloudArmorTier:.projects_set_cloud_armor_tier_request_resource\x12\x86\x02\n\x19SetCommonInstanceMetadata\x12@.google.cloud.compute.v1.SetCommonInstanceMetadataProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\x82\x01\xda\x41\x19project,metadata_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02M\"8/compute/v1/projects/{project}/setCommonInstanceMetadata:\x11metadata_resource\x12\xbc\x02\n\x15SetDefaultNetworkTier\x12<.google.cloud.compute.v1.SetDefaultNetworkTierProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\xc0\x01\xda\x41:project,projects_set_default_network_tier_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02j\"4/compute/v1/projects/{project}/setDefaultNetworkTier:2projects_set_default_network_tier_request_resource\x12\x91\x02\n\x14SetUsageExportBucket\x12;.google.cloud.compute.v1.SetUsageExportBucketProjectRequest\x1a\".google.cloud.compute.v1.Operation\"\x97\x01\xda\x41&project,usage_export_location_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02U\"3/compute/v1/projects/{project}/setUsageExportBucket:\x1eusage_export_location_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xee\x0f\n\x18PublicAdvertisedPrefixes\x12\x92\x02\n\x08\x41nnounce\x12?.google.cloud.compute.v1.AnnouncePublicAdvertisedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xa0\x01\xda\x41 project,public_advertised_prefix\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x64\"b/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}/announce\x12\x85\x02\n\x06\x44\x65lete\x12=.google.cloud.compute.v1.DeletePublicAdvertisedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\x97\x01\xda\x41 project,public_advertised_prefix\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02[*Y/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}\x12\xf9\x01\n\x03Get\x12:.google.cloud.compute.v1.GetPublicAdvertisedPrefixeRequest\x1a/.google.cloud.compute.v1.PublicAdvertisedPrefix\"\x84\x01\xda\x41 project,public_advertised_prefix\x82\xd3\xe4\x93\x02[\x12Y/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}\x12\x96\x02\n\x06Insert\x12=.google.cloud.compute.v1.InsertPublicAdvertisedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xa8\x01\xda\x41)project,public_advertised_prefix_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x63\">/compute/v1/projects/{project}/global/publicAdvertisedPrefixes:!public_advertised_prefix_resource\x12\xcb\x01\n\x04List\x12<.google.cloud.compute.v1.ListPublicAdvertisedPrefixesRequest\x1a\x33.google.cloud.compute.v1.PublicAdvertisedPrefixList\"P\xda\x41\x07project\x82\xd3\xe4\x93\x02@\x12>/compute/v1/projects/{project}/global/publicAdvertisedPrefixes\x12\xc8\x02\n\x05Patch\x12<.google.cloud.compute.v1.PatchPublicAdvertisedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xdc\x01\xda\x41\x42project,public_advertised_prefix,public_advertised_prefix_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02~2Y/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}:!public_advertised_prefix_resource\x12\x92\x02\n\x08Withdraw\x12?.google.cloud.compute.v1.WithdrawPublicAdvertisedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xa0\x01\xda\x41 project,public_advertised_prefix\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x64\"b/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}/withdraw\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb4\x12\n\x17PublicDelegatedPrefixes\x12\xea\x01\n\x0e\x41ggregatedList\x12\x45.google.cloud.compute.v1.AggregatedListPublicDelegatedPrefixesRequest\x1a<.google.cloud.compute.v1.PublicDelegatedPrefixAggregatedList\"S\xda\x41\x07project\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/aggregated/publicDelegatedPrefixes\x12\x9f\x02\n\x08\x41nnounce\x12>.google.cloud.compute.v1.AnnouncePublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xae\x01\xda\x41&project,region,public_delegated_prefix\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02l\"j/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}/announce\x12\x92\x02\n\x06\x44\x65lete\x12<.google.cloud.compute.v1.DeletePublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xa5\x01\xda\x41&project,region,public_delegated_prefix\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x63*a/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}\x12\x85\x02\n\x03Get\x12\x39.google.cloud.compute.v1.GetPublicDelegatedPrefixeRequest\x1a..google.cloud.compute.v1.PublicDelegatedPrefix\"\x92\x01\xda\x41&project,region,public_delegated_prefix\x82\xd3\xe4\x93\x02\x63\x12\x61/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}\x12\xa3\x02\n\x06Insert\x12<.google.cloud.compute.v1.InsertPublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xb6\x01\xda\x41/project,region,public_delegated_prefix_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02k\"G/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes: public_delegated_prefix_resource\x12\xd9\x01\n\x04List\x12;.google.cloud.compute.v1.ListPublicDelegatedPrefixesRequest\x1a\x32.google.cloud.compute.v1.PublicDelegatedPrefixList\"`\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes\x12\xd4\x02\n\x05Patch\x12;.google.cloud.compute.v1.PatchPublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xe9\x01\xda\x41Gproject,region,public_delegated_prefix,public_delegated_prefix_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x85\x01\x32\x61/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}: public_delegated_prefix_resource\x12\x9f\x02\n\x08Withdraw\x12>.google.cloud.compute.v1.WithdrawPublicDelegatedPrefixeRequest\x1a\".google.cloud.compute.v1.Operation\"\xae\x01\xda\x41&project,region,public_delegated_prefix\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02l\"j/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}/withdraw\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xc0\x0e\n\x11RegionAutoscalers\x12\xe5\x01\n\x06\x44\x65lete\x12\x36.google.cloud.compute.v1.DeleteRegionAutoscalerRequest\x1a\".google.cloud.compute.v1.Operation\"\x7f\xda\x41\x19project,region,autoscaler\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02J*H/compute/v1/projects/{project}/regions/{region}/autoscalers/{autoscaler}\x12\xcd\x01\n\x03Get\x12\x33.google.cloud.compute.v1.GetRegionAutoscalerRequest\x1a#.google.cloud.compute.v1.Autoscaler\"l\xda\x41\x19project,region,autoscaler\x82\xd3\xe4\x93\x02J\x12H/compute/v1/projects/{project}/regions/{region}/autoscalers/{autoscaler}\x12\xf7\x01\n\x06Insert\x12\x36.google.cloud.compute.v1.InsertRegionAutoscalerRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\"project,region,autoscaler_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02R\";/compute/v1/projects/{project}/regions/{region}/autoscalers:\x13\x61utoscaler_resource\x12\xc2\x01\n\x04List\x12\x35.google.cloud.compute.v1.ListRegionAutoscalersRequest\x1a-.google.cloud.compute.v1.RegionAutoscalerList\"T\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/regions/{region}/autoscalers\x12\xf5\x01\n\x05Patch\x12\x35.google.cloud.compute.v1.PatchRegionAutoscalerRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\"project,region,autoscaler_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02R2;/compute/v1/projects/{project}/regions/{region}/autoscalers:\x13\x61utoscaler_resource\x12\xcd\x02\n\x12TestIamPermissions\x12\x42.google.cloud.compute.v1.TestIamPermissionsRegionAutoscalerRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc0\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02~\"Y/compute/v1/projects/{project}/regions/{region}/autoscalers/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xf7\x01\n\x06Update\x12\x36.google.cloud.compute.v1.UpdateRegionAutoscalerRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\"project,region,autoscaler_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02R\x1a;/compute/v1/projects/{project}/regions/{region}/autoscalers:\x13\x61utoscaler_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb6\x13\n\x14RegionBackendBuckets\x12\xf4\x01\n\x06\x44\x65lete\x12\x39.google.cloud.compute.v1.DeleteRegionBackendBucketRequest\x1a\".google.cloud.compute.v1.Operation\"\x8a\x01\xda\x41\x1dproject,region,backend_bucket\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02Q*O/compute/v1/projects/{project}/regions/{region}/backendBuckets/{backend_bucket}\x12\xde\x01\n\x03Get\x12\x36.google.cloud.compute.v1.GetRegionBackendBucketRequest\x1a&.google.cloud.compute.v1.BackendBucket\"w\xda\x41\x1dproject,region,backend_bucket\x82\xd3\xe4\x93\x02Q\x12O/compute/v1/projects/{project}/regions/{region}/backendBuckets/{backend_bucket}\x12\xea\x01\n\x0cGetIamPolicy\x12?.google.cloud.compute.v1.GetIamPolicyRegionBackendBucketRequest\x1a\x1f.google.cloud.compute.v1.Policy\"x\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02X\x12V/compute/v1/projects/{project}/regions/{region}/backendBuckets/{resource}/getIamPolicy\x12\x85\x02\n\x06Insert\x12\x39.google.cloud.compute.v1.InsertRegionBackendBucketRequest\x1a\".google.cloud.compute.v1.Operation\"\x9b\x01\xda\x41&project,region,backend_bucket_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02Y\">/compute/v1/projects/{project}/regions/{region}/backendBuckets:\x17\x62\x61\x63kend_bucket_resource\x12\xc5\x01\n\x04List\x12\x38.google.cloud.compute.v1.ListRegionBackendBucketsRequest\x1a*.google.cloud.compute.v1.BackendBucketList\"W\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02@\x12>/compute/v1/projects/{project}/regions/{region}/backendBuckets\x12\xe2\x01\n\nListUsable\x12>.google.cloud.compute.v1.ListUsableRegionBackendBucketsRequest\x1a\x30.google.cloud.compute.v1.BackendBucketListUsable\"b\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02K\x12I/compute/v1/projects/{project}/regions/{region}/backendBuckets/listUsable\x12\xa3\x02\n\x05Patch\x12\x38.google.cloud.compute.v1.PatchRegionBackendBucketRequest\x1a\".google.cloud.compute.v1.Operation\"\xbb\x01\xda\x41\x35project,region,backend_bucket,backend_bucket_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02j2O/compute/v1/projects/{project}/regions/{region}/backendBuckets/{backend_bucket}:\x17\x62\x61\x63kend_bucket_resource\x12\xb2\x02\n\x0cSetIamPolicy\x12?.google.cloud.compute.v1.SetIamPolicyRegionBackendBucketRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xbf\x01\xda\x41:project,region,resource,region_set_policy_request_resource\x82\xd3\xe4\x93\x02|\"V/compute/v1/projects/{project}/regions/{region}/backendBuckets/{resource}/setIamPolicy:\"region_set_policy_request_resource\x12\xd4\x02\n\x12TestIamPermissions\x12\x45.google.cloud.compute.v1.TestIamPermissionsRegionBackendBucketRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc4\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x81\x01\"\\/compute/v1/projects/{project}/regions/{region}/backendBuckets/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xbd\x1b\n\x15RegionBackendServices\x12\xf8\x01\n\x06\x44\x65lete\x12:.google.cloud.compute.v1.DeleteRegionBackendServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\x8d\x01\xda\x41\x1eproject,region,backend_service\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S*Q/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}\x12\xe3\x01\n\x03Get\x12\x37.google.cloud.compute.v1.GetRegionBackendServiceRequest\x1a\'.google.cloud.compute.v1.BackendService\"z\xda\x41\x1eproject,region,backend_service\x82\xd3\xe4\x93\x02S\x12Q/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}\x12\xcb\x02\n\tGetHealth\x12=.google.cloud.compute.v1.GetHealthRegionBackendServiceRequest\x1a\x32.google.cloud.compute.v1.BackendServiceGroupHealth\"\xca\x01\xda\x41@project,region,backend_service,resource_group_reference_resource\x82\xd3\xe4\x93\x02\x80\x01\"[/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}/getHealth:!resource_group_reference_resource\x12\xec\x01\n\x0cGetIamPolicy\x12@.google.cloud.compute.v1.GetIamPolicyRegionBackendServiceRequest\x1a\x1f.google.cloud.compute.v1.Policy\"y\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02Y\x12W/compute/v1/projects/{project}/regions/{region}/backendServices/{resource}/getIamPolicy\x12\x89\x02\n\x06Insert\x12:.google.cloud.compute.v1.InsertRegionBackendServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\x9e\x01\xda\x41\'project,region,backend_service_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02[\"?/compute/v1/projects/{project}/regions/{region}/backendServices:\x18\x62\x61\x63kend_service_resource\x12\xc8\x01\n\x04List\x12\x39.google.cloud.compute.v1.ListRegionBackendServicesRequest\x1a+.google.cloud.compute.v1.BackendServiceList\"X\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/projects/{project}/regions/{region}/backendServices\x12\xe5\x01\n\nListUsable\x12?.google.cloud.compute.v1.ListUsableRegionBackendServicesRequest\x1a\x31.google.cloud.compute.v1.BackendServiceListUsable\"c\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02L\x12J/compute/v1/projects/{project}/regions/{region}/backendServices/listUsable\x12\xa9\x02\n\x05Patch\x12\x39.google.cloud.compute.v1.PatchRegionBackendServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\xc0\x01\xda\x41\x37project,region,backend_service,backend_service_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02m2Q/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}:\x18\x62\x61\x63kend_service_resource\x12\xb4\x02\n\x0cSetIamPolicy\x12@.google.cloud.compute.v1.SetIamPolicyRegionBackendServiceRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xc0\x01\xda\x41:project,region,resource,region_set_policy_request_resource\x82\xd3\xe4\x93\x02}\"W/compute/v1/projects/{project}/regions/{region}/backendServices/{resource}/setIamPolicy:\"region_set_policy_request_resource\x12\xe8\x02\n\x11SetSecurityPolicy\x12\x45.google.cloud.compute.v1.SetSecurityPolicyRegionBackendServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\xe7\x01\xda\x41\x41project,region,backend_service,security_policy_reference_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x89\x01\"c/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}/setSecurityPolicy:\"security_policy_reference_resource\x12\xd6\x02\n\x12TestIamPermissions\x12\x46.google.cloud.compute.v1.TestIamPermissionsRegionBackendServiceRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc5\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x82\x01\"]/compute/v1/projects/{project}/regions/{region}/backendServices/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xab\x02\n\x06Update\x12:.google.cloud.compute.v1.UpdateRegionBackendServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\xc0\x01\xda\x41\x37project,region,backend_service,backend_service_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02m\x1aQ/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}:\x18\x62\x61\x63kend_service_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xf2\t\n\x11RegionCommitments\x12\xcd\x01\n\x0e\x41ggregatedList\x12?.google.cloud.compute.v1.AggregatedListRegionCommitmentsRequest\x1a\x31.google.cloud.compute.v1.CommitmentAggregatedList\"G\xda\x41\x07project\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/aggregated/commitments\x12\xcd\x01\n\x03Get\x12\x33.google.cloud.compute.v1.GetRegionCommitmentRequest\x1a#.google.cloud.compute.v1.Commitment\"l\xda\x41\x19project,region,commitment\x82\xd3\xe4\x93\x02J\x12H/compute/v1/projects/{project}/regions/{region}/commitments/{commitment}\x12\xf7\x01\n\x06Insert\x12\x36.google.cloud.compute.v1.InsertRegionCommitmentRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\"project,region,commitment_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02R\";/compute/v1/projects/{project}/regions/{region}/commitments:\x13\x63ommitment_resource\x12\xbc\x01\n\x04List\x12\x35.google.cloud.compute.v1.ListRegionCommitmentsRequest\x1a\'.google.cloud.compute.v1.CommitmentList\"T\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/regions/{region}/commitments\x12\x8f\x02\n\x06Update\x12\x36.google.cloud.compute.v1.UpdateRegionCommitmentRequest\x1a\".google.cloud.compute.v1.Operation\"\xa8\x01\xda\x41-project,region,commitment,commitment_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02_2H/compute/v1/projects/{project}/regions/{region}/commitments/{commitment}:\x13\x63ommitment_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xfb\x12\n\x1bRegionCompositeHealthChecks\x12\xeb\x01\n\x0e\x41ggregatedList\x12I.google.cloud.compute.v1.AggregatedListRegionCompositeHealthChecksRequest\x1a;.google.cloud.compute.v1.CompositeHealthCheckAggregatedList\"Q\xda\x41\x07project\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/projects/{project}/aggregated/compositeHealthChecks\x12\x92\x02\n\x06\x44\x65lete\x12@.google.cloud.compute.v1.DeleteRegionCompositeHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41%project,region,composite_health_check\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02`*^/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{composite_health_check}\x12\x84\x02\n\x03Get\x12=.google.cloud.compute.v1.GetRegionCompositeHealthCheckRequest\x1a-.google.cloud.compute.v1.CompositeHealthCheck\"\x8e\x01\xda\x41%project,region,composite_health_check\x82\xd3\xe4\x93\x02`\x12^/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{composite_health_check}\x12\xa0\x02\n\tGetHealth\x12\x43.google.cloud.compute.v1.GetHealthRegionCompositeHealthCheckRequest\x1a\x33.google.cloud.compute.v1.CompositeHealthCheckHealth\"\x98\x01\xda\x41%project,region,composite_health_check\x82\xd3\xe4\x93\x02j\x12h/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{composite_health_check}/getHealth\x12\xa3\x02\n\x06Insert\x12@.google.cloud.compute.v1.InsertRegionCompositeHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\xb2\x01\xda\x41.project,region,composite_health_check_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02h\"E/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks:\x1f\x63omposite_health_check_resource\x12\xda\x01\n\x04List\x12?.google.cloud.compute.v1.ListRegionCompositeHealthChecksRequest\x1a\x31.google.cloud.compute.v1.CompositeHealthCheckList\"^\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02G\x12\x45/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks\x12\xd2\x02\n\x05Patch\x12?.google.cloud.compute.v1.PatchRegionCompositeHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\xe3\x01\xda\x41\x45project,region,composite_health_check,composite_health_check_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x81\x01\x32^/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{composite_health_check}:\x1f\x63omposite_health_check_resource\x12\xe2\x02\n\x12TestIamPermissions\x12L.google.cloud.compute.v1.TestIamPermissionsRegionCompositeHealthCheckRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xcb\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x88\x01\"c/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xbf\x04\n\x0fRegionDiskTypes\x12\xc5\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetRegionDiskTypeRequest\x1a!.google.cloud.compute.v1.DiskType\"h\xda\x41\x18project,region,disk_type\x82\xd3\xe4\x93\x02G\x12\x45/compute/v1/projects/{project}/regions/{region}/diskTypes/{disk_type}\x12\xbc\x01\n\x04List\x12\x33.google.cloud.compute.v1.ListRegionDiskTypesRequest\x1a+.google.cloud.compute.v1.RegionDiskTypeList\"R\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02;\x12\x39/compute/v1/projects/{project}/regions/{region}/diskTypes\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd2(\n\x0bRegionDisks\x12\xe6\x02\n\x13\x41\x64\x64ResourcePolicies\x12=.google.cloud.compute.v1.AddResourcePoliciesRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\xeb\x01\xda\x41Gproject,region,disk,region_disks_add_resource_policies_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x87\x01\"P/compute/v1/projects/{project}/regions/{region}/disks/{disk}/addResourcePolicies:3region_disks_add_resource_policies_request_resource\x12\x9c\x02\n\nBulkInsert\x12\x34.google.cloud.compute.v1.BulkInsertRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\xb3\x01\xda\x41\x31project,region,bulk_insert_disk_resource_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x66\"@/compute/v1/projects/{project}/regions/{region}/disks/bulkInsert:\"bulk_insert_disk_resource_resource\x12\x92\x02\n\x0e\x43reateSnapshot\x12\x38.google.cloud.compute.v1.CreateSnapshotRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41%project,region,disk,snapshot_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02`\"K/compute/v1/projects/{project}/regions/{region}/disks/{disk}/createSnapshot:\x11snapshot_resource\x12\xcd\x01\n\x06\x44\x65lete\x12\x30.google.cloud.compute.v1.DeleteRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"m\xda\x41\x13project,region,disk\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02>*\x12.google.cloud.compute.v1.StopAsyncReplicationRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\x82\x01\xda\x41\x13project,region,disk\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S\"Q/compute/v1/projects/{project}/regions/{region}/disks/{disk}/stopAsyncReplication\x12\xee\x02\n\x19StopGroupAsyncReplication\x12\x43.google.cloud.compute.v1.StopGroupAsyncReplicationRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\xe7\x01\xda\x41\x43project,region,disks_stop_group_async_replication_resource_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x87\x01\"O/compute/v1/projects/{project}/regions/{region}/disks/stopGroupAsyncReplication:4disks_stop_group_async_replication_resource_resource\x12\xc1\x02\n\x12TestIamPermissions\x12<.google.cloud.compute.v1.TestIamPermissionsRegionDiskRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xba\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02x\"S/compute/v1/projects/{project}/regions/{region}/disks/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xeb\x01\n\x06Update\x12\x30.google.cloud.compute.v1.UpdateRegionDiskRequest\x1a\".google.cloud.compute.v1.Operation\"\x8a\x01\xda\x41!project,region,disk,disk_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02M2.google.cloud.compute.v1.HealthAggregationPolicyAggregatedList\"U\xda\x41\x07project\x82\xd3\xe4\x93\x02\x45\x12\x43/compute/v1/projects/{project}/aggregated/healthAggregationPolicies\x12\x9f\x02\n\x06\x44\x65lete\x12\x43.google.cloud.compute.v1.DeleteRegionHealthAggregationPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xab\x01\xda\x41(project,region,health_aggregation_policy\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02g*e/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{health_aggregation_policy}\x12\x94\x02\n\x03Get\x12@.google.cloud.compute.v1.GetRegionHealthAggregationPolicyRequest\x1a\x30.google.cloud.compute.v1.HealthAggregationPolicy\"\x98\x01\xda\x41(project,region,health_aggregation_policy\x82\xd3\xe4\x93\x02g\x12\x65/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{health_aggregation_policy}\x12\xb0\x02\n\x06Insert\x12\x43.google.cloud.compute.v1.InsertRegionHealthAggregationPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xbc\x01\xda\x41\x31project,region,health_aggregation_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02o\"I/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies:\"health_aggregation_policy_resource\x12\xe5\x01\n\x04List\x12\x43.google.cloud.compute.v1.ListRegionHealthAggregationPoliciesRequest\x1a\x34.google.cloud.compute.v1.HealthAggregationPolicyList\"b\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02K\x12I/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies\x12\xe5\x02\n\x05Patch\x12\x42.google.cloud.compute.v1.PatchRegionHealthAggregationPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xf3\x01\xda\x41Kproject,region,health_aggregation_policy,health_aggregation_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x8b\x01\x32\x65/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{health_aggregation_policy}:\"health_aggregation_policy_resource\x12\xe9\x02\n\x12TestIamPermissions\x12O.google.cloud.compute.v1.TestIamPermissionsRegionHealthAggregationPolicyRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xcf\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x8c\x01\"g/compute/v1/projects/{project}/regions/{region}/healthAggregationPolicies/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xa0\x10\n\x19RegionHealthCheckServices\x12\xe5\x01\n\x0e\x41ggregatedList\x12G.google.cloud.compute.v1.AggregatedListRegionHealthCheckServicesRequest\x1a\x39.google.cloud.compute.v1.HealthCheckServiceAggregatedList\"O\xda\x41\x07project\x82\xd3\xe4\x93\x02?\x12=/compute/v1/projects/{project}/aggregated/healthCheckServices\x12\x8a\x02\n\x06\x44\x65lete\x12>.google.cloud.compute.v1.DeleteRegionHealthCheckServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\x9b\x01\xda\x41#project,region,health_check_service\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\\*Z/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{health_check_service}\x12\xfa\x01\n\x03Get\x12;.google.cloud.compute.v1.GetRegionHealthCheckServiceRequest\x1a+.google.cloud.compute.v1.HealthCheckService\"\x88\x01\xda\x41#project,region,health_check_service\x82\xd3\xe4\x93\x02\\\x12Z/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{health_check_service}\x12\x9b\x02\n\x06Insert\x12>.google.cloud.compute.v1.InsertRegionHealthCheckServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\xac\x01\xda\x41,project,region,health_check_service_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x64\"C/compute/v1/projects/{project}/regions/{region}/healthCheckServices:\x1dhealth_check_service_resource\x12\xd5\x01\n\x04List\x12=.google.cloud.compute.v1.ListRegionHealthCheckServicesRequest\x1a\x30.google.cloud.compute.v1.HealthCheckServicesList\"\\\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x45\x12\x43/compute/v1/projects/{project}/regions/{region}/healthCheckServices\x12\xc5\x02\n\x05Patch\x12=.google.cloud.compute.v1.PatchRegionHealthCheckServiceRequest\x1a\".google.cloud.compute.v1.Operation\"\xd8\x01\xda\x41\x41project,region,health_check_service,health_check_service_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02{2Z/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{health_check_service}:\x1dhealth_check_service_resource\x12\xde\x02\n\x12TestIamPermissions\x12J.google.cloud.compute.v1.TestIamPermissionsRegionHealthCheckServiceRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc9\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x86\x01\"a/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x98\x0f\n\x12RegionHealthChecks\x12\xec\x01\n\x06\x44\x65lete\x12\x37.google.cloud.compute.v1.DeleteRegionHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\x84\x01\xda\x41\x1bproject,region,health_check\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02M*K/compute/v1/projects/{project}/regions/{region}/healthChecks/{health_check}\x12\xd4\x01\n\x03Get\x12\x34.google.cloud.compute.v1.GetRegionHealthCheckRequest\x1a$.google.cloud.compute.v1.HealthCheck\"q\xda\x41\x1bproject,region,health_check\x82\xd3\xe4\x93\x02M\x12K/compute/v1/projects/{project}/regions/{region}/healthChecks/{health_check}\x12\xfd\x01\n\x06Insert\x12\x37.google.cloud.compute.v1.InsertRegionHealthCheckRequest\x1a\".google.cloud.compute.v1.Operation\"\x95\x01\xda\x41$project,region,health_check_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02U\"\x12region_instance_group_managers_stop_instances_request_resource\x12\xbd\x03\n\x10SuspendInstances\x12J.google.cloud.compute.v1.SuspendInstancesRegionInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xb8\x02\xda\x41gproject,region,instance_group_manager,region_instance_group_managers_suspend_instances_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\xb4\x01\"o/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/suspendInstances:Aregion_instance_group_managers_suspend_instances_request_resource\x12\xd5\x03\n\x18UpdatePerInstanceConfigs\x12R.google.cloud.compute.v1.UpdatePerInstanceConfigsRegionInstanceGroupManagerRequest\x1a\".google.cloud.compute.v1.Operation\"\xc0\x02\xda\x41gproject,region,instance_group_manager,region_instance_group_manager_update_instance_config_req_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\xbc\x01\"w/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/updatePerInstanceConfigs:Aregion_instance_group_manager_update_instance_config_req_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x9e\r\n\x14RegionInstanceGroups\x12\xde\x01\n\x03Get\x12\x36.google.cloud.compute.v1.GetRegionInstanceGroupRequest\x1a&.google.cloud.compute.v1.InstanceGroup\"w\xda\x41\x1dproject,region,instance_group\x82\xd3\xe4\x93\x02Q\x12O/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instance_group}\x12\xcb\x01\n\x04List\x12\x38.google.cloud.compute.v1.ListRegionInstanceGroupsRequest\x1a\x30.google.cloud.compute.v1.RegionInstanceGroupList\"W\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02@\x12>/compute/v1/projects/{project}/regions/{region}/instanceGroups\x12\x86\x03\n\rListInstances\x12\x41.google.cloud.compute.v1.ListInstancesRegionInstanceGroupsRequest\x1a:.google.cloud.compute.v1.RegionInstanceGroupsListInstances\"\xf5\x01\xda\x41Tproject,region,instance_group,region_instance_groups_list_instances_request_resource\x82\xd3\xe4\x93\x02\x97\x01\"]/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instance_group}/listInstances:6region_instance_groups_list_instances_request_resource\x12\x82\x03\n\rSetNamedPorts\x12@.google.cloud.compute.v1.SetNamedPortsRegionInstanceGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\x8a\x02\xda\x41Uproject,region,instance_group,region_instance_groups_set_named_ports_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x98\x01\"]/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instance_group}/setNamedPorts:7region_instance_groups_set_named_ports_request_resource\x12\xd4\x02\n\x12TestIamPermissions\x12\x45.google.cloud.compute.v1.TestIamPermissionsRegionInstanceGroupRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc4\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x81\x01\"\\/compute/v1/projects/{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xe6\x08\n\x17RegionInstanceTemplates\x12\x80\x02\n\x06\x44\x65lete\x12<.google.cloud.compute.v1.DeleteRegionInstanceTemplateRequest\x1a\".google.cloud.compute.v1.Operation\"\x93\x01\xda\x41 project,region,instance_template\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02W*U/compute/v1/projects/{project}/regions/{region}/instanceTemplates/{instance_template}\x12\xee\x01\n\x03Get\x12\x39.google.cloud.compute.v1.GetRegionInstanceTemplateRequest\x1a).google.cloud.compute.v1.InstanceTemplate\"\x80\x01\xda\x41 project,region,instance_template\x82\xd3\xe4\x93\x02W\x12U/compute/v1/projects/{project}/regions/{region}/instanceTemplates/{instance_template}\x12\x91\x02\n\x06Insert\x12<.google.cloud.compute.v1.InsertRegionInstanceTemplateRequest\x1a\".google.cloud.compute.v1.Operation\"\xa4\x01\xda\x41)project,region,instance_template_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02_\"A/compute/v1/projects/{project}/regions/{region}/instanceTemplates:\x1ainstance_template_resource\x12\xce\x01\n\x04List\x12;.google.cloud.compute.v1.ListRegionInstanceTemplatesRequest\x1a-.google.cloud.compute.v1.InstanceTemplateList\"Z\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/regions/{region}/instanceTemplates\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb4\x03\n\x0fRegionInstances\x12\xac\x02\n\nBulkInsert\x12\x38.google.cloud.compute.v1.BulkInsertRegionInstanceRequest\x1a\".google.cloud.compute.v1.Operation\"\xbf\x01\xda\x41\x35project,region,bulk_insert_instance_resource_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02n\"D/compute/v1/projects/{project}/regions/{region}/instances/bulkInsert:&bulk_insert_instance_resource_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd5\x10\n\x1bRegionInstantSnapshotGroups\x12\x92\x02\n\x06\x44\x65lete\x12@.google.cloud.compute.v1.DeleteRegionInstantSnapshotGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41%project,region,instant_snapshot_group\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02`*^/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{instant_snapshot_group}\x12\x84\x02\n\x03Get\x12=.google.cloud.compute.v1.GetRegionInstantSnapshotGroupRequest\x1a-.google.cloud.compute.v1.InstantSnapshotGroup\"\x8e\x01\xda\x41%project,region,instant_snapshot_group\x82\xd3\xe4\x93\x02`\x12^/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{instant_snapshot_group}\x12\xf8\x01\n\x0cGetIamPolicy\x12\x46.google.cloud.compute.v1.GetIamPolicyRegionInstantSnapshotGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\x7f\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02_\x12]/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/getIamPolicy\x12\xa3\x02\n\x06Insert\x12@.google.cloud.compute.v1.InsertRegionInstantSnapshotGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xb2\x01\xda\x41.project,region,instant_snapshot_group_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02h\"E/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups:\x1finstant_snapshot_group_resource\x12\xdb\x01\n\x04List\x12?.google.cloud.compute.v1.ListRegionInstantSnapshotGroupsRequest\x1a\x32.google.cloud.compute.v1.ListInstantSnapshotGroups\"^\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02G\x12\x45/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups\x12\xc1\x02\n\x0cSetIamPolicy\x12\x46.google.cloud.compute.v1.SetIamPolicyRegionInstantSnapshotGroupRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xc7\x01\xda\x41:project,region,resource,region_set_policy_request_resource\x82\xd3\xe4\x93\x02\x83\x01\"]/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/setIamPolicy:\"region_set_policy_request_resource\x12\xe2\x02\n\x12TestIamPermissions\x12L.google.cloud.compute.v1.TestIamPermissionsRegionInstantSnapshotGroupRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xcb\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x88\x01\"c/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x9f\x12\n\x16RegionInstantSnapshots\x12\xfc\x01\n\x06\x44\x65lete\x12;.google.cloud.compute.v1.DeleteRegionInstantSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\x1fproject,region,instant_snapshot\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02U*S/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{instant_snapshot}\x12\xe8\x01\n\x03Get\x12\x38.google.cloud.compute.v1.GetRegionInstantSnapshotRequest\x1a(.google.cloud.compute.v1.InstantSnapshot\"}\xda\x41\x1fproject,region,instant_snapshot\x82\xd3\xe4\x93\x02U\x12S/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{instant_snapshot}\x12\xee\x01\n\x0cGetIamPolicy\x12\x41.google.cloud.compute.v1.GetIamPolicyRegionInstantSnapshotRequest\x1a\x1f.google.cloud.compute.v1.Policy\"z\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02Z\x12X/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/getIamPolicy\x12\x8d\x02\n\x06Insert\x12;.google.cloud.compute.v1.InsertRegionInstantSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41(project,region,instant_snapshot_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02]\"@/compute/v1/projects/{project}/regions/{region}/instantSnapshots:\x19instant_snapshot_resource\x12\xcb\x01\n\x04List\x12:.google.cloud.compute.v1.ListRegionInstantSnapshotsRequest\x1a,.google.cloud.compute.v1.InstantSnapshotList\"Y\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/regions/{region}/instantSnapshots\x12\xb6\x02\n\x0cSetIamPolicy\x12\x41.google.cloud.compute.v1.SetIamPolicyRegionInstantSnapshotRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xc1\x01\xda\x41:project,region,resource,region_set_policy_request_resource\x82\xd3\xe4\x93\x02~\"X/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/setIamPolicy:\"region_set_policy_request_resource\x12\xc3\x02\n\tSetLabels\x12>.google.cloud.compute.v1.SetLabelsRegionInstantSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\xd1\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02{\"U/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/setLabels:\"region_set_labels_request_resource\x12\xd8\x02\n\x12TestIamPermissions\x12G.google.cloud.compute.v1.TestIamPermissionsRegionInstantSnapshotRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc6\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x83\x01\"^/compute/v1/projects/{project}/regions/{region}/instantSnapshots/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xa4\x13\n\x1bRegionNetworkEndpointGroups\x12\xcd\x03\n\x16\x41ttachNetworkEndpoints\x12P.google.cloud.compute.v1.AttachNetworkEndpointsRegionNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xbc\x02\xda\x41\x66project,region,network_endpoint_group,region_network_endpoint_groups_attach_endpoints_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\xb9\x01\"u/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}/attachNetworkEndpoints:@region_network_endpoint_groups_attach_endpoints_request_resource\x12\x92\x02\n\x06\x44\x65lete\x12@.google.cloud.compute.v1.DeleteRegionNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xa1\x01\xda\x41%project,region,network_endpoint_group\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02`*^/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}\x12\xcd\x03\n\x16\x44\x65tachNetworkEndpoints\x12P.google.cloud.compute.v1.DetachNetworkEndpointsRegionNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xbc\x02\xda\x41\x66project,region,network_endpoint_group,region_network_endpoint_groups_detach_endpoints_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\xb9\x01\"u/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}/detachNetworkEndpoints:@region_network_endpoint_groups_detach_endpoints_request_resource\x12\x84\x02\n\x03Get\x12=.google.cloud.compute.v1.GetRegionNetworkEndpointGroupRequest\x1a-.google.cloud.compute.v1.NetworkEndpointGroup\"\x8e\x01\xda\x41%project,region,network_endpoint_group\x82\xd3\xe4\x93\x02`\x12^/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}\x12\xa3\x02\n\x06Insert\x12@.google.cloud.compute.v1.InsertRegionNetworkEndpointGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xb2\x01\xda\x41.project,region,network_endpoint_group_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02h\"E/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups:\x1fnetwork_endpoint_group_resource\x12\xda\x01\n\x04List\x12?.google.cloud.compute.v1.ListRegionNetworkEndpointGroupsRequest\x1a\x31.google.cloud.compute.v1.NetworkEndpointGroupList\"^\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02G\x12\x45/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups\x12\xd1\x02\n\x14ListNetworkEndpoints\x12O.google.cloud.compute.v1.ListNetworkEndpointsRegionNetworkEndpointGroupsRequest\x1a\x42.google.cloud.compute.v1.NetworkEndpointGroupsListNetworkEndpoints\"\xa3\x01\xda\x41%project,region,network_endpoint_group\x82\xd3\xe4\x93\x02u\"s/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}/listNetworkEndpoints\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xf2\'\n\x1dRegionNetworkFirewallPolicies\x12\xeb\x02\n\x0e\x41\x64\x64\x41ssociation\x12I.google.cloud.compute.v1.AddAssociationRegionNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xe9\x01\xda\x41\x43project,region,firewall_policy,firewall_policy_association_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x89\x01\"a/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewall_policy}/addAssociation:$firewall_policy_association_resource\x12\xc7\x02\n\x07\x41\x64\x64Rule\x12\x42.google.cloud.compute.v1.AddRuleRegionNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xd3\x01\xda\x41.google.cloud.compute.v1.GetRegionNetworkFirewallPolicyRequest\x1a\'.google.cloud.compute.v1.FirewallPolicy\"{\xda\x41\x1eproject,region,firewall_policy\x82\xd3\xe4\x93\x02T\x12R/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewall_policy}\x12\x9c\x02\n\x0eGetAssociation\x12I.google.cloud.compute.v1.GetAssociationRegionNetworkFirewallPolicyRequest\x1a\x32.google.cloud.compute.v1.FirewallPolicyAssociation\"\x8a\x01\xda\x41\x1eproject,region,firewall_policy\x82\xd3\xe4\x93\x02\x63\x12\x61/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewall_policy}/getAssociation\x12\xb7\x02\n\x15GetEffectiveFirewalls\x12P.google.cloud.compute.v1.GetEffectiveFirewallsRegionNetworkFirewallPolicyRequest\x1aS.google.cloud.compute.v1.RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse\"w\xda\x41\x16project,region,network\x82\xd3\xe4\x93\x02X\x12V/compute/v1/projects/{project}/regions/{region}/firewallPolicies/getEffectiveFirewalls\x12\xf4\x01\n\x0cGetIamPolicy\x12G.google.cloud.compute.v1.GetIamPolicyRegionNetworkFirewallPolicyRequest\x1a\x1f.google.cloud.compute.v1.Policy\"z\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02Z\x12X/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{resource}/getIamPolicy\x12\x80\x02\n\x07GetRule\x12\x42.google.cloud.compute.v1.GetRuleRegionNetworkFirewallPolicyRequest\x1a+.google.cloud.compute.v1.FirewallPolicyRule\"\x83\x01\xda\x41\x1eproject,region,firewall_policy\x82\xd3\xe4\x93\x02\\\x12Z/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewall_policy}/getRule\x12\x91\x02\n\x06Insert\x12\x41.google.cloud.compute.v1.InsertRegionNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x01\xda\x41\'project,region,firewall_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\\\"@/compute/v1/projects/{project}/regions/{region}/firewallPolicies:\x18\x66irewall_policy_resource\x12\xd1\x01\n\x04List\x12\x41.google.cloud.compute.v1.ListRegionNetworkFirewallPoliciesRequest\x1a+.google.cloud.compute.v1.FirewallPolicyList\"Y\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/regions/{region}/firewallPolicies\x12\xb1\x02\n\x05Patch\x12@.google.cloud.compute.v1.PatchRegionNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xc1\x01\xda\x41\x37project,region,firewall_policy,firewall_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02n2R/compute/v1/projects/{project}/regions/{region}/firewallPolicies/{firewall_policy}:\x18\x66irewall_policy_resource\x12\xcd\x02\n\tPatchRule\x12\x44.google.cloud.compute.v1.PatchRuleRegionNetworkFirewallPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xd5\x01\xda\x41.google.cloud.compute.v1.RemoveRuleRegionSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x99\x01\xda\x41\x1eproject,region,security_policy\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02_\"]/compute/v1/projects/{project}/regions/{region}/securityPolicies/{security_policy}/removeRule\x12\xc2\x02\n\tSetLabels\x12=.google.cloud.compute.v1.SetLabelsRegionSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xd1\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02{\"U/compute/v1/projects/{project}/regions/{region}/securityPolicies/{resource}/setLabels:\"region_set_labels_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xe4\x04\n\x16RegionSnapshotSettings\x12\xc5\x01\n\x03Get\x12\x38.google.cloud.compute.v1.GetRegionSnapshotSettingRequest\x1a).google.cloud.compute.v1.SnapshotSettings\"Y\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/regions/{region}/snapshotSettings\x12\x8d\x02\n\x05Patch\x12:.google.cloud.compute.v1.PatchRegionSnapshotSettingRequest\x1a\".google.cloud.compute.v1.Operation\"\xa3\x01\xda\x41)project,region,snapshot_settings_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02^2@/compute/v1/projects/{project}/regions/{region}/snapshotSettings:\x1asnapshot_settings_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xc4\x13\n\x0fRegionSnapshots\x12\xdd\x01\n\x06\x44\x65lete\x12\x34.google.cloud.compute.v1.DeleteRegionSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"y\xda\x41\x17project,region,snapshot\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x46*D/compute/v1/projects/{project}/regions/{region}/snapshots/{snapshot}\x12\xc3\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetRegionSnapshotRequest\x1a!.google.cloud.compute.v1.Snapshot\"f\xda\x41\x17project,region,snapshot\x82\xd3\xe4\x93\x02\x46\x12\x44/compute/v1/projects/{project}/regions/{region}/snapshots/{snapshot}\x12\xe0\x01\n\x0cGetIamPolicy\x12:.google.cloud.compute.v1.GetIamPolicyRegionSnapshotRequest\x1a\x1f.google.cloud.compute.v1.Policy\"s\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02S\x12Q/compute/v1/projects/{project}/regions/{region}/snapshots/{resource}/getIamPolicy\x12\xef\x01\n\x06Insert\x12\x34.google.cloud.compute.v1.InsertRegionSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\x8a\x01\xda\x41 project,region,snapshot_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02N\"9/compute/v1/projects/{project}/regions/{region}/snapshots:\x11snapshot_resource\x12\xb6\x01\n\x04List\x12\x33.google.cloud.compute.v1.ListRegionSnapshotsRequest\x1a%.google.cloud.compute.v1.SnapshotList\"R\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02;\x12\x39/compute/v1/projects/{project}/regions/{region}/snapshots\x12\xa8\x02\n\x0cSetIamPolicy\x12:.google.cloud.compute.v1.SetIamPolicyRegionSnapshotRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xba\x01\xda\x41:project,region,resource,region_set_policy_request_resource\x82\xd3\xe4\x93\x02w\"Q/compute/v1/projects/{project}/regions/{region}/snapshots/{resource}/setIamPolicy:\"region_set_policy_request_resource\x12\xb5\x02\n\tSetLabels\x12\x37.google.cloud.compute.v1.SetLabelsRegionSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\xca\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02t\"N/compute/v1/projects/{project}/regions/{region}/snapshots/{resource}/setLabels:\"region_set_labels_request_resource\x12\xc9\x02\n\x12TestIamPermissions\x12@.google.cloud.compute.v1.TestIamPermissionsRegionSnapshotRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xbe\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02|\"W/compute/v1/projects/{project}/regions/{region}/snapshots/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xd9\x02\n\x0cUpdateKmsKey\x12:.google.cloud.compute.v1.UpdateKmsKeyRegionSnapshotRequest\x1a\".google.cloud.compute.v1.Operation\"\xe8\x01\xda\x41Gproject,region,snapshot,region_snapshot_update_kms_key_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x84\x01\"Q/compute/v1/projects/{project}/regions/{region}/snapshots/{snapshot}/updateKmsKey:/region_snapshot_update_kms_key_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xc3\x08\n\x15RegionSslCertificates\x12\xf8\x01\n\x06\x44\x65lete\x12:.google.cloud.compute.v1.DeleteRegionSslCertificateRequest\x1a\".google.cloud.compute.v1.Operation\"\x8d\x01\xda\x41\x1eproject,region,ssl_certificate\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S*Q/compute/v1/projects/{project}/regions/{region}/sslCertificates/{ssl_certificate}\x12\xe3\x01\n\x03Get\x12\x37.google.cloud.compute.v1.GetRegionSslCertificateRequest\x1a\'.google.cloud.compute.v1.SslCertificate\"z\xda\x41\x1eproject,region,ssl_certificate\x82\xd3\xe4\x93\x02S\x12Q/compute/v1/projects/{project}/regions/{region}/sslCertificates/{ssl_certificate}\x12\x89\x02\n\x06Insert\x12:.google.cloud.compute.v1.InsertRegionSslCertificateRequest\x1a\".google.cloud.compute.v1.Operation\"\x9e\x01\xda\x41\'project,region,ssl_certificate_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02[\"?/compute/v1/projects/{project}/regions/{region}/sslCertificates:\x18ssl_certificate_resource\x12\xc8\x01\n\x04List\x12\x39.google.cloud.compute.v1.ListRegionSslCertificatesRequest\x1a+.google.cloud.compute.v1.SslCertificateList\"X\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/projects/{project}/regions/{region}/sslCertificates\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x95\x0c\n\x11RegionSslPolicies\x12\xe4\x01\n\x06\x44\x65lete\x12\x35.google.cloud.compute.v1.DeleteRegionSslPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x7f\xda\x41\x19project,region,ssl_policy\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02J*H/compute/v1/projects/{project}/regions/{region}/sslPolicies/{ssl_policy}\x12\xcb\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetRegionSslPolicyRequest\x1a\".google.cloud.compute.v1.SslPolicy\"l\xda\x41\x19project,region,ssl_policy\x82\xd3\xe4\x93\x02J\x12H/compute/v1/projects/{project}/regions/{region}/sslPolicies/{ssl_policy}\x12\xf6\x01\n\x06Insert\x12\x35.google.cloud.compute.v1.InsertRegionSslPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41\"project,region,ssl_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02R\";/compute/v1/projects/{project}/regions/{region}/sslPolicies:\x13ssl_policy_resource\x12\xbd\x01\n\x04List\x12\x35.google.cloud.compute.v1.ListRegionSslPoliciesRequest\x1a(.google.cloud.compute.v1.SslPoliciesList\"T\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/regions/{region}/sslPolicies\x12\x8e\x02\n\x15ListAvailableFeatures\x12\x46.google.cloud.compute.v1.ListAvailableFeaturesRegionSslPoliciesRequest\x1a\x41.google.cloud.compute.v1.SslPoliciesListAvailableFeaturesResponse\"j\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02S\x12Q/compute/v1/projects/{project}/regions/{region}/sslPolicies/listAvailableFeatures\x12\x8c\x02\n\x05Patch\x12\x34.google.cloud.compute.v1.PatchRegionSslPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xa8\x01\xda\x41-project,region,ssl_policy,ssl_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02_2H/compute/v1/projects/{project}/regions/{region}/sslPolicies/{ssl_policy}:\x13ssl_policy_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xaa\x0b\n\x17RegionTargetHttpProxies\x12\xff\x01\n\x06\x44\x65lete\x12;.google.cloud.compute.v1.DeleteRegionTargetHttpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\x93\x01\xda\x41 project,region,target_http_proxy\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02W*U/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{target_http_proxy}\x12\xec\x01\n\x03Get\x12\x38.google.cloud.compute.v1.GetRegionTargetHttpProxyRequest\x1a(.google.cloud.compute.v1.TargetHttpProxy\"\x80\x01\xda\x41 project,region,target_http_proxy\x82\xd3\xe4\x93\x02W\x12U/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{target_http_proxy}\x12\x90\x02\n\x06Insert\x12;.google.cloud.compute.v1.InsertRegionTargetHttpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xa4\x01\xda\x41)project,region,target_http_proxy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02_\"A/compute/v1/projects/{project}/regions/{region}/targetHttpProxies:\x1atarget_http_proxy_resource\x12\xcd\x01\n\x04List\x12;.google.cloud.compute.v1.ListRegionTargetHttpProxiesRequest\x1a,.google.cloud.compute.v1.TargetHttpProxyList\"Z\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/regions/{region}/targetHttpProxies\x12\xc6\x02\n\tSetUrlMap\x12>.google.cloud.compute.v1.SetUrlMapRegionTargetHttpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xd4\x01\xda\x41;project,region,target_http_proxy,url_map_reference_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02}\"_/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{target_http_proxy}/setUrlMap:\x1aurl_map_reference_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb3\x11\n\x18RegionTargetHttpsProxies\x12\x83\x02\n\x06\x44\x65lete\x12<.google.cloud.compute.v1.DeleteRegionTargetHttpsProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\x96\x01\xda\x41!project,region,target_https_proxy\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02Y*W/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}\x12\xf1\x01\n\x03Get\x12\x39.google.cloud.compute.v1.GetRegionTargetHttpsProxyRequest\x1a).google.cloud.compute.v1.TargetHttpsProxy\"\x83\x01\xda\x41!project,region,target_https_proxy\x82\xd3\xe4\x93\x02Y\x12W/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}\x12\x94\x02\n\x06Insert\x12<.google.cloud.compute.v1.InsertRegionTargetHttpsProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xa7\x01\xda\x41*project,region,target_https_proxy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x61\"B/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies:\x1btarget_https_proxy_resource\x12\xd0\x01\n\x04List\x12<.google.cloud.compute.v1.ListRegionTargetHttpsProxiesRequest\x1a-.google.cloud.compute.v1.TargetHttpsProxyList\"[\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x44\x12\x42/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies\x12\xba\x02\n\x05Patch\x12;.google.cloud.compute.v1.PatchRegionTargetHttpsProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xcf\x01\xda\x41=project,region,target_https_proxy,target_https_proxy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02v2W/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}:\x1btarget_https_proxy_resource\x12\xb4\x03\n\x12SetSslCertificates\x12H.google.cloud.compute.v1.SetSslCertificatesRegionTargetHttpsProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xaf\x02\xda\x41\x63project,region,target_https_proxy,region_target_https_proxies_set_ssl_certificates_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\xaf\x01\"j/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}/setSslCertificates:Aregion_target_https_proxies_set_ssl_certificates_request_resource\x12\xca\x02\n\tSetUrlMap\x12?.google.cloud.compute.v1.SetUrlMapRegionTargetHttpsProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xd7\x01\xda\x41.google.cloud.compute.v1.AggregatedListResourcePoliciesRequest\x1a\x35.google.cloud.compute.v1.ResourcePolicyAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/resourcePolicies\x12\xf3\x01\n\x06\x44\x65lete\x12\x34.google.cloud.compute.v1.DeleteResourcePolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x8e\x01\xda\x41\x1eproject,region,resource_policy\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02T*R/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource_policy}\x12\xde\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetResourcePolicyRequest\x1a\'.google.cloud.compute.v1.ResourcePolicy\"{\xda\x41\x1eproject,region,resource_policy\x82\xd3\xe4\x93\x02T\x12R/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource_policy}\x12\xe7\x01\n\x0cGetIamPolicy\x12:.google.cloud.compute.v1.GetIamPolicyResourcePolicyRequest\x1a\x1f.google.cloud.compute.v1.Policy\"z\xda\x41\x17project,region,resource\x82\xd3\xe4\x93\x02Z\x12X/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/getIamPolicy\x12\x84\x02\n\x06Insert\x12\x34.google.cloud.compute.v1.InsertResourcePolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x9f\x01\xda\x41\'project,region,resource_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\\\"@/compute/v1/projects/{project}/regions/{region}/resourcePolicies:\x18resource_policy_resource\x12\xc4\x01\n\x04List\x12\x34.google.cloud.compute.v1.ListResourcePoliciesRequest\x1a+.google.cloud.compute.v1.ResourcePolicyList\"Y\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/regions/{region}/resourcePolicies\x12\xa4\x02\n\x05Patch\x12\x33.google.cloud.compute.v1.PatchResourcePolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xc1\x01\xda\x41\x37project,region,resource_policy,resource_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02n2R/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource_policy}:\x18resource_policy_resource\x12\xaf\x02\n\x0cSetIamPolicy\x12:.google.cloud.compute.v1.SetIamPolicyResourcePolicyRequest\x1a\x1f.google.cloud.compute.v1.Policy\"\xc1\x01\xda\x41:project,region,resource,region_set_policy_request_resource\x82\xd3\xe4\x93\x02~\"X/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/setIamPolicy:\"region_set_policy_request_resource\x12\xd1\x02\n\x12TestIamPermissions\x12@.google.cloud.compute.v1.TestIamPermissionsResourcePolicyRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc6\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02\x83\x01\"^/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x8e \n\x07Routers\x12\xbb\x01\n\x0e\x41ggregatedList\x12\x35.google.cloud.compute.v1.AggregatedListRoutersRequest\x1a-.google.cloud.compute.v1.RouterAggregatedList\"C\xda\x41\x07project\x82\xd3\xe4\x93\x02\x33\x12\x31/compute/v1/projects/{project}/aggregated/routers\x12\xcf\x01\n\x06\x44\x65lete\x12,.google.cloud.compute.v1.DeleteRouterRequest\x1a\".google.cloud.compute.v1.Operation\"s\xda\x41\x15project,region,router\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02\x42*@/compute/v1/projects/{project}/regions/{region}/routers/{router}\x12\xf8\x01\n\x11\x44\x65leteRoutePolicy\x12\x37.google.cloud.compute.v1.DeleteRoutePolicyRouterRequest\x1a\".google.cloud.compute.v1.Operation\"\x85\x01\xda\x41\x15project,region,router\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02T\"R/compute/v1/projects/{project}/regions/{region}/routers/{router}/deleteRoutePolicy\x12\xb3\x01\n\x03Get\x12).google.cloud.compute.v1.GetRouterRequest\x1a\x1f.google.cloud.compute.v1.Router\"`\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02\x42\x12@/compute/v1/projects/{project}/regions/{region}/routers/{router}\x12\xdd\x01\n\x0cGetNatIpInfo\x12\x32.google.cloud.compute.v1.GetNatIpInfoRouterRequest\x1a*.google.cloud.compute.v1.NatIpInfoResponse\"m\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02O\x12M/compute/v1/projects/{project}/regions/{region}/routers/{router}/getNatIpInfo\x12\xf5\x01\n\x11GetNatMappingInfo\x12\x38.google.cloud.compute.v1.GetNatMappingInfoRoutersRequest\x1a\x32.google.cloud.compute.v1.VmEndpointNatMappingsList\"r\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02T\x12R/compute/v1/projects/{project}/regions/{region}/routers/{router}/getNatMappingInfo\x12\xef\x01\n\x0eGetRoutePolicy\x12\x34.google.cloud.compute.v1.GetRoutePolicyRouterRequest\x1a\x36.google.cloud.compute.v1.RoutersGetRoutePolicyResponse\"o\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02Q\x12O/compute/v1/projects/{project}/regions/{region}/routers/{router}/getRoutePolicy\x12\xe9\x01\n\x0fGetRouterStatus\x12\x35.google.cloud.compute.v1.GetRouterStatusRouterRequest\x1a-.google.cloud.compute.v1.RouterStatusResponse\"p\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02R\x12P/compute/v1/projects/{project}/regions/{region}/routers/{router}/getRouterStatus\x12\xe1\x01\n\x06Insert\x12,.google.cloud.compute.v1.InsertRouterRequest\x1a\".google.cloud.compute.v1.Operation\"\x84\x01\xda\x41\x1eproject,region,router_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02J\"7/compute/v1/projects/{project}/regions/{region}/routers:\x0frouter_resource\x12\xaa\x01\n\x04List\x12+.google.cloud.compute.v1.ListRoutersRequest\x1a#.google.cloud.compute.v1.RouterList\"P\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x39\x12\x37/compute/v1/projects/{project}/regions/{region}/routers\x12\xe4\x01\n\rListBgpRoutes\x12\x34.google.cloud.compute.v1.ListBgpRoutesRoutersRequest\x1a-.google.cloud.compute.v1.RoutersListBgpRoutes\"n\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02P\x12N/compute/v1/projects/{project}/regions/{region}/routers/{router}/listBgpRoutes\x12\xf4\x01\n\x11ListRoutePolicies\x12\x38.google.cloud.compute.v1.ListRoutePoliciesRoutersRequest\x1a\x31.google.cloud.compute.v1.RoutersListRoutePolicies\"r\xda\x41\x15project,region,router\x82\xd3\xe4\x93\x02T\x12R/compute/v1/projects/{project}/regions/{region}/routers/{router}/listRoutePolicies\x12\xef\x01\n\x05Patch\x12+.google.cloud.compute.v1.PatchRouterRequest\x1a\".google.cloud.compute.v1.Operation\"\x94\x01\xda\x41%project,region,router,router_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S2@/compute/v1/projects/{project}/regions/{region}/routers/{router}:\x0frouter_resource\x12\xa2\x02\n\x10PatchRoutePolicy\x12\x36.google.cloud.compute.v1.PatchRoutePolicyRouterRequest\x1a\".google.cloud.compute.v1.Operation\"\xb1\x01\xda\x41+project,region,router,route_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02j\"Q/compute/v1/projects/{project}/regions/{region}/routers/{router}/patchRoutePolicy:\x15route_policy_resource\x12\xf5\x01\n\x07Preview\x12-.google.cloud.compute.v1.PreviewRouterRequest\x1a/.google.cloud.compute.v1.RoutersPreviewResponse\"\x89\x01\xda\x41%project,region,router,router_resource\x82\xd3\xe4\x93\x02[\"H/compute/v1/projects/{project}/regions/{region}/routers/{router}/preview:\x0frouter_resource\x12\xf1\x01\n\x06Update\x12,.google.cloud.compute.v1.UpdateRouterRequest\x1a\".google.cloud.compute.v1.Operation\"\x94\x01\xda\x41%project,region,router,router_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S\x1a@/compute/v1/projects/{project}/regions/{region}/routers/{router}:\x0frouter_resource\x12\xa5\x02\n\x11UpdateRoutePolicy\x12\x37.google.cloud.compute.v1.UpdateRoutePolicyRouterRequest\x1a\".google.cloud.compute.v1.Operation\"\xb2\x01\xda\x41+project,region,router,route_policy_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02k\"R/compute/v1/projects/{project}/regions/{region}/routers/{router}/updateRoutePolicy:\x15route_policy_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xef\x08\n\x06Routes\x12\xba\x01\n\x06\x44\x65lete\x12+.google.cloud.compute.v1.DeleteRouteRequest\x1a\".google.cloud.compute.v1.Operation\"_\xda\x41\rproject,route\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x36*4/compute/v1/projects/{project}/global/routes/{route}\x12\x9d\x01\n\x03Get\x12(.google.cloud.compute.v1.GetRouteRequest\x1a\x1e.google.cloud.compute.v1.Route\"L\xda\x41\rproject,route\x82\xd3\xe4\x93\x02\x36\x12\x34/compute/v1/projects/{project}/global/routes/{route}\x12\xcb\x01\n\x06Insert\x12+.google.cloud.compute.v1.InsertRouteRequest\x1a\".google.cloud.compute.v1.Operation\"p\xda\x41\x16project,route_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02>\",/compute/v1/projects/{project}/global/routes:\x0eroute_resource\x12\x96\x01\n\x04List\x12*.google.cloud.compute.v1.ListRoutesRequest\x1a\".google.cloud.compute.v1.RouteList\">\xda\x41\x07project\x82\xd3\xe4\x93\x02.\x12,/compute/v1/projects/{project}/global/routes\x12\xac\x02\n\x12TestIamPermissions\x12\x37.google.cloud.compute.v1.TestIamPermissionsRouteRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xaa\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02o\"J/compute/v1/projects/{project}/global/routes/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xef\x18\n\x10SecurityPolicies\x12\xa9\x02\n\x07\x41\x64\x64Rule\x12\x35.google.cloud.compute.v1.AddRuleSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xc2\x01\xda\x41\x35project,security_policy,security_policy_rule_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02q\"P/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/addRule:\x1dsecurity_policy_rule_resource\x12\xd7\x01\n\x0e\x41ggregatedList\x12>.google.cloud.compute.v1.AggregatedListSecurityPoliciesRequest\x1a\x37.google.cloud.compute.v1.SecurityPoliciesAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/securityPolicies\x12\xe1\x01\n\x06\x44\x65lete\x12\x34.google.cloud.compute.v1.DeleteSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"}\xda\x41\x17project,security_policy\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02J*H/compute/v1/projects/{project}/global/securityPolicies/{security_policy}\x12\xcd\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetSecurityPolicyRequest\x1a\'.google.cloud.compute.v1.SecurityPolicy\"j\xda\x41\x17project,security_policy\x82\xd3\xe4\x93\x02J\x12H/compute/v1/projects/{project}/global/securityPolicies/{security_policy}\x12\xe1\x01\n\x07GetRule\x12\x35.google.cloud.compute.v1.GetRuleSecurityPolicyRequest\x1a+.google.cloud.compute.v1.SecurityPolicyRule\"r\xda\x41\x17project,security_policy\x82\xd3\xe4\x93\x02R\x12P/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/getRule\x12\xf3\x01\n\x06Insert\x12\x34.google.cloud.compute.v1.InsertSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x8e\x01\xda\x41 project,security_policy_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02R\"6/compute/v1/projects/{project}/global/securityPolicies:\x18security_policy_resource\x12\xb3\x01\n\x04List\x12\x34.google.cloud.compute.v1.ListSecurityPoliciesRequest\x1a+.google.cloud.compute.v1.SecurityPolicyList\"H\xda\x41\x07project\x82\xd3\xe4\x93\x02\x38\x12\x36/compute/v1/projects/{project}/global/securityPolicies\x12\xae\x02\n\x1fListPreconfiguredExpressionSets\x12O.google.cloud.compute.v1.ListPreconfiguredExpressionSetsSecurityPoliciesRequest\x1aP.google.cloud.compute.v1.SecurityPoliciesListPreconfiguredExpressionSetsResponse\"h\xda\x41\x07project\x82\xd3\xe4\x93\x02X\x12V/compute/v1/projects/{project}/global/securityPolicies/listPreconfiguredExpressionSets\x12\x93\x02\n\x05Patch\x12\x33.google.cloud.compute.v1.PatchSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xb0\x01\xda\x41\x30project,security_policy,security_policy_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x64\x32H/compute/v1/projects/{project}/global/securityPolicies/{security_policy}:\x18security_policy_resource\x12\xaf\x02\n\tPatchRule\x12\x37.google.cloud.compute.v1.PatchRuleSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xc4\x01\xda\x41\x35project,security_policy,security_policy_rule_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02s\"R/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/patchRule:\x1dsecurity_policy_rule_resource\x12\xf5\x01\n\nRemoveRule\x12\x38.google.cloud.compute.v1.RemoveRuleSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x88\x01\xda\x41\x17project,security_policy\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02U\"S/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/removeRule\x12\xab\x02\n\tSetLabels\x12\x37.google.cloud.compute.v1.SetLabelsSecurityPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xc0\x01\xda\x41\x33project,resource,global_set_labels_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02q\"K/compute/v1/projects/{project}/global/securityPolicies/{resource}/setLabels:\"global_set_labels_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xf0\x13\n\x12ServiceAttachments\x12\xdc\x01\n\x0e\x41ggregatedList\x12@.google.cloud.compute.v1.AggregatedListServiceAttachmentsRequest\x1a\x38.google.cloud.compute.v1.ServiceAttachmentAggregatedList\"N\xda\x41\x07project\x82\xd3\xe4\x93\x02>\x12/compute/v1/projects/{project}/global/sslPolicies/{ssl_policy}\x12\xb4\x01\n\x03Get\x12,.google.cloud.compute.v1.GetSslPolicyRequest\x1a\".google.cloud.compute.v1.SslPolicy\"[\xda\x41\x12project,ssl_policy\x82\xd3\xe4\x93\x02@\x12>/compute/v1/projects/{project}/global/sslPolicies/{ssl_policy}\x12\xde\x01\n\x06Insert\x12/.google.cloud.compute.v1.InsertSslPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x7f\xda\x41\x1bproject,ssl_policy_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02H\"1/compute/v1/projects/{project}/global/sslPolicies:\x13ssl_policy_resource\x12\xa6\x01\n\x04List\x12/.google.cloud.compute.v1.ListSslPoliciesRequest\x1a(.google.cloud.compute.v1.SslPoliciesList\"C\xda\x41\x07project\x82\xd3\xe4\x93\x02\x33\x12\x31/compute/v1/projects/{project}/global/sslPolicies\x12\xf7\x01\n\x15ListAvailableFeatures\x12@.google.cloud.compute.v1.ListAvailableFeaturesSslPoliciesRequest\x1a\x41.google.cloud.compute.v1.SslPoliciesListAvailableFeaturesResponse\"Y\xda\x41\x07project\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/global/sslPolicies/listAvailableFeatures\x12\xf5\x01\n\x05Patch\x12..google.cloud.compute.v1.PatchSslPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x97\x01\xda\x41&project,ssl_policy,ssl_policy_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02U2>/compute/v1/projects/{project}/global/sslPolicies/{ssl_policy}:\x13ssl_policy_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xb5\x06\n\x10StoragePoolTypes\x12\xd6\x01\n\x0e\x41ggregatedList\x12>.google.cloud.compute.v1.AggregatedListStoragePoolTypesRequest\x1a\x36.google.cloud.compute.v1.StoragePoolTypeAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/storagePoolTypes\x12\xde\x01\n\x03Get\x12\x32.google.cloud.compute.v1.GetStoragePoolTypeRequest\x1a(.google.cloud.compute.v1.StoragePoolType\"y\xda\x41\x1eproject,zone,storage_pool_type\x82\xd3\xe4\x93\x02R\x12P/compute/v1/projects/{project}/zones/{zone}/storagePoolTypes/{storage_pool_type}\x12\xbf\x01\n\x04List\x12\x34.google.cloud.compute.v1.ListStoragePoolTypesRequest\x1a,.google.cloud.compute.v1.StoragePoolTypeList\"S\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02>\x12\x12.google.cloud.compute.v1.AggregatedListTargetTcpProxiesRequest\x1a\x35.google.cloud.compute.v1.TargetTcpProxyAggregatedList\"L\xda\x41\x07project\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/aggregated/targetTcpProxies\x12\xe3\x01\n\x06\x44\x65lete\x12\x34.google.cloud.compute.v1.DeleteTargetTcpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\x7f\xda\x41\x18project,target_tcp_proxy\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02K*I/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}\x12\xcf\x01\n\x03Get\x12\x31.google.cloud.compute.v1.GetTargetTcpProxyRequest\x1a\'.google.cloud.compute.v1.TargetTcpProxy\"l\xda\x41\x18project,target_tcp_proxy\x82\xd3\xe4\x93\x02K\x12I/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}\x12\xf5\x01\n\x06Insert\x12\x34.google.cloud.compute.v1.InsertTargetTcpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\x90\x01\xda\x41!project,target_tcp_proxy_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02S\"6/compute/v1/projects/{project}/global/targetTcpProxies:\x19target_tcp_proxy_resource\x12\xb3\x01\n\x04List\x12\x34.google.cloud.compute.v1.ListTargetTcpProxiesRequest\x1a+.google.cloud.compute.v1.TargetTcpProxyList\"H\xda\x41\x07project\x82\xd3\xe4\x93\x02\x38\x12\x36/compute/v1/projects/{project}/global/targetTcpProxies\x12\xfe\x02\n\x11SetBackendService\x12?.google.cloud.compute.v1.SetBackendServiceTargetTcpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\x83\x02\xda\x41Pproject,target_tcp_proxy,target_tcp_proxies_set_backend_service_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x96\x01\"[/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}/setBackendService:7target_tcp_proxies_set_backend_service_request_resource\x12\xef\x02\n\x0eSetProxyHeader\x12<.google.cloud.compute.v1.SetProxyHeaderTargetTcpProxyRequest\x1a\".google.cloud.compute.v1.Operation\"\xfa\x01\xda\x41Mproject,target_tcp_proxy,target_tcp_proxies_set_proxy_header_request_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x90\x01\"X/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}/setProxyHeader:4target_tcp_proxies_set_proxy_header_request_resource\x12\xbf\x02\n\x12TestIamPermissions\x12@.google.cloud.compute.v1.TestIamPermissionsTargetTcpProxyRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xb4\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02y\"T/compute/v1/projects/{project}/global/targetTcpProxies/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xec\x0c\n\x11TargetVpnGateways\x12\xd9\x01\n\x0e\x41ggregatedList\x12?.google.cloud.compute.v1.AggregatedListTargetVpnGatewaysRequest\x1a\x37.google.cloud.compute.v1.TargetVpnGatewayAggregatedList\"M\xda\x41\x07project\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/aggregated/targetVpnGateways\x12\xfc\x01\n\x06\x44\x65lete\x12\x36.google.cloud.compute.v1.DeleteTargetVpnGatewayRequest\x1a\".google.cloud.compute.v1.Operation\"\x95\x01\xda\x41!project,region,target_vpn_gateway\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02X*V/compute/v1/projects/{project}/regions/{region}/targetVpnGateways/{target_vpn_gateway}\x12\xea\x01\n\x03Get\x12\x33.google.cloud.compute.v1.GetTargetVpnGatewayRequest\x1a).google.cloud.compute.v1.TargetVpnGateway\"\x82\x01\xda\x41!project,region,target_vpn_gateway\x82\xd3\xe4\x93\x02X\x12V/compute/v1/projects/{project}/regions/{region}/targetVpnGateways/{target_vpn_gateway}\x12\x8d\x02\n\x06Insert\x12\x36.google.cloud.compute.v1.InsertTargetVpnGatewayRequest\x1a\".google.cloud.compute.v1.Operation\"\xa6\x01\xda\x41*project,region,target_vpn_gateway_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02`\"A/compute/v1/projects/{project}/regions/{region}/targetVpnGateways:\x1btarget_vpn_gateway_resource\x12\xc8\x01\n\x04List\x12\x35.google.cloud.compute.v1.ListTargetVpnGatewaysRequest\x1a-.google.cloud.compute.v1.TargetVpnGatewayList\"Z\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02\x43\x12\x41/compute/v1/projects/{project}/regions/{region}/targetVpnGateways\x12\xbf\x02\n\tSetLabels\x12\x39.google.cloud.compute.v1.SetLabelsTargetVpnGatewayRequest\x1a\".google.cloud.compute.v1.Operation\"\xd2\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02|\"V/compute/v1/projects/{project}/regions/{region}/targetVpnGateways/{resource}/setLabels:\"region_set_labels_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xcf\x12\n\x07UrlMaps\x12\xbc\x01\n\x0e\x41ggregatedList\x12\x35.google.cloud.compute.v1.AggregatedListUrlMapsRequest\x1a..google.cloud.compute.v1.UrlMapsAggregatedList\"C\xda\x41\x07project\x82\xd3\xe4\x93\x02\x33\x12\x31/compute/v1/projects/{project}/aggregated/urlMaps\x12\xc0\x01\n\x06\x44\x65lete\x12,.google.cloud.compute.v1.DeleteUrlMapRequest\x1a\".google.cloud.compute.v1.Operation\"d\xda\x41\x0fproject,url_map\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x39*7/compute/v1/projects/{project}/global/urlMaps/{url_map}\x12\xa4\x01\n\x03Get\x12).google.cloud.compute.v1.GetUrlMapRequest\x1a\x1f.google.cloud.compute.v1.UrlMap\"Q\xda\x41\x0fproject,url_map\x82\xd3\xe4\x93\x02\x39\x12\x37/compute/v1/projects/{project}/global/urlMaps/{url_map}\x12\xd1\x01\n\x06Insert\x12,.google.cloud.compute.v1.InsertUrlMapRequest\x1a\".google.cloud.compute.v1.Operation\"u\xda\x41\x18project,url_map_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x41\"-/compute/v1/projects/{project}/global/urlMaps:\x10url_map_resource\x12\xa6\x02\n\x0fInvalidateCache\x12\x35.google.cloud.compute.v1.InvalidateCacheUrlMapRequest\x1a\".google.cloud.compute.v1.Operation\"\xb7\x01\xda\x41\x30project,url_map,cache_invalidation_rule_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02k\"G/compute/v1/projects/{project}/global/urlMaps/{url_map}/invalidateCache: cache_invalidation_rule_resource\x12\x99\x01\n\x04List\x12+.google.cloud.compute.v1.ListUrlMapsRequest\x1a#.google.cloud.compute.v1.UrlMapList\"?\xda\x41\x07project\x82\xd3\xe4\x93\x02/\x12-/compute/v1/projects/{project}/global/urlMaps\x12\xe2\x01\n\x05Patch\x12+.google.cloud.compute.v1.PatchUrlMapRequest\x1a\".google.cloud.compute.v1.Operation\"\x87\x01\xda\x41 project,url_map,url_map_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02K27/compute/v1/projects/{project}/global/urlMaps/{url_map}:\x10url_map_resource\x12\xae\x02\n\x12TestIamPermissions\x12\x38.google.cloud.compute.v1.TestIamPermissionsUrlMapRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xab\x01\xda\x41\x32project,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02p\"K/compute/v1/projects/{project}/global/urlMaps/{resource}/testIamPermissions:!test_permissions_request_resource\x12\xe4\x01\n\x06Update\x12,.google.cloud.compute.v1.UpdateUrlMapRequest\x1a\".google.cloud.compute.v1.Operation\"\x87\x01\xda\x41 project,url_map,url_map_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02K\x1a\x37/compute/v1/projects/{project}/global/urlMaps/{url_map}:\x10url_map_resource\x12\x90\x02\n\x08Validate\x12..google.cloud.compute.v1.ValidateUrlMapRequest\x1a\x30.google.cloud.compute.v1.UrlMapsValidateResponse\"\xa1\x01\xda\x41\x32project,url_map,url_maps_validate_request_resource\x82\xd3\xe4\x93\x02\x66\"@/compute/v1/projects/{project}/global/urlMaps/{url_map}/validate:\"url_maps_validate_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x9f\x10\n\x0bVpnGateways\x12\xc7\x01\n\x0e\x41ggregatedList\x12\x39.google.cloud.compute.v1.AggregatedListVpnGatewaysRequest\x1a\x31.google.cloud.compute.v1.VpnGatewayAggregatedList\"G\xda\x41\x07project\x82\xd3\xe4\x93\x02\x37\x12\x35/compute/v1/projects/{project}/aggregated/vpnGateways\x12\xe2\x01\n\x06\x44\x65lete\x12\x30.google.cloud.compute.v1.DeleteVpnGatewayRequest\x1a\".google.cloud.compute.v1.Operation\"\x81\x01\xda\x41\x1aproject,region,vpn_gateway\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02K*I/compute/v1/projects/{project}/regions/{region}/vpnGateways/{vpn_gateway}\x12\xc9\x01\n\x03Get\x12-.google.cloud.compute.v1.GetVpnGatewayRequest\x1a#.google.cloud.compute.v1.VpnGateway\"n\xda\x41\x1aproject,region,vpn_gateway\x82\xd3\xe4\x93\x02K\x12I/compute/v1/projects/{project}/regions/{region}/vpnGateways/{vpn_gateway}\x12\xf1\x01\n\tGetStatus\x12\x33.google.cloud.compute.v1.GetStatusVpnGatewayRequest\x1a\x35.google.cloud.compute.v1.VpnGatewaysGetStatusResponse\"x\xda\x41\x1aproject,region,vpn_gateway\x82\xd3\xe4\x93\x02U\x12S/compute/v1/projects/{project}/regions/{region}/vpnGateways/{vpn_gateway}/getStatus\x12\xf3\x01\n\x06Insert\x12\x30.google.cloud.compute.v1.InsertVpnGatewayRequest\x1a\".google.cloud.compute.v1.Operation\"\x92\x01\xda\x41#project,region,vpn_gateway_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02S\";/compute/v1/projects/{project}/regions/{region}/vpnGateways:\x14vpn_gateway_resource\x12\xb6\x01\n\x04List\x12/.google.cloud.compute.v1.ListVpnGatewaysRequest\x1a\'.google.cloud.compute.v1.VpnGatewayList\"T\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02=\x12;/compute/v1/projects/{project}/regions/{region}/vpnGateways\x12\xb3\x02\n\tSetLabels\x12\x33.google.cloud.compute.v1.SetLabelsVpnGatewayRequest\x1a\".google.cloud.compute.v1.Operation\"\xcc\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02v\"P/compute/v1/projects/{project}/regions/{region}/vpnGateways/{resource}/setLabels:\"region_set_labels_request_resource\x12\xc7\x02\n\x12TestIamPermissions\x12<.google.cloud.compute.v1.TestIamPermissionsVpnGatewayRequest\x1a\x30.google.cloud.compute.v1.TestPermissionsResponse\"\xc0\x01\xda\x41\x39project,region,resource,test_permissions_request_resource\x82\xd3\xe4\x93\x02~\"Y/compute/v1/projects/{project}/regions/{region}/vpnGateways/{resource}/testIamPermissions:!test_permissions_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xca\x0b\n\nVpnTunnels\x12\xc4\x01\n\x0e\x41ggregatedList\x12\x38.google.cloud.compute.v1.AggregatedListVpnTunnelsRequest\x1a\x30.google.cloud.compute.v1.VpnTunnelAggregatedList\"F\xda\x41\x07project\x82\xd3\xe4\x93\x02\x36\x12\x34/compute/v1/projects/{project}/aggregated/vpnTunnels\x12\xdd\x01\n\x06\x44\x65lete\x12/.google.cloud.compute.v1.DeleteVpnTunnelRequest\x1a\".google.cloud.compute.v1.Operation\"~\xda\x41\x19project,region,vpn_tunnel\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02I*G/compute/v1/projects/{project}/regions/{region}/vpnTunnels/{vpn_tunnel}\x12\xc4\x01\n\x03Get\x12,.google.cloud.compute.v1.GetVpnTunnelRequest\x1a\".google.cloud.compute.v1.VpnTunnel\"k\xda\x41\x19project,region,vpn_tunnel\x82\xd3\xe4\x93\x02I\x12G/compute/v1/projects/{project}/regions/{region}/vpnTunnels/{vpn_tunnel}\x12\xef\x01\n\x06Insert\x12/.google.cloud.compute.v1.InsertVpnTunnelRequest\x1a\".google.cloud.compute.v1.Operation\"\x8f\x01\xda\x41\"project,region,vpn_tunnel_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02Q\":/compute/v1/projects/{project}/regions/{region}/vpnTunnels:\x13vpn_tunnel_resource\x12\xb3\x01\n\x04List\x12..google.cloud.compute.v1.ListVpnTunnelsRequest\x1a&.google.cloud.compute.v1.VpnTunnelList\"S\xda\x41\x0eproject,region\x82\xd3\xe4\x93\x02<\x12:/compute/v1/projects/{project}/regions/{region}/vpnTunnels\x12\xb1\x02\n\tSetLabels\x12\x32.google.cloud.compute.v1.SetLabelsVpnTunnelRequest\x1a\".google.cloud.compute.v1.Operation\"\xcb\x01\xda\x41:project,region,resource,region_set_labels_request_resource\x8aN\x10RegionOperations\x82\xd3\xe4\x93\x02u\"O/compute/v1/projects/{project}/regions/{region}/vpnTunnels/{resource}/setLabels:\"region_set_labels_request_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xa6\x0b\n\nWireGroups\x12\x87\x02\n\x06\x44\x65lete\x12/.google.cloud.compute.v1.DeleteWireGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xa7\x01\xda\x41%project,cross_site_network,wire_group\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02\x66*d/compute/v1/projects/{project}/global/crossSiteNetworks/{cross_site_network}/wireGroups/{wire_group}\x12\xee\x01\n\x03Get\x12,.google.cloud.compute.v1.GetWireGroupRequest\x1a\".google.cloud.compute.v1.WireGroup\"\x94\x01\xda\x41%project,cross_site_network,wire_group\x82\xd3\xe4\x93\x02\x66\x12\x64/compute/v1/projects/{project}/global/crossSiteNetworks/{cross_site_network}/wireGroups/{wire_group}\x12\x98\x02\n\x06Insert\x12/.google.cloud.compute.v1.InsertWireGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xb8\x01\xda\x41.project,cross_site_network,wire_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02n\"W/compute/v1/projects/{project}/global/crossSiteNetworks/{cross_site_network}/wireGroups:\x13wire_group_resource\x12\xdc\x01\n\x04List\x12..google.cloud.compute.v1.ListWireGroupsRequest\x1a&.google.cloud.compute.v1.WireGroupList\"|\xda\x41\x1aproject,cross_site_network\x82\xd3\xe4\x93\x02Y\x12W/compute/v1/projects/{project}/global/crossSiteNetworks/{cross_site_network}/wireGroups\x12\xae\x02\n\x05Patch\x12..google.cloud.compute.v1.PatchWireGroupRequest\x1a\".google.cloud.compute.v1.Operation\"\xd0\x01\xda\x41\x39project,cross_site_network,wire_group,wire_group_resource\x8aN\x10GlobalOperations\x82\xd3\xe4\x93\x02{2d/compute/v1/projects/{project}/global/crossSiteNetworks/{cross_site_network}/wireGroups/{wire_group}:\x13wire_group_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xa3\x07\n\x0eZoneOperations\x12\xd8\x01\n\x06\x44\x65lete\x12\x33.google.cloud.compute.v1.DeleteZoneOperationRequest\x1a\x34.google.cloud.compute.v1.DeleteZoneOperationResponse\"c\xda\x41\x16project,zone,operation\x82\xd3\xe4\x93\x02\x44*B/compute/v1/projects/{project}/zones/{zone}/operations/{operation}\x12\xc3\x01\n\x03Get\x12\x30.google.cloud.compute.v1.GetZoneOperationRequest\x1a\".google.cloud.compute.v1.Operation\"f\xda\x41\x16project,zone,operation\x90N\x01\x82\xd3\xe4\x93\x02\x44\x12\x42/compute/v1/projects/{project}/zones/{zone}/operations/{operation}\x12\xb1\x01\n\x04List\x12\x32.google.cloud.compute.v1.ListZoneOperationsRequest\x1a&.google.cloud.compute.v1.OperationList\"M\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02\x38\x12\x36/compute/v1/projects/{project}/zones/{zone}/operations\x12\xc7\x01\n\x04Wait\x12\x31.google.cloud.compute.v1.WaitZoneOperationRequest\x1a\".google.cloud.compute.v1.Operation\"h\xda\x41\x16project,zone,operation\x82\xd3\xe4\x93\x02I\"G/compute/v1/projects/{project}/zones/{zone}/operations/{operation}/wait\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\x98\x0b\n\x17ZoneVmExtensionPolicies\x12\xfd\x01\n\x06\x44\x65lete\x12;.google.cloud.compute.v1.DeleteZoneVmExtensionPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\x91\x01\xda\x41 project,zone,vm_extension_policy\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02W*U/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies/{vm_extension_policy}\x12\xee\x01\n\x03Get\x12\x38.google.cloud.compute.v1.GetZoneVmExtensionPolicyRequest\x1a*.google.cloud.compute.v1.VmExtensionPolicy\"\x80\x01\xda\x41 project,zone,vm_extension_policy\x82\xd3\xe4\x93\x02W\x12U/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies/{vm_extension_policy}\x12\x8e\x02\n\x06Insert\x12;.google.cloud.compute.v1.InsertZoneVmExtensionPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xa2\x01\xda\x41)project,zone,vm_extension_policy_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02_\"?/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies:\x1cvm_extension_policy_resource\x12\xcb\x01\n\x04List\x12;.google.cloud.compute.v1.ListZoneVmExtensionPoliciesRequest\x1a..google.cloud.compute.v1.VmExtensionPolicyList\"V\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02\x41\x12?/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies\x12\xb8\x02\n\x06Update\x12;.google.cloud.compute.v1.UpdateZoneVmExtensionPolicyRequest\x1a\".google.cloud.compute.v1.Operation\"\xcc\x01\xda\x41=project,zone,vm_extension_policy,vm_extension_policy_resource\x8aN\x0eZoneOperations\x82\xd3\xe4\x93\x02u2U/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies/{vm_extension_policy}:\x1cvm_extension_policy_resource\x1ar\xca\x41\x16\x63ompute.googleapis.com\xd2\x41Vhttps://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platform2\xd1\x03\n\x05Zones\x12\x91\x01\n\x03Get\x12\'.google.cloud.compute.v1.GetZoneRequest\x1a\x1d.google.cloud.compute.v1.Zone\"B\xda\x41\x0cproject,zone\x82\xd3\xe4\x93\x02-\x12+/compute/v1/projects/{project}/zones/{zone}\x12\x8c\x01\n\x04List\x12).google.cloud.compute.v1.ListZonesRequest\x1a!.google.cloud.compute.v1.ZoneList\"6\xda\x41\x07project\x82\xd3\xe4\x93\x02&\x12$/compute/v1/projects/{project}/zones\x1a\xa4\x01\xca\x41\x16\x63ompute.googleapis.com\xd2\x41\x87\x01https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/cloud-platformB\xa7\x01\n\x1b\x63om.google.cloud.compute.v1P\x01Z5cloud.google.com/go/compute/apiv1/computepb;computepb\xaa\x02\x17Google.Cloud.Compute.V1\xca\x02\x17Google\\Cloud\\Compute\\V1\xea\x02\x1aGoogle::Cloud::Compute::V1b\x06proto3" pool = ::Google::Protobuf::DescriptorPool.generated_pool pool.add_serialized_file(descriptor_data) @@ -75,6 +75,7 @@ module V1 AggregatedListAcceleratorTypesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.AggregatedListAcceleratorTypesRequest").msgclass AggregatedListAddressesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.AggregatedListAddressesRequest").msgclass AggregatedListAutoscalersRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.AggregatedListAutoscalersRequest").msgclass + AggregatedListBackendBucketsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.AggregatedListBackendBucketsRequest").msgclass AggregatedListBackendServicesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.AggregatedListBackendServicesRequest").msgclass AggregatedListDiskTypesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.AggregatedListDiskTypesRequest").msgclass AggregatedListDisksRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.AggregatedListDisksRequest").msgclass @@ -180,18 +181,22 @@ module V1 Backend = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Backend").msgclass Backend::BalancingMode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Backend.BalancingMode").enummodule Backend::Preference = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Backend.Preference").enummodule + Backend::TrafficDuration = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Backend.TrafficDuration").enummodule BackendBackendOrchestrationInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBackendOrchestrationInfo").msgclass BackendBucket = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucket").msgclass BackendBucket::CompressionMode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucket.CompressionMode").enummodule BackendBucket::LoadBalancingScheme = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucket.LoadBalancingScheme").enummodule + BackendBucketAggregatedList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucketAggregatedList").msgclass BackendBucketCdnPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucketCdnPolicy").msgclass BackendBucketCdnPolicy::CacheMode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucketCdnPolicy.CacheMode").enummodule BackendBucketCdnPolicyBypassCacheOnRequestHeader = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucketCdnPolicyBypassCacheOnRequestHeader").msgclass BackendBucketCdnPolicyCacheKeyPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucketCdnPolicyCacheKeyPolicy").msgclass BackendBucketCdnPolicyNegativeCachingPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucketCdnPolicyNegativeCachingPolicy").msgclass BackendBucketList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucketList").msgclass + BackendBucketListUsable = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucketListUsable").msgclass BackendBucketParams = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucketParams").msgclass BackendBucketUsedBy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucketUsedBy").msgclass + BackendBucketsScopedList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendBucketsScopedList").msgclass BackendCustomMetric = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendCustomMetric").msgclass BackendService = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendService").msgclass BackendService::CompressionMode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BackendService.CompressionMode").enummodule @@ -265,12 +270,17 @@ module V1 BundledLocalSsds = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.BundledLocalSsds").msgclass CacheInvalidationRule = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CacheInvalidationRule").msgclass CacheKeyPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CacheKeyPolicy").msgclass + CachePolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CachePolicy").msgclass + CachePolicy::CacheMode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CachePolicy.CacheMode").enummodule + CachePolicyCacheKeyPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CachePolicyCacheKeyPolicy").msgclass + CachePolicyNegativeCachingPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CachePolicyNegativeCachingPolicy").msgclass CalendarModeAdviceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CalendarModeAdviceRequest").msgclass CalendarModeAdviceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CalendarModeAdviceResponse").msgclass CalendarModeAdviceRpcRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CalendarModeAdviceRpcRequest").msgclass CalendarModeRecommendation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CalendarModeRecommendation").msgclass CancelFutureReservationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CancelFutureReservationRequest").msgclass CancelInstanceGroupManagerResizeRequestRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CancelInstanceGroupManagerResizeRequestRequest").msgclass + CancelRegionInstanceGroupManagerResizeRequestRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CancelRegionInstanceGroupManagerResizeRequestRequest").msgclass CircuitBreakers = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CircuitBreakers").msgclass CloneRulesFirewallPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CloneRulesFirewallPolicyRequest").msgclass CloneRulesNetworkFirewallPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CloneRulesNetworkFirewallPolicyRequest").msgclass @@ -282,11 +292,16 @@ module V1 Commitment::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Commitment.Type").enummodule CommitmentAggregatedList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CommitmentAggregatedList").msgclass CommitmentList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CommitmentList").msgclass + CommitmentParams = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CommitmentParams").msgclass CommitmentResourceStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CommitmentResourceStatus").msgclass CommitmentsScopedList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CommitmentsScopedList").msgclass CompositeHealthCheck = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CompositeHealthCheck").msgclass CompositeHealthCheckAggregatedList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CompositeHealthCheckAggregatedList").msgclass + CompositeHealthCheckHealth = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CompositeHealthCheckHealth").msgclass + CompositeHealthCheckHealth::HealthState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CompositeHealthCheckHealth.HealthState").enummodule CompositeHealthCheckList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CompositeHealthCheckList").msgclass + CompositeHealthChecksGetHealthResponseHealthSourceHealth = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CompositeHealthChecksGetHealthResponseHealthSourceHealth").msgclass + CompositeHealthChecksGetHealthResponseHealthSourceHealth::HealthState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CompositeHealthChecksGetHealthResponseHealthSourceHealth.HealthState").enummodule CompositeHealthChecksScopedList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.CompositeHealthChecksScopedList").msgclass ConfidentialInstanceConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ConfidentialInstanceConfig").msgclass ConfidentialInstanceConfig::ConfidentialInstanceType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ConfidentialInstanceConfig.ConfidentialInstanceType").enummodule @@ -337,6 +352,7 @@ module V1 DeleteInstanceTemplateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteInstanceTemplateRequest").msgclass DeleteInstancesInstanceGroupManagerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteInstancesInstanceGroupManagerRequest").msgclass DeleteInstancesRegionInstanceGroupManagerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteInstancesRegionInstanceGroupManagerRequest").msgclass + DeleteInstantSnapshotGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteInstantSnapshotGroupRequest").msgclass DeleteInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteInstantSnapshotRequest").msgclass DeleteInterconnectAttachmentGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteInterconnectAttachmentGroupRequest").msgclass DeleteInterconnectAttachmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteInterconnectAttachmentRequest").msgclass @@ -360,6 +376,7 @@ module V1 DeletePublicAdvertisedPrefixeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeletePublicAdvertisedPrefixeRequest").msgclass DeletePublicDelegatedPrefixeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeletePublicDelegatedPrefixeRequest").msgclass DeleteRegionAutoscalerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionAutoscalerRequest").msgclass + DeleteRegionBackendBucketRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionBackendBucketRequest").msgclass DeleteRegionBackendServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionBackendServiceRequest").msgclass DeleteRegionCompositeHealthCheckRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionCompositeHealthCheckRequest").msgclass DeleteRegionDiskRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionDiskRequest").msgclass @@ -368,7 +385,9 @@ module V1 DeleteRegionHealthCheckServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionHealthCheckServiceRequest").msgclass DeleteRegionHealthSourceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionHealthSourceRequest").msgclass DeleteRegionInstanceGroupManagerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionInstanceGroupManagerRequest").msgclass + DeleteRegionInstanceGroupManagerResizeRequestRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionInstanceGroupManagerResizeRequestRequest").msgclass DeleteRegionInstanceTemplateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionInstanceTemplateRequest").msgclass + DeleteRegionInstantSnapshotGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionInstantSnapshotGroupRequest").msgclass DeleteRegionInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionInstantSnapshotRequest").msgclass DeleteRegionNetworkEndpointGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionNetworkEndpointGroupRequest").msgclass DeleteRegionNetworkFirewallPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionNetworkFirewallPolicyRequest").msgclass @@ -376,6 +395,7 @@ module V1 DeleteRegionOperationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionOperationRequest").msgclass DeleteRegionOperationResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionOperationResponse").msgclass DeleteRegionSecurityPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionSecurityPolicyRequest").msgclass + DeleteRegionSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionSnapshotRequest").msgclass DeleteRegionSslCertificateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionSslCertificateRequest").msgclass DeleteRegionSslPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionSslPolicyRequest").msgclass DeleteRegionTargetHttpProxyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteRegionTargetHttpProxyRequest").msgclass @@ -410,6 +430,7 @@ module V1 DeleteWireGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteWireGroupRequest").msgclass DeleteZoneOperationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteZoneOperationRequest").msgclass DeleteZoneOperationResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteZoneOperationResponse").msgclass + DeleteZoneVmExtensionPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeleteZoneVmExtensionPolicyRequest").msgclass Denied = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Denied").msgclass DeprecateImageRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeprecateImageRequest").msgclass DeprecationStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DeprecationStatus").msgclass @@ -439,6 +460,7 @@ module V1 DiskTypeAggregatedList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DiskTypeAggregatedList").msgclass DiskTypeList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DiskTypeList").msgclass DiskTypesScopedList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DiskTypesScopedList").msgclass + DiskUpdateKmsKeyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DiskUpdateKmsKeyRequest").msgclass DisksAddResourcePoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DisksAddResourcePoliciesRequest").msgclass DisksRemoveResourcePoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DisksRemoveResourcePoliciesRequest").msgclass DisksResizeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.DisksResizeRequest").msgclass @@ -505,6 +527,7 @@ module V1 ForwardingRuleServiceDirectoryRegistration = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ForwardingRuleServiceDirectoryRegistration").msgclass ForwardingRulesScopedList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ForwardingRulesScopedList").msgclass FutureReservation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.FutureReservation").msgclass + FutureReservation::ConfidentialComputeType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.FutureReservation.ConfidentialComputeType").enummodule FutureReservation::DeploymentType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.FutureReservation.DeploymentType").enummodule FutureReservation::PlanningStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.FutureReservation.PlanningStatus").enummodule FutureReservation::ReservationMode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.FutureReservation.ReservationMode").enummodule @@ -512,6 +535,7 @@ module V1 FutureReservationCommitmentInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.FutureReservationCommitmentInfo").msgclass FutureReservationCommitmentInfo::CommitmentPlan = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.FutureReservationCommitmentInfo.CommitmentPlan").enummodule FutureReservationCommitmentInfo::PreviousCommitmentTerms = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.FutureReservationCommitmentInfo.PreviousCommitmentTerms").enummodule + FutureReservationParams = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.FutureReservationParams").msgclass FutureReservationSpecificSKUProperties = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.FutureReservationSpecificSKUProperties").msgclass FutureReservationStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.FutureReservationStatus").msgclass FutureReservationStatus::AmendmentStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.FutureReservationStatus.AmendmentStatus").enummodule @@ -579,6 +603,8 @@ module V1 GetHealthBackendServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetHealthBackendServiceRequest").msgclass GetHealthCheckRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetHealthCheckRequest").msgclass GetHealthRegionBackendServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetHealthRegionBackendServiceRequest").msgclass + GetHealthRegionCompositeHealthCheckRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetHealthRegionCompositeHealthCheckRequest").msgclass + GetHealthRegionHealthSourceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetHealthRegionHealthSourceRequest").msgclass GetHealthTargetPoolRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetHealthTargetPoolRequest").msgclass GetIamPolicyBackendBucketRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyBackendBucketRequest").msgclass GetIamPolicyBackendServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyBackendServiceRequest").msgclass @@ -587,6 +613,7 @@ module V1 GetIamPolicyImageRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyImageRequest").msgclass GetIamPolicyInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyInstanceRequest").msgclass GetIamPolicyInstanceTemplateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyInstanceTemplateRequest").msgclass + GetIamPolicyInstantSnapshotGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyInstantSnapshotGroupRequest").msgclass GetIamPolicyInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyInstantSnapshotRequest").msgclass GetIamPolicyInterconnectAttachmentGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyInterconnectAttachmentGroupRequest").msgclass GetIamPolicyInterconnectGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyInterconnectGroupRequest").msgclass @@ -596,10 +623,13 @@ module V1 GetIamPolicyNetworkFirewallPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyNetworkFirewallPolicyRequest").msgclass GetIamPolicyNodeGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyNodeGroupRequest").msgclass GetIamPolicyNodeTemplateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyNodeTemplateRequest").msgclass + GetIamPolicyRegionBackendBucketRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyRegionBackendBucketRequest").msgclass GetIamPolicyRegionBackendServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyRegionBackendServiceRequest").msgclass GetIamPolicyRegionDiskRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyRegionDiskRequest").msgclass + GetIamPolicyRegionInstantSnapshotGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyRegionInstantSnapshotGroupRequest").msgclass GetIamPolicyRegionInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyRegionInstantSnapshotRequest").msgclass GetIamPolicyRegionNetworkFirewallPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyRegionNetworkFirewallPolicyRequest").msgclass + GetIamPolicyRegionSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyRegionSnapshotRequest").msgclass GetIamPolicyReservationBlockRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyReservationBlockRequest").msgclass GetIamPolicyReservationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyReservationRequest").msgclass GetIamPolicyReservationSubBlockRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetIamPolicyReservationSubBlockRequest").msgclass @@ -616,6 +646,7 @@ module V1 GetInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetInstanceRequest").msgclass GetInstanceSettingRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetInstanceSettingRequest").msgclass GetInstanceTemplateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetInstanceTemplateRequest").msgclass + GetInstantSnapshotGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetInstantSnapshotGroupRequest").msgclass GetInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetInstantSnapshotRequest").msgclass GetInterconnectAttachmentGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetInterconnectAttachmentGroupRequest").msgclass GetInterconnectAttachmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetInterconnectAttachmentRequest").msgclass @@ -649,6 +680,7 @@ module V1 GetPublicAdvertisedPrefixeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetPublicAdvertisedPrefixeRequest").msgclass GetPublicDelegatedPrefixeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetPublicDelegatedPrefixeRequest").msgclass GetRegionAutoscalerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionAutoscalerRequest").msgclass + GetRegionBackendBucketRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionBackendBucketRequest").msgclass GetRegionBackendServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionBackendServiceRequest").msgclass GetRegionCommitmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionCommitmentRequest").msgclass GetRegionCompositeHealthCheckRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionCompositeHealthCheckRequest").msgclass @@ -659,8 +691,10 @@ module V1 GetRegionHealthCheckServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionHealthCheckServiceRequest").msgclass GetRegionHealthSourceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionHealthSourceRequest").msgclass GetRegionInstanceGroupManagerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionInstanceGroupManagerRequest").msgclass + GetRegionInstanceGroupManagerResizeRequestRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionInstanceGroupManagerResizeRequestRequest").msgclass GetRegionInstanceGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionInstanceGroupRequest").msgclass GetRegionInstanceTemplateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionInstanceTemplateRequest").msgclass + GetRegionInstantSnapshotGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionInstantSnapshotGroupRequest").msgclass GetRegionInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionInstantSnapshotRequest").msgclass GetRegionNetworkEndpointGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionNetworkEndpointGroupRequest").msgclass GetRegionNetworkFirewallPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionNetworkFirewallPolicyRequest").msgclass @@ -668,6 +702,8 @@ module V1 GetRegionOperationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionOperationRequest").msgclass GetRegionRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionRequest").msgclass GetRegionSecurityPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionSecurityPolicyRequest").msgclass + GetRegionSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionSnapshotRequest").msgclass + GetRegionSnapshotSettingRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionSnapshotSettingRequest").msgclass GetRegionSslCertificateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionSslCertificateRequest").msgclass GetRegionSslPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionSslPolicyRequest").msgclass GetRegionTargetHttpProxyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetRegionTargetHttpProxyRequest").msgclass @@ -725,6 +761,7 @@ module V1 GetXpnResourcesProjectsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetXpnResourcesProjectsRequest").msgclass GetZoneOperationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetZoneOperationRequest").msgclass GetZoneRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetZoneRequest").msgclass + GetZoneVmExtensionPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GetZoneVmExtensionPolicyRequest").msgclass GlobalAddressesMoveRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GlobalAddressesMoveRequest").msgclass GlobalNetworkEndpointGroupsAttachEndpointsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GlobalNetworkEndpointGroupsAttachEndpointsRequest").msgclass GlobalNetworkEndpointGroupsDetachEndpointsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.GlobalNetworkEndpointGroupsDetachEndpointsRequest").msgclass @@ -768,7 +805,11 @@ module V1 HealthSource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.HealthSource").msgclass HealthSource::SourceType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.HealthSource.SourceType").enummodule HealthSourceAggregatedList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.HealthSourceAggregatedList").msgclass + HealthSourceHealth = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.HealthSourceHealth").msgclass + HealthSourceHealth::HealthState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.HealthSourceHealth.HealthState").enummodule HealthSourceList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.HealthSourceList").msgclass + HealthSourcesGetHealthResponseSourceInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.HealthSourcesGetHealthResponseSourceInfo").msgclass + HealthSourcesGetHealthResponseSourceInfoBackendInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.HealthSourcesGetHealthResponseSourceInfoBackendInfo").msgclass HealthSourcesScopedList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.HealthSourcesScopedList").msgclass HealthStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.HealthStatus").msgclass HealthStatus::HealthState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.HealthStatus.HealthState").enummodule @@ -823,6 +864,7 @@ module V1 InsertInstanceGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertInstanceGroupRequest").msgclass InsertInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertInstanceRequest").msgclass InsertInstanceTemplateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertInstanceTemplateRequest").msgclass + InsertInstantSnapshotGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertInstantSnapshotGroupRequest").msgclass InsertInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertInstantSnapshotRequest").msgclass InsertInterconnectAttachmentGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertInterconnectAttachmentGroupRequest").msgclass InsertInterconnectAttachmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertInterconnectAttachmentRequest").msgclass @@ -842,6 +884,7 @@ module V1 InsertPublicAdvertisedPrefixeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertPublicAdvertisedPrefixeRequest").msgclass InsertPublicDelegatedPrefixeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertPublicDelegatedPrefixeRequest").msgclass InsertRegionAutoscalerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionAutoscalerRequest").msgclass + InsertRegionBackendBucketRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionBackendBucketRequest").msgclass InsertRegionBackendServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionBackendServiceRequest").msgclass InsertRegionCommitmentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionCommitmentRequest").msgclass InsertRegionCompositeHealthCheckRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionCompositeHealthCheckRequest").msgclass @@ -851,12 +894,15 @@ module V1 InsertRegionHealthCheckServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionHealthCheckServiceRequest").msgclass InsertRegionHealthSourceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionHealthSourceRequest").msgclass InsertRegionInstanceGroupManagerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionInstanceGroupManagerRequest").msgclass + InsertRegionInstanceGroupManagerResizeRequestRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionInstanceGroupManagerResizeRequestRequest").msgclass InsertRegionInstanceTemplateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionInstanceTemplateRequest").msgclass + InsertRegionInstantSnapshotGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionInstantSnapshotGroupRequest").msgclass InsertRegionInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionInstantSnapshotRequest").msgclass InsertRegionNetworkEndpointGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionNetworkEndpointGroupRequest").msgclass InsertRegionNetworkFirewallPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionNetworkFirewallPolicyRequest").msgclass InsertRegionNotificationEndpointRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionNotificationEndpointRequest").msgclass InsertRegionSecurityPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionSecurityPolicyRequest").msgclass + InsertRegionSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionSnapshotRequest").msgclass InsertRegionSslCertificateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionSslCertificateRequest").msgclass InsertRegionSslPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionSslPolicyRequest").msgclass InsertRegionTargetHttpProxyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertRegionTargetHttpProxyRequest").msgclass @@ -886,6 +932,7 @@ module V1 InsertVpnGatewayRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertVpnGatewayRequest").msgclass InsertVpnTunnelRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertVpnTunnelRequest").msgclass InsertWireGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertWireGroupRequest").msgclass + InsertZoneVmExtensionPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InsertZoneVmExtensionPolicyRequest").msgclass Instance = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Instance").msgclass Instance::KeyRevocationActionType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Instance.KeyRevocationActionType").enummodule Instance::PrivateIpv6GoogleAccess = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Instance.PrivateIpv6GoogleAccess").enummodule @@ -926,6 +973,7 @@ module V1 InstanceGroupManagerStatusAllInstancesConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstanceGroupManagerStatusAllInstancesConfig").msgclass InstanceGroupManagerStatusBulkInstanceOperation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstanceGroupManagerStatusBulkInstanceOperation").msgclass InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck").msgclass + InstanceGroupManagerStatusInstanceStatusSummary = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstanceGroupManagerStatusInstanceStatusSummary").msgclass InstanceGroupManagerStatusStateful = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstanceGroupManagerStatusStateful").msgclass InstanceGroupManagerStatusStatefulPerInstanceConfigs = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstanceGroupManagerStatusStatefulPerInstanceConfigs").msgclass InstanceGroupManagerStatusVersionTarget = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstanceGroupManagerStatusVersionTarget").msgclass @@ -1009,6 +1057,11 @@ module V1 InstantSnapshot::Architecture = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstantSnapshot.Architecture").enummodule InstantSnapshot::Status = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstantSnapshot.Status").enummodule InstantSnapshotAggregatedList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstantSnapshotAggregatedList").msgclass + InstantSnapshotGroup = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstantSnapshotGroup").msgclass + InstantSnapshotGroup::Status = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstantSnapshotGroup.Status").enummodule + InstantSnapshotGroupParameters = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstantSnapshotGroupParameters").msgclass + InstantSnapshotGroupResourceStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstantSnapshotGroupResourceStatus").msgclass + InstantSnapshotGroupSourceInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstantSnapshotGroupSourceInfo").msgclass InstantSnapshotList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstantSnapshotList").msgclass InstantSnapshotParams = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstantSnapshotParams").msgclass InstantSnapshotResourceStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.InstantSnapshotResourceStatus").msgclass @@ -1186,6 +1239,8 @@ module V1 ListInstancesInstanceGroupsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListInstancesInstanceGroupsRequest").msgclass ListInstancesRegionInstanceGroupsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListInstancesRegionInstanceGroupsRequest").msgclass ListInstancesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListInstancesRequest").msgclass + ListInstantSnapshotGroups = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListInstantSnapshotGroups").msgclass + ListInstantSnapshotGroupsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListInstantSnapshotGroupsRequest").msgclass ListInstantSnapshotsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListInstantSnapshotsRequest").msgclass ListInterconnectAttachmentGroupsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListInterconnectAttachmentGroupsRequest").msgclass ListInterconnectAttachmentsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListInterconnectAttachmentsRequest").msgclass @@ -1223,6 +1278,7 @@ module V1 ListPublicDelegatedPrefixesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListPublicDelegatedPrefixesRequest").msgclass ListReferrersInstancesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListReferrersInstancesRequest").msgclass ListRegionAutoscalersRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionAutoscalersRequest").msgclass + ListRegionBackendBucketsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionBackendBucketsRequest").msgclass ListRegionBackendServicesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionBackendServicesRequest").msgclass ListRegionCommitmentsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionCommitmentsRequest").msgclass ListRegionCompositeHealthChecksRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionCompositeHealthChecksRequest").msgclass @@ -1232,15 +1288,18 @@ module V1 ListRegionHealthCheckServicesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionHealthCheckServicesRequest").msgclass ListRegionHealthChecksRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionHealthChecksRequest").msgclass ListRegionHealthSourcesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionHealthSourcesRequest").msgclass + ListRegionInstanceGroupManagerResizeRequestsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionInstanceGroupManagerResizeRequestsRequest").msgclass ListRegionInstanceGroupManagersRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionInstanceGroupManagersRequest").msgclass ListRegionInstanceGroupsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionInstanceGroupsRequest").msgclass ListRegionInstanceTemplatesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionInstanceTemplatesRequest").msgclass + ListRegionInstantSnapshotGroupsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionInstantSnapshotGroupsRequest").msgclass ListRegionInstantSnapshotsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionInstantSnapshotsRequest").msgclass ListRegionNetworkEndpointGroupsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionNetworkEndpointGroupsRequest").msgclass ListRegionNetworkFirewallPoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionNetworkFirewallPoliciesRequest").msgclass ListRegionNotificationEndpointsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionNotificationEndpointsRequest").msgclass ListRegionOperationsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionOperationsRequest").msgclass ListRegionSecurityPoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionSecurityPoliciesRequest").msgclass + ListRegionSnapshotsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionSnapshotsRequest").msgclass ListRegionSslCertificatesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionSslCertificatesRequest").msgclass ListRegionSslPoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionSslPoliciesRequest").msgclass ListRegionTargetHttpProxiesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListRegionTargetHttpProxiesRequest").msgclass @@ -1275,7 +1334,9 @@ module V1 ListTargetTcpProxiesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListTargetTcpProxiesRequest").msgclass ListTargetVpnGatewaysRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListTargetVpnGatewaysRequest").msgclass ListUrlMapsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListUrlMapsRequest").msgclass + ListUsableBackendBucketsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListUsableBackendBucketsRequest").msgclass ListUsableBackendServicesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListUsableBackendServicesRequest").msgclass + ListUsableRegionBackendBucketsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListUsableRegionBackendBucketsRequest").msgclass ListUsableRegionBackendServicesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListUsableRegionBackendServicesRequest").msgclass ListUsableSubnetworksRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListUsableSubnetworksRequest").msgclass ListVpnGatewaysRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListVpnGatewaysRequest").msgclass @@ -1283,6 +1344,7 @@ module V1 ListWireGroupsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListWireGroupsRequest").msgclass ListXpnHostsProjectsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListXpnHostsProjectsRequest").msgclass ListZoneOperationsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListZoneOperationsRequest").msgclass + ListZoneVmExtensionPoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListZoneVmExtensionPoliciesRequest").msgclass ListZonesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.ListZonesRequest").msgclass LocalDisk = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.LocalDisk").msgclass LocalizedMessage = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.LocalizedMessage").msgclass @@ -1522,6 +1584,7 @@ module V1 PatchPublicAdvertisedPrefixeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchPublicAdvertisedPrefixeRequest").msgclass PatchPublicDelegatedPrefixeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchPublicDelegatedPrefixeRequest").msgclass PatchRegionAutoscalerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchRegionAutoscalerRequest").msgclass + PatchRegionBackendBucketRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchRegionBackendBucketRequest").msgclass PatchRegionBackendServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchRegionBackendServiceRequest").msgclass PatchRegionCompositeHealthCheckRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchRegionCompositeHealthCheckRequest").msgclass PatchRegionHealthAggregationPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchRegionHealthAggregationPolicyRequest").msgclass @@ -1531,6 +1594,7 @@ module V1 PatchRegionInstanceGroupManagerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchRegionInstanceGroupManagerRequest").msgclass PatchRegionNetworkFirewallPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchRegionNetworkFirewallPolicyRequest").msgclass PatchRegionSecurityPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchRegionSecurityPolicyRequest").msgclass + PatchRegionSnapshotSettingRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchRegionSnapshotSettingRequest").msgclass PatchRegionSslPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchRegionSslPolicyRequest").msgclass PatchRegionTargetHttpsProxyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchRegionTargetHttpsProxyRequest").msgclass PatchRegionUrlMapRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.PatchRegionUrlMapRequest").msgclass @@ -1629,6 +1693,7 @@ module V1 RegionAddressesMoveRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionAddressesMoveRequest").msgclass RegionAutoscalerList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionAutoscalerList").msgclass RegionDiskTypeList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionDiskTypeList").msgclass + RegionDiskUpdateKmsKeyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionDiskUpdateKmsKeyRequest").msgclass RegionDisksAddResourcePoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionDisksAddResourcePoliciesRequest").msgclass RegionDisksRemoveResourcePoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionDisksRemoveResourcePoliciesRequest").msgclass RegionDisksResizeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionDisksResizeRequest").msgclass @@ -1637,6 +1702,7 @@ module V1 RegionInstanceGroupManagerDeleteInstanceConfigReq = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionInstanceGroupManagerDeleteInstanceConfigReq").msgclass RegionInstanceGroupManagerList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionInstanceGroupManagerList").msgclass RegionInstanceGroupManagerPatchInstanceConfigReq = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionInstanceGroupManagerPatchInstanceConfigReq").msgclass + RegionInstanceGroupManagerResizeRequestsListResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionInstanceGroupManagerResizeRequestsListResponse").msgclass RegionInstanceGroupManagerUpdateInstanceConfigReq = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionInstanceGroupManagerUpdateInstanceConfigReq").msgclass RegionInstanceGroupManagersAbandonInstancesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionInstanceGroupManagersAbandonInstancesRequest").msgclass RegionInstanceGroupManagersApplyUpdatesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionInstanceGroupManagersApplyUpdatesRequest").msgclass @@ -1666,6 +1732,7 @@ module V1 RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy.Type").enummodule RegionSetLabelsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionSetLabelsRequest").msgclass RegionSetPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionSetPolicyRequest").msgclass + RegionSnapshotUpdateKmsKeyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionSnapshotUpdateKmsKeyRequest").msgclass RegionTargetHttpsProxiesSetSslCertificatesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionTargetHttpsProxiesSetSslCertificatesRequest").msgclass RegionUrlMapsValidateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RegionUrlMapsValidateRequest").msgclass RemoveAssociationFirewallPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RemoveAssociationFirewallPolicyRequest").msgclass @@ -1691,6 +1758,7 @@ module V1 RequestMirrorPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RequestMirrorPolicy").msgclass RequestRemovePeeringNetworkRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.RequestRemovePeeringNetworkRequest").msgclass Reservation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Reservation").msgclass + Reservation::ConfidentialComputeType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Reservation.ConfidentialComputeType").enummodule Reservation::DeploymentType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Reservation.DeploymentType").enummodule Reservation::EarlyAccessMaintenance = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Reservation.EarlyAccessMaintenance").enummodule Reservation::ProtectionTier = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Reservation.ProtectionTier").enummodule @@ -1944,6 +2012,7 @@ module V1 SetIamPolicyImageRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyImageRequest").msgclass SetIamPolicyInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyInstanceRequest").msgclass SetIamPolicyInstanceTemplateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyInstanceTemplateRequest").msgclass + SetIamPolicyInstantSnapshotGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyInstantSnapshotGroupRequest").msgclass SetIamPolicyInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyInstantSnapshotRequest").msgclass SetIamPolicyInterconnectAttachmentGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyInterconnectAttachmentGroupRequest").msgclass SetIamPolicyInterconnectGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyInterconnectGroupRequest").msgclass @@ -1953,10 +2022,13 @@ module V1 SetIamPolicyNetworkFirewallPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyNetworkFirewallPolicyRequest").msgclass SetIamPolicyNodeGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyNodeGroupRequest").msgclass SetIamPolicyNodeTemplateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyNodeTemplateRequest").msgclass + SetIamPolicyRegionBackendBucketRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyRegionBackendBucketRequest").msgclass SetIamPolicyRegionBackendServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyRegionBackendServiceRequest").msgclass SetIamPolicyRegionDiskRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyRegionDiskRequest").msgclass + SetIamPolicyRegionInstantSnapshotGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyRegionInstantSnapshotGroupRequest").msgclass SetIamPolicyRegionInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyRegionInstantSnapshotRequest").msgclass SetIamPolicyRegionNetworkFirewallPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyRegionNetworkFirewallPolicyRequest").msgclass + SetIamPolicyRegionSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyRegionSnapshotRequest").msgclass SetIamPolicyReservationBlockRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyReservationBlockRequest").msgclass SetIamPolicyReservationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyReservationRequest").msgclass SetIamPolicyReservationSubBlockRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetIamPolicyReservationSubBlockRequest").msgclass @@ -1982,6 +2054,7 @@ module V1 SetLabelsRegionDiskRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetLabelsRegionDiskRequest").msgclass SetLabelsRegionInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetLabelsRegionInstantSnapshotRequest").msgclass SetLabelsRegionSecurityPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetLabelsRegionSecurityPolicyRequest").msgclass + SetLabelsRegionSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetLabelsRegionSnapshotRequest").msgclass SetLabelsSecurityPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetLabelsSecurityPolicyRequest").msgclass SetLabelsSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetLabelsSnapshotRequest").msgclass SetLabelsTargetVpnGatewayRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SetLabelsTargetVpnGatewayRequest").msgclass @@ -2037,12 +2110,17 @@ module V1 Snapshot::SnapshotType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Snapshot.SnapshotType").enummodule Snapshot::Status = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Snapshot.Status").enummodule Snapshot::StorageBytesStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.Snapshot.StorageBytesStatus").enummodule + SnapshotGroupParameters = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SnapshotGroupParameters").msgclass SnapshotList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SnapshotList").msgclass SnapshotParams = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SnapshotParams").msgclass SnapshotSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SnapshotSettings").msgclass + SnapshotSettingsAccessLocation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SnapshotSettingsAccessLocation").msgclass + SnapshotSettingsAccessLocation::Policy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SnapshotSettingsAccessLocation.Policy").enummodule + SnapshotSettingsAccessLocationAccessLocationPreference = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SnapshotSettingsAccessLocationAccessLocationPreference").msgclass SnapshotSettingsStorageLocationSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SnapshotSettingsStorageLocationSettings").msgclass SnapshotSettingsStorageLocationSettings::Policy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SnapshotSettingsStorageLocationSettings.Policy").enummodule SnapshotSettingsStorageLocationSettingsStorageLocationPreference = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SnapshotSettingsStorageLocationSettingsStorageLocationPreference").msgclass + SnapshotUpdateKmsKeyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SnapshotUpdateKmsKeyRequest").msgclass SourceDiskEncryptionKey = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SourceDiskEncryptionKey").msgclass SourceInstanceParams = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SourceInstanceParams").msgclass SourceInstanceProperties = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.SourceInstanceProperties").msgclass @@ -2203,6 +2281,7 @@ module V1 TestIamPermissionsInstanceGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsInstanceGroupRequest").msgclass TestIamPermissionsInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsInstanceRequest").msgclass TestIamPermissionsInstanceTemplateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsInstanceTemplateRequest").msgclass + TestIamPermissionsInstantSnapshotGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsInstantSnapshotGroupRequest").msgclass TestIamPermissionsInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsInstantSnapshotRequest").msgclass TestIamPermissionsInterconnectAttachmentGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsInterconnectAttachmentGroupRequest").msgclass TestIamPermissionsInterconnectGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsInterconnectGroupRequest").msgclass @@ -2216,6 +2295,7 @@ module V1 TestIamPermissionsNodeTemplateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsNodeTemplateRequest").msgclass TestIamPermissionsPacketMirroringRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsPacketMirroringRequest").msgclass TestIamPermissionsRegionAutoscalerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionAutoscalerRequest").msgclass + TestIamPermissionsRegionBackendBucketRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionBackendBucketRequest").msgclass TestIamPermissionsRegionBackendServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionBackendServiceRequest").msgclass TestIamPermissionsRegionCompositeHealthCheckRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionCompositeHealthCheckRequest").msgclass TestIamPermissionsRegionDiskRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionDiskRequest").msgclass @@ -2224,9 +2304,11 @@ module V1 TestIamPermissionsRegionHealthCheckServiceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionHealthCheckServiceRequest").msgclass TestIamPermissionsRegionHealthSourceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionHealthSourceRequest").msgclass TestIamPermissionsRegionInstanceGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionInstanceGroupRequest").msgclass + TestIamPermissionsRegionInstantSnapshotGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionInstantSnapshotGroupRequest").msgclass TestIamPermissionsRegionInstantSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionInstantSnapshotRequest").msgclass TestIamPermissionsRegionNetworkFirewallPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionNetworkFirewallPolicyRequest").msgclass TestIamPermissionsRegionNotificationEndpointRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionNotificationEndpointRequest").msgclass + TestIamPermissionsRegionSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsRegionSnapshotRequest").msgclass TestIamPermissionsReservationBlockRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsReservationBlockRequest").msgclass TestIamPermissionsReservationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsReservationRequest").msgclass TestIamPermissionsReservationSubBlockRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.TestIamPermissionsReservationSubBlockRequest").msgclass @@ -2261,6 +2343,10 @@ module V1 UpdateInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateInstanceRequest").msgclass UpdateInstanceRequest::MinimalAction = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateInstanceRequest.MinimalAction").enummodule UpdateInstanceRequest::MostDisruptiveAllowedAction = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateInstanceRequest.MostDisruptiveAllowedAction").enummodule + UpdateKmsKeyDiskRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateKmsKeyDiskRequest").msgclass + UpdateKmsKeyRegionDiskRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateKmsKeyRegionDiskRequest").msgclass + UpdateKmsKeyRegionSnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateKmsKeyRegionSnapshotRequest").msgclass + UpdateKmsKeySnapshotRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateKmsKeySnapshotRequest").msgclass UpdateLicenseRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateLicenseRequest").msgclass UpdateNetworkInterfaceInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateNetworkInterfaceInstanceRequest").msgclass UpdatePeeringNetworkRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdatePeeringNetworkRequest").msgclass @@ -2280,6 +2366,7 @@ module V1 UpdateShieldedInstanceConfigInstanceRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateShieldedInstanceConfigInstanceRequest").msgclass UpdateStoragePoolRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateStoragePoolRequest").msgclass UpdateUrlMapRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateUrlMapRequest").msgclass + UpdateZoneVmExtensionPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UpdateZoneVmExtensionPolicyRequest").msgclass UrlMap = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UrlMap").msgclass UrlMapList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UrlMapList").msgclass UrlMapReference = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.UrlMapReference").msgclass @@ -2306,6 +2393,12 @@ module V1 VmEndpointNatMappingsInterfaceNatMappings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.VmEndpointNatMappingsInterfaceNatMappings").msgclass VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.VmEndpointNatMappingsInterfaceNatMappingsNatRuleMappings").msgclass VmEndpointNatMappingsList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.VmEndpointNatMappingsList").msgclass + VmExtensionPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.VmExtensionPolicy").msgclass + VmExtensionPolicy::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.VmExtensionPolicy.State").enummodule + VmExtensionPolicyExtensionPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.VmExtensionPolicyExtensionPolicy").msgclass + VmExtensionPolicyInstanceSelector = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.VmExtensionPolicyInstanceSelector").msgclass + VmExtensionPolicyLabelSelector = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.VmExtensionPolicyLabelSelector").msgclass + VmExtensionPolicyList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.VmExtensionPolicyList").msgclass VpnGateway = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.VpnGateway").msgclass VpnGateway::GatewayIpVersion = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.VpnGateway.GatewayIpVersion").enummodule VpnGateway::StackType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.compute.v1.VpnGateway.StackType").enummodule diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/disks/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/disks/rest/client.rb index 762acb656d83..bc81c897b523 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/disks/rest/client.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/disks/rest/client.rb @@ -121,6 +121,8 @@ def self.configure default_config.rpcs.update.timeout = 600.0 + default_config.rpcs.update_kms_key.timeout = 600.0 + default_config end yield @configure if block_given? @@ -2352,6 +2354,115 @@ def update request, options = nil raise ::Google::Cloud::Error.from_error(e) end + ## + # Rotates the customer-managed + # encryption key to the latest version for the specified persistent disk. + # + # @overload update_kms_key(request, options = nil) + # Pass arguments to `update_kms_key` via a request object, either of type + # {::Google::Cloud::Compute::V1::UpdateKmsKeyDiskRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::UpdateKmsKeyDiskRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload update_kms_key(disk: nil, disk_update_kms_key_request_resource: nil, project: nil, request_id: nil, zone: nil) + # Pass arguments to `update_kms_key` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param disk [::String] + # Name of the Disk resource, should conform to RFC1035. + # @param disk_update_kms_key_request_resource [::Google::Cloud::Compute::V1::DiskUpdateKmsKeyRequest, ::Hash] + # The body resource for this request + # @param project [::String] + # Project ID for this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param zone [::String] + # The name of the zone for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::Disks::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::UpdateKmsKeyDiskRequest.new + # + # # Call the update_kms_key method. + # result = client.update_kms_key request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def update_kms_key request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::UpdateKmsKeyDiskRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.update_kms_key.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.update_kms_key.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.update_kms_key.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @disks_stub.update_kms_key request, options do |result, response| + result = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: zone_operations, + request_values: { + "project" => request.project, + "zone" => request.zone + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + ## # Configuration class for the Disks REST API. # @@ -2593,6 +2704,11 @@ class Rpcs # @return [::Gapic::Config::Method] # attr_reader :update + ## + # RPC-specific configuration for `update_kms_key` + # @return [::Gapic::Config::Method] + # + attr_reader :update_kms_key # @private def initialize parent_rpcs = nil @@ -2634,6 +2750,8 @@ def initialize parent_rpcs = nil @test_iam_permissions = ::Gapic::Config::Method.new test_iam_permissions_config update_config = parent_rpcs.update if parent_rpcs.respond_to? :update @update = ::Gapic::Config::Method.new update_config + update_kms_key_config = parent_rpcs.update_kms_key if parent_rpcs.respond_to? :update_kms_key + @update_kms_key = ::Gapic::Config::Method.new update_kms_key_config yield self if block_given? end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/disks/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/disks/rest/service_stub.rb index 3af51b4e6927..bebb16c0cdf4 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/disks/rest/service_stub.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/disks/rest/service_stub.rb @@ -833,6 +833,46 @@ def update request_pb, options = nil end end + ## + # Baseline implementation for the update_kms_key REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::UpdateKmsKeyDiskRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def update_kms_key request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_update_kms_key_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "update_kms_key", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + ## # @private # @@ -1275,6 +1315,30 @@ def self.transcode_update_request request_pb ) transcoder.transcode request_pb end + + ## + # @private + # + # GRPC transcoding helper method for the update_kms_key REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::UpdateKmsKeyDiskRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_update_kms_key_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}/updateKmsKey", + body: "disk_update_kms_key_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false], + ["disk", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end end end end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups.rb new file mode 100644 index 000000000000..d438f41961eb --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups.rb @@ -0,0 +1,47 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/instant_snapshot_groups/credentials" +require "google/cloud/compute/v1/instant_snapshot_groups/rest" + +module Google + module Cloud + module Compute + module V1 + ## + # The InstantSnapshotGroups API. + # + # @example Load this service and instantiate a REST client + # + # require "google/cloud/compute/v1/instant_snapshot_groups/rest" + # client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new + # + module InstantSnapshotGroups + end + end + end + end +end + +helper_path = ::File.join __dir__, "instant_snapshot_groups", "helpers.rb" +require "google/cloud/compute/v1/instant_snapshot_groups/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups/credentials.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups/credentials.rb new file mode 100644 index 000000000000..50f6c9ba26bf --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups/credentials.rb @@ -0,0 +1,52 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "googleauth" + +module Google + module Cloud + module Compute + module V1 + module InstantSnapshotGroups + # Credentials for the InstantSnapshotGroups API. + class Credentials < ::Google::Auth::Credentials + self.scope = [ + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/cloud-platform" + ] + self.env_vars = [ + "COMPUTE_CREDENTIALS", + "COMPUTE_KEYFILE", + "GOOGLE_CLOUD_CREDENTIALS", + "GOOGLE_CLOUD_KEYFILE", + "GCLOUD_KEYFILE", + "COMPUTE_CREDENTIALS_JSON", + "COMPUTE_KEYFILE_JSON", + "GOOGLE_CLOUD_CREDENTIALS_JSON", + "GOOGLE_CLOUD_KEYFILE_JSON", + "GCLOUD_KEYFILE_JSON" + ] + self.paths = [ + "~/.config/google_cloud/application_default_credentials.json" + ] + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups/rest.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups/rest.rb new file mode 100644 index 000000000000..9746e21e25c0 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups/rest.rb @@ -0,0 +1,51 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/rest" +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/instant_snapshot_groups/credentials" +require "google/cloud/compute/v1/instant_snapshot_groups/rest/client" + +module Google + module Cloud + module Compute + module V1 + ## + # The InstantSnapshotGroups API. + # + # To load this service and instantiate a REST client: + # + # require "google/cloud/compute/v1/instant_snapshot_groups/rest" + # client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new + # + module InstantSnapshotGroups + # Client for the REST transport + module Rest + end + end + end + end + end +end + +helper_path = ::File.join __dir__, "rest", "helpers.rb" +require "google/cloud/compute/v1/instant_snapshot_groups/rest/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups/rest/client.rb new file mode 100644 index 000000000000..a281c0e3f9c9 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups/rest/client.rb @@ -0,0 +1,1145 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/errors" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/instant_snapshot_groups/rest/service_stub" +require "google/cloud/compute/v1/zone_operations/rest" + +module Google + module Cloud + module Compute + module V1 + module InstantSnapshotGroups + module Rest + ## + # REST client for the InstantSnapshotGroups service. + # + # The InstantSnapshotGroups API. + # + class Client + # @private + API_VERSION = "" + + # @private + DEFAULT_ENDPOINT_TEMPLATE = "compute.$UNIVERSE_DOMAIN$" + + # @private + attr_reader :instant_snapshot_groups_stub + + ## + # Configure the InstantSnapshotGroups Client class. + # + # See {::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @example + # + # # Modify the configuration for all InstantSnapshotGroups clients + # ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.configure do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def self.configure + @configure ||= begin + namespace = ["Google", "Cloud", "Compute", "V1"] + parent_config = while namespace.any? + parent_name = namespace.join "::" + parent_const = const_get parent_name + break parent_const.configure if parent_const.respond_to? :configure + namespace.pop + end + default_config = Client::Configuration.new parent_config + + default_config.rpcs.delete.timeout = 600.0 + + default_config.rpcs.get.timeout = 600.0 + default_config.rpcs.get.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.get_iam_policy.timeout = 600.0 + default_config.rpcs.get_iam_policy.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.insert.timeout = 600.0 + + default_config.rpcs.list.timeout = 600.0 + default_config.rpcs.list.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.set_iam_policy.timeout = 600.0 + + default_config.rpcs.test_iam_permissions.timeout = 600.0 + + default_config + end + yield @configure if block_given? + @configure + end + + ## + # Configure the InstantSnapshotGroups Client instance. + # + # The configuration is set to the derived mode, meaning that values can be changed, + # but structural changes (adding new fields, etc.) are not allowed. Structural changes + # should be made on {Client.configure}. + # + # See {::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def configure + yield @config if block_given? + @config + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @instant_snapshot_groups_stub.universe_domain + end + + ## + # Create a new InstantSnapshotGroups REST client object. + # + # @example + # + # # Create a client using the default configuration + # client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new + # + # # Create a client using a custom configuration + # client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the InstantSnapshotGroups client. + # @yieldparam config [Client::Configuration] + # + def initialize + # Create the configuration object + @config = Configuration.new Client.configure + + # Yield the configuration if needed + yield @config if block_given? + + # Create credentials + credentials = @config.credentials + # Use self-signed JWT if the endpoint is unchanged from default, + # but only if the default endpoint does not have a region prefix. + enable_self_signed_jwt = @config.endpoint.nil? || + (@config.endpoint == Configuration::DEFAULT_ENDPOINT && + !@config.endpoint.split(".").first.include?("-")) + credentials ||= Credentials.default scope: @config.scope, + enable_self_signed_jwt: enable_self_signed_jwt + if credentials.is_a?(::String) || credentials.is_a?(::Hash) + credentials = Credentials.new credentials, scope: @config.scope + end + + @quota_project_id = @config.quota_project + @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id + + @zone_operations = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::Client.new do |config| + config.credentials = credentials + config.quota_project = @quota_project_id + config.endpoint = @config.endpoint + config.universe_domain = @config.universe_domain + end + + @instant_snapshot_groups_stub = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::ServiceStub.new( + endpoint: @config.endpoint, + endpoint_template: DEFAULT_ENDPOINT_TEMPLATE, + universe_domain: @config.universe_domain, + credentials: credentials, + logger: @config.logger + ) + + @instant_snapshot_groups_stub.logger(stub: true)&.info do |entry| + entry.set_system_name + entry.set_service + entry.message = "Created client for #{entry.service}" + entry.set_credentials_fields credentials + entry.set "customEndpoint", @config.endpoint if @config.endpoint + entry.set "defaultTimeout", @config.timeout if @config.timeout + entry.set "quotaProject", @quota_project_id if @quota_project_id + end + end + + ## + # Get the associated client for long-running operations via ZoneOperations. + # + # @return [::Google::Cloud::Compute::V1::ZoneOperations::Rest::Client] + # + attr_reader :zone_operations + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger + @instant_snapshot_groups_stub.logger + end + + # Service calls + + ## + # deletes a Zonal InstantSnapshotGroup resource + # + # @overload delete(request, options = nil) + # Pass arguments to `delete` via a request object, either of type + # {::Google::Cloud::Compute::V1::DeleteInstantSnapshotGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::DeleteInstantSnapshotGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload delete(instant_snapshot_group: nil, project: nil, request_id: nil, zone: nil) + # Pass arguments to `delete` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param instant_snapshot_group [::String] + # Name of the InstantSnapshot resource to delete. + # @param project [::String] + # Project ID for this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param zone [::String] + # The name of the zone for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::DeleteInstantSnapshotGroupRequest.new + # + # # Call the delete method. + # result = client.delete request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def delete request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::DeleteInstantSnapshotGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.delete.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.delete.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.delete.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @instant_snapshot_groups_stub.delete request, options do |result, response| + result = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: zone_operations, + request_values: { + "project" => request.project, + "zone" => request.zone + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # returns the specified InstantSnapshotGroup resource in the specified zone. + # + # @overload get(request, options = nil) + # Pass arguments to `get` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetInstantSnapshotGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetInstantSnapshotGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get(instant_snapshot_group: nil, project: nil, zone: nil) + # Pass arguments to `get` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param instant_snapshot_group [::String] + # Name of the InstantSnapshotGroup resource to return. + # @param project [::String] + # Project ID for this request. + # @param zone [::String] + # The name of the zone for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::InstantSnapshotGroup] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::InstantSnapshotGroup] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetInstantSnapshotGroupRequest.new + # + # # Call the get method. + # result = client.get request + # + # # The returned object is of type Google::Cloud::Compute::V1::InstantSnapshotGroup. + # p result + # + def get request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetInstantSnapshotGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @instant_snapshot_groups_stub.get request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Gets the access control policy for a resource. May be empty if no such + # policy or resource exists. + # + # @overload get_iam_policy(request, options = nil) + # Pass arguments to `get_iam_policy` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetIamPolicyInstantSnapshotGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetIamPolicyInstantSnapshotGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get_iam_policy(options_requested_policy_version: nil, project: nil, resource: nil, zone: nil) + # Pass arguments to `get_iam_policy` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param options_requested_policy_version [::Integer] + # Requested IAM Policy version. + # @param project [::String] + # Project ID for this request. + # @param resource [::String] + # Name or id of the resource for this request. + # @param zone [::String] + # The name of the zone for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetIamPolicyInstantSnapshotGroupRequest.new + # + # # Call the get_iam_policy method. + # result = client.get_iam_policy request + # + # # The returned object is of type Google::Cloud::Compute::V1::Policy. + # p result + # + def get_iam_policy request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetIamPolicyInstantSnapshotGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get_iam_policy.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get_iam_policy.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get_iam_policy.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @instant_snapshot_groups_stub.get_iam_policy request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # inserts a Zonal InstantSnapshotGroup resource + # + # @overload insert(request, options = nil) + # Pass arguments to `insert` via a request object, either of type + # {::Google::Cloud::Compute::V1::InsertInstantSnapshotGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::InsertInstantSnapshotGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload insert(instant_snapshot_group_resource: nil, project: nil, request_id: nil, source_consistency_group: nil, zone: nil) + # Pass arguments to `insert` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param instant_snapshot_group_resource [::Google::Cloud::Compute::V1::InstantSnapshotGroup, ::Hash] + # The body resource for this request + # @param project [::String] + # Project ID for this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param source_consistency_group [::String] + # begin_interface: MixerMutationRequestBuilder + # @param zone [::String] + # Name of the zone for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::InsertInstantSnapshotGroupRequest.new + # + # # Call the insert method. + # result = client.insert request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def insert request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::InsertInstantSnapshotGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.insert.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.insert.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.insert.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @instant_snapshot_groups_stub.insert request, options do |result, response| + result = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: zone_operations, + request_values: { + "project" => request.project, + "zone" => request.zone + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # retrieves the list of InstantSnapshotGroup resources contained within + # the specified zone. + # + # @overload list(request, options = nil) + # Pass arguments to `list` via a request object, either of type + # {::Google::Cloud::Compute::V1::ListInstantSnapshotGroupsRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::ListInstantSnapshotGroupsRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload list(filter: nil, max_results: nil, order_by: nil, page_token: nil, project: nil, return_partial_success: nil, zone: nil) + # Pass arguments to `list` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param filter [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @param max_results [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @param order_by [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @param page_token [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @param project [::String] + # Project ID for this request. + # @param return_partial_success [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @param zone [::String] + # The name of the zone for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::InstantSnapshotGroup>] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::InstantSnapshotGroup>] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::ListInstantSnapshotGroupsRequest.new + # + # # Call the list method. + # result = client.list request + # + # # The returned object is of type Google::Cloud::Compute::V1::ListInstantSnapshotGroups. + # p result + # + def list request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::ListInstantSnapshotGroupsRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.list.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.list.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.list.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @instant_snapshot_groups_stub.list request, options do |result, operation| + result = ::Gapic::Rest::PagedEnumerable.new @instant_snapshot_groups_stub, :list, "items", request, result, options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Sets the access control policy on the specified resource. + # Replaces any existing policy. + # + # @overload set_iam_policy(request, options = nil) + # Pass arguments to `set_iam_policy` via a request object, either of type + # {::Google::Cloud::Compute::V1::SetIamPolicyInstantSnapshotGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::SetIamPolicyInstantSnapshotGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload set_iam_policy(project: nil, resource: nil, zone: nil, zone_set_policy_request_resource: nil) + # Pass arguments to `set_iam_policy` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param resource [::String] + # Name or id of the resource for this request. + # @param zone [::String] + # The name of the zone for this request. + # @param zone_set_policy_request_resource [::Google::Cloud::Compute::V1::ZoneSetPolicyRequest, ::Hash] + # The body resource for this request + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::SetIamPolicyInstantSnapshotGroupRequest.new + # + # # Call the set_iam_policy method. + # result = client.set_iam_policy request + # + # # The returned object is of type Google::Cloud::Compute::V1::Policy. + # p result + # + def set_iam_policy request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::SetIamPolicyInstantSnapshotGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.set_iam_policy.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.set_iam_policy.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.set_iam_policy.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @instant_snapshot_groups_stub.set_iam_policy request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Returns permissions that a caller has on the specified resource. + # + # @overload test_iam_permissions(request, options = nil) + # Pass arguments to `test_iam_permissions` via a request object, either of type + # {::Google::Cloud::Compute::V1::TestIamPermissionsInstantSnapshotGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::TestIamPermissionsInstantSnapshotGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload test_iam_permissions(project: nil, resource: nil, test_permissions_request_resource: nil, zone: nil) + # Pass arguments to `test_iam_permissions` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param resource [::String] + # Name or id of the resource for this request. + # @param test_permissions_request_resource [::Google::Cloud::Compute::V1::TestPermissionsRequest, ::Hash] + # The body resource for this request + # @param zone [::String] + # The name of the zone for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::TestIamPermissionsInstantSnapshotGroupRequest.new + # + # # Call the test_iam_permissions method. + # result = client.test_iam_permissions request + # + # # The returned object is of type Google::Cloud::Compute::V1::TestPermissionsResponse. + # p result + # + def test_iam_permissions request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::TestIamPermissionsInstantSnapshotGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.test_iam_permissions.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.test_iam_permissions.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.test_iam_permissions.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @instant_snapshot_groups_stub.test_iam_permissions request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Configuration class for the InstantSnapshotGroups REST API. + # + # This class represents the configuration for InstantSnapshotGroups REST, + # providing control over timeouts, retry behavior, logging, transport + # parameters, and other low-level controls. Certain parameters can also be + # applied individually to specific RPCs. See + # {::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client::Configuration::Rpcs} + # for a list of RPCs that can be configured independently. + # + # Configuration can be applied globally to all clients, or to a single client + # on construction. + # + # @example + # + # # Modify the global config, setting the timeout for + # # delete to 20 seconds, + # # and all remaining timeouts to 10 seconds. + # ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.configure do |config| + # config.timeout = 10.0 + # config.rpcs.delete.timeout = 20.0 + # end + # + # # Apply the above configuration only to a new client. + # client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new do |config| + # config.timeout = 10.0 + # config.rpcs.delete.timeout = 20.0 + # end + # + # @!attribute [rw] endpoint + # A custom service endpoint, as a hostname or hostname:port. The default is + # nil, indicating to use the default endpoint in the current universe domain. + # @return [::String,nil] + # @!attribute [rw] credentials + # Credentials to send with calls. You may provide any of the following types: + # * (`String`) The path to a service account key file in JSON format + # * (`Hash`) A service account key as a Hash + # * (`Google::Auth::Credentials`) A googleauth credentials object + # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials)) + # * (`Signet::OAuth2::Client`) A signet oauth2 client object + # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client)) + # * (`nil`) indicating no credentials + # + # Warning: If you accept a credential configuration (JSON file or Hash) from an + # external source for authentication to Google Cloud, you must validate it before + # providing it to a Google API client library. Providing an unvalidated credential + # configuration to Google APIs can compromise the security of your systems and data. + # For more information, refer to [Validate credential configurations from external + # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials). + # @return [::Object] + # @!attribute [rw] scope + # The OAuth scopes + # @return [::Array<::String>] + # @!attribute [rw] lib_name + # The library name as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] lib_version + # The library version as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] timeout + # The call timeout in seconds. + # @return [::Numeric] + # @!attribute [rw] metadata + # Additional headers to be sent with the call. + # @return [::Hash{::Symbol=>::String}] + # @!attribute [rw] retry_policy + # The retry policy. The value is a hash with the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # @return [::Hash] + # @!attribute [rw] quota_project + # A separate project against which to charge quota. + # @return [::String] + # @!attribute [rw] universe_domain + # The universe domain within which to make requests. This determines the + # default endpoint URL. The default value of nil uses the environment + # universe (usually the default "googleapis.com" universe). + # @return [::String,nil] + # @!attribute [rw] logger + # A custom logger to use for request/response debug logging, or the value + # `:default` (the default) to construct a default logger, or `nil` to + # explicitly disable logging. + # @return [::Logger,:default,nil] + # + class Configuration + extend ::Gapic::Config + + # @private + # The endpoint specific to the default "googleapis.com" universe. Deprecated. + DEFAULT_ENDPOINT = "compute.googleapis.com" + + config_attr :endpoint, nil, ::String, nil + config_attr :credentials, nil do |value| + allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Google::Auth::BaseClient, ::Signet::OAuth2::Client, nil] + allowed.any? { |klass| klass === value } + end + config_attr :scope, nil, ::String, ::Array, nil + config_attr :lib_name, nil, ::String, nil + config_attr :lib_version, nil, ::String, nil + config_attr :timeout, nil, ::Numeric, nil + config_attr :metadata, nil, ::Hash, nil + config_attr :retry_policy, nil, ::Hash, ::Proc, nil + config_attr :quota_project, nil, ::String, nil + config_attr :universe_domain, nil, ::String, nil + config_attr :logger, :default, ::Logger, nil, :default + + # @private + def initialize parent_config = nil + @parent_config = parent_config unless parent_config.nil? + + yield self if block_given? + end + + ## + # Configurations for individual RPCs + # @return [Rpcs] + # + def rpcs + @rpcs ||= begin + parent_rpcs = nil + parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs) + Rpcs.new parent_rpcs + end + end + + ## + # Configuration RPC class for the InstantSnapshotGroups API. + # + # Includes fields providing the configuration for each RPC in this service. + # Each configuration object is of type `Gapic::Config::Method` and includes + # the following configuration fields: + # + # * `timeout` (*type:* `Numeric`) - The call timeout in seconds + # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional headers + # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields + # include the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # + class Rpcs + ## + # RPC-specific configuration for `delete` + # @return [::Gapic::Config::Method] + # + attr_reader :delete + ## + # RPC-specific configuration for `get` + # @return [::Gapic::Config::Method] + # + attr_reader :get + ## + # RPC-specific configuration for `get_iam_policy` + # @return [::Gapic::Config::Method] + # + attr_reader :get_iam_policy + ## + # RPC-specific configuration for `insert` + # @return [::Gapic::Config::Method] + # + attr_reader :insert + ## + # RPC-specific configuration for `list` + # @return [::Gapic::Config::Method] + # + attr_reader :list + ## + # RPC-specific configuration for `set_iam_policy` + # @return [::Gapic::Config::Method] + # + attr_reader :set_iam_policy + ## + # RPC-specific configuration for `test_iam_permissions` + # @return [::Gapic::Config::Method] + # + attr_reader :test_iam_permissions + + # @private + def initialize parent_rpcs = nil + delete_config = parent_rpcs.delete if parent_rpcs.respond_to? :delete + @delete = ::Gapic::Config::Method.new delete_config + get_config = parent_rpcs.get if parent_rpcs.respond_to? :get + @get = ::Gapic::Config::Method.new get_config + get_iam_policy_config = parent_rpcs.get_iam_policy if parent_rpcs.respond_to? :get_iam_policy + @get_iam_policy = ::Gapic::Config::Method.new get_iam_policy_config + insert_config = parent_rpcs.insert if parent_rpcs.respond_to? :insert + @insert = ::Gapic::Config::Method.new insert_config + list_config = parent_rpcs.list if parent_rpcs.respond_to? :list + @list = ::Gapic::Config::Method.new list_config + set_iam_policy_config = parent_rpcs.set_iam_policy if parent_rpcs.respond_to? :set_iam_policy + @set_iam_policy = ::Gapic::Config::Method.new set_iam_policy_config + test_iam_permissions_config = parent_rpcs.test_iam_permissions if parent_rpcs.respond_to? :test_iam_permissions + @test_iam_permissions = ::Gapic::Config::Method.new test_iam_permissions_config + + yield self if block_given? + end + end + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups/rest/service_stub.rb new file mode 100644 index 000000000000..00281ec62058 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/instant_snapshot_groups/rest/service_stub.rb @@ -0,0 +1,523 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/compute/v1/compute_pb" + +module Google + module Cloud + module Compute + module V1 + module InstantSnapshotGroups + module Rest + ## + # REST service stub for the InstantSnapshotGroups service. + # Service stub contains baseline method implementations + # including transcoding, making the REST call, and deserialing the response. + # + class ServiceStub + # @private + def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger: + # These require statements are intentionally placed here to initialize + # the REST modules only when it's required. + require "gapic/rest" + + @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, + endpoint_template: endpoint_template, + universe_domain: universe_domain, + credentials: credentials, + numeric_enums: false, + service_name: self.class, + raise_faraday_errors: false, + logger: logger + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @client_stub.universe_domain + end + + ## + # The effective endpoint + # + # @return [String] + # + def endpoint + @client_stub.endpoint + end + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger stub: false + stub ? @client_stub.stub_logger : @client_stub.logger + end + + ## + # Baseline implementation for the delete REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::DeleteInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def delete request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_delete_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "delete", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::InstantSnapshotGroup] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::InstantSnapshotGroup] + # A result object deserialized from the server's reply + def get request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::InstantSnapshotGroup.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the get_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetIamPolicyInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # A result object deserialized from the server's reply + def get_iam_policy request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_iam_policy_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get_iam_policy", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Policy.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the insert REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::InsertInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def insert request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_insert_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "insert", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListInstantSnapshotGroupsRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::ListInstantSnapshotGroups] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::ListInstantSnapshotGroups] + # A result object deserialized from the server's reply + def list request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_list_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "list", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::ListInstantSnapshotGroups.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the set_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::SetIamPolicyInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # A result object deserialized from the server's reply + def set_iam_policy request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_set_iam_policy_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "set_iam_policy", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Policy.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the test_iam_permissions REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::TestIamPermissionsInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # A result object deserialized from the server's reply + def test_iam_permissions request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_test_iam_permissions_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "test_iam_permissions", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::TestPermissionsResponse.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # @private + # + # GRPC transcoding helper method for the delete REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::DeleteInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_delete_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :delete, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{instant_snapshot_group}", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false], + ["instant_snapshot_group", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{instant_snapshot_group}", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false], + ["instant_snapshot_group", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the get_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetIamPolicyInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_iam_policy_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/getIamPolicy", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the insert REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::InsertInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_insert_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups", + body: "instant_snapshot_group_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListInstantSnapshotGroupsRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_list_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the set_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::SetIamPolicyInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_set_iam_policy_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/setIamPolicy", + body: "zone_set_policy_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the test_iam_permissions REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::TestIamPermissionsInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_test_iam_permissions_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/testIamPermissions", + body: "test_permissions_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets.rb new file mode 100644 index 000000000000..25c363d47598 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets.rb @@ -0,0 +1,47 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/region_backend_buckets/credentials" +require "google/cloud/compute/v1/region_backend_buckets/rest" + +module Google + module Cloud + module Compute + module V1 + ## + # The RegionBackendBuckets API. + # + # @example Load this service and instantiate a REST client + # + # require "google/cloud/compute/v1/region_backend_buckets/rest" + # client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new + # + module RegionBackendBuckets + end + end + end + end +end + +helper_path = ::File.join __dir__, "region_backend_buckets", "helpers.rb" +require "google/cloud/compute/v1/region_backend_buckets/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets/credentials.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets/credentials.rb new file mode 100644 index 000000000000..e9ad6b207243 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets/credentials.rb @@ -0,0 +1,52 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "googleauth" + +module Google + module Cloud + module Compute + module V1 + module RegionBackendBuckets + # Credentials for the RegionBackendBuckets API. + class Credentials < ::Google::Auth::Credentials + self.scope = [ + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/cloud-platform" + ] + self.env_vars = [ + "COMPUTE_CREDENTIALS", + "COMPUTE_KEYFILE", + "GOOGLE_CLOUD_CREDENTIALS", + "GOOGLE_CLOUD_KEYFILE", + "GCLOUD_KEYFILE", + "COMPUTE_CREDENTIALS_JSON", + "COMPUTE_KEYFILE_JSON", + "GOOGLE_CLOUD_CREDENTIALS_JSON", + "GOOGLE_CLOUD_KEYFILE_JSON", + "GCLOUD_KEYFILE_JSON" + ] + self.paths = [ + "~/.config/google_cloud/application_default_credentials.json" + ] + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets/rest.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets/rest.rb new file mode 100644 index 000000000000..e21c5d4062cd --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets/rest.rb @@ -0,0 +1,51 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/rest" +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/region_backend_buckets/credentials" +require "google/cloud/compute/v1/region_backend_buckets/rest/client" + +module Google + module Cloud + module Compute + module V1 + ## + # The RegionBackendBuckets API. + # + # To load this service and instantiate a REST client: + # + # require "google/cloud/compute/v1/region_backend_buckets/rest" + # client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new + # + module RegionBackendBuckets + # Client for the REST transport + module Rest + end + end + end + end + end +end + +helper_path = ::File.join __dir__, "rest", "helpers.rb" +require "google/cloud/compute/v1/region_backend_buckets/rest/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets/rest/client.rb new file mode 100644 index 000000000000..8d3db03d5340 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets/rest/client.rb @@ -0,0 +1,1450 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/errors" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/region_backend_buckets/rest/service_stub" +require "google/cloud/compute/v1/region_operations/rest" + +module Google + module Cloud + module Compute + module V1 + module RegionBackendBuckets + module Rest + ## + # REST client for the RegionBackendBuckets service. + # + # The RegionBackendBuckets API. + # + class Client + # @private + API_VERSION = "" + + # @private + DEFAULT_ENDPOINT_TEMPLATE = "compute.$UNIVERSE_DOMAIN$" + + # @private + attr_reader :region_backend_buckets_stub + + ## + # Configure the RegionBackendBuckets Client class. + # + # See {::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @example + # + # # Modify the configuration for all RegionBackendBuckets clients + # ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.configure do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def self.configure + @configure ||= begin + namespace = ["Google", "Cloud", "Compute", "V1"] + parent_config = while namespace.any? + parent_name = namespace.join "::" + parent_const = const_get parent_name + break parent_const.configure if parent_const.respond_to? :configure + namespace.pop + end + default_config = Client::Configuration.new parent_config + + default_config.rpcs.delete.timeout = 600.0 + + default_config.rpcs.get.timeout = 600.0 + default_config.rpcs.get.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.get_iam_policy.timeout = 600.0 + default_config.rpcs.get_iam_policy.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.insert.timeout = 600.0 + + default_config.rpcs.list.timeout = 600.0 + default_config.rpcs.list.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.list_usable.timeout = 600.0 + default_config.rpcs.list_usable.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.patch.timeout = 600.0 + + default_config.rpcs.set_iam_policy.timeout = 600.0 + + default_config.rpcs.test_iam_permissions.timeout = 600.0 + + default_config + end + yield @configure if block_given? + @configure + end + + ## + # Configure the RegionBackendBuckets Client instance. + # + # The configuration is set to the derived mode, meaning that values can be changed, + # but structural changes (adding new fields, etc.) are not allowed. Structural changes + # should be made on {Client.configure}. + # + # See {::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def configure + yield @config if block_given? + @config + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @region_backend_buckets_stub.universe_domain + end + + ## + # Create a new RegionBackendBuckets REST client object. + # + # @example + # + # # Create a client using the default configuration + # client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new + # + # # Create a client using a custom configuration + # client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the RegionBackendBuckets client. + # @yieldparam config [Client::Configuration] + # + def initialize + # Create the configuration object + @config = Configuration.new Client.configure + + # Yield the configuration if needed + yield @config if block_given? + + # Create credentials + credentials = @config.credentials + # Use self-signed JWT if the endpoint is unchanged from default, + # but only if the default endpoint does not have a region prefix. + enable_self_signed_jwt = @config.endpoint.nil? || + (@config.endpoint == Configuration::DEFAULT_ENDPOINT && + !@config.endpoint.split(".").first.include?("-")) + credentials ||= Credentials.default scope: @config.scope, + enable_self_signed_jwt: enable_self_signed_jwt + if credentials.is_a?(::String) || credentials.is_a?(::Hash) + credentials = Credentials.new credentials, scope: @config.scope + end + + @quota_project_id = @config.quota_project + @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id + + @region_operations = ::Google::Cloud::Compute::V1::RegionOperations::Rest::Client.new do |config| + config.credentials = credentials + config.quota_project = @quota_project_id + config.endpoint = @config.endpoint + config.universe_domain = @config.universe_domain + end + + @region_backend_buckets_stub = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::ServiceStub.new( + endpoint: @config.endpoint, + endpoint_template: DEFAULT_ENDPOINT_TEMPLATE, + universe_domain: @config.universe_domain, + credentials: credentials, + logger: @config.logger + ) + + @region_backend_buckets_stub.logger(stub: true)&.info do |entry| + entry.set_system_name + entry.set_service + entry.message = "Created client for #{entry.service}" + entry.set_credentials_fields credentials + entry.set "customEndpoint", @config.endpoint if @config.endpoint + entry.set "defaultTimeout", @config.timeout if @config.timeout + entry.set "quotaProject", @quota_project_id if @quota_project_id + end + end + + ## + # Get the associated client for long-running operations via RegionOperations. + # + # @return [::Google::Cloud::Compute::V1::RegionOperations::Rest::Client] + # + attr_reader :region_operations + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger + @region_backend_buckets_stub.logger + end + + # Service calls + + ## + # Deletes the specified regional BackendBucket resource. + # + # @overload delete(request, options = nil) + # Pass arguments to `delete` via a request object, either of type + # {::Google::Cloud::Compute::V1::DeleteRegionBackendBucketRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::DeleteRegionBackendBucketRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload delete(backend_bucket: nil, project: nil, region: nil, request_id: nil) + # Pass arguments to `delete` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param backend_bucket [::String] + # Name of the BackendBucket resource to delete. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region scoping this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # end_interface: MixerMutationRequestBuilder + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::DeleteRegionBackendBucketRequest.new + # + # # Call the delete method. + # result = client.delete request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def delete request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::DeleteRegionBackendBucketRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.delete.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.delete.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.delete.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_backend_buckets_stub.delete request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Returns the specified regional BackendBucket resource. + # + # @overload get(request, options = nil) + # Pass arguments to `get` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetRegionBackendBucketRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetRegionBackendBucketRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get(backend_bucket: nil, project: nil, region: nil) + # Pass arguments to `get` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param backend_bucket [::String] + # Name of the BackendBucket resource to return. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region scoping this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::BackendBucket] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::BackendBucket] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetRegionBackendBucketRequest.new + # + # # Call the get method. + # result = client.get request + # + # # The returned object is of type Google::Cloud::Compute::V1::BackendBucket. + # p result + # + def get request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetRegionBackendBucketRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_backend_buckets_stub.get request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Gets the access control policy for a resource. May be empty if no such + # policy or resource exists. + # + # @overload get_iam_policy(request, options = nil) + # Pass arguments to `get_iam_policy` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetIamPolicyRegionBackendBucketRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetIamPolicyRegionBackendBucketRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get_iam_policy(options_requested_policy_version: nil, project: nil, region: nil, resource: nil) + # Pass arguments to `get_iam_policy` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param options_requested_policy_version [::Integer] + # Requested IAM Policy version. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param resource [::String] + # Name or id of the resource for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetIamPolicyRegionBackendBucketRequest.new + # + # # Call the get_iam_policy method. + # result = client.get_iam_policy request + # + # # The returned object is of type Google::Cloud::Compute::V1::Policy. + # p result + # + def get_iam_policy request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetIamPolicyRegionBackendBucketRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get_iam_policy.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get_iam_policy.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get_iam_policy.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_backend_buckets_stub.get_iam_policy request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Creates a RegionBackendBucket in the specified project in the given scope + # using the parameters that are included in the request. + # + # @overload insert(request, options = nil) + # Pass arguments to `insert` via a request object, either of type + # {::Google::Cloud::Compute::V1::InsertRegionBackendBucketRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::InsertRegionBackendBucketRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload insert(backend_bucket_resource: nil, project: nil, region: nil, request_id: nil) + # Pass arguments to `insert` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param backend_bucket_resource [::Google::Cloud::Compute::V1::BackendBucket, ::Hash] + # The body resource for this request + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region of this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::InsertRegionBackendBucketRequest.new + # + # # Call the insert method. + # result = client.insert request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def insert request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::InsertRegionBackendBucketRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.insert.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.insert.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.insert.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_backend_buckets_stub.insert request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Retrieves the list of BackendBucket resources available to the specified + # project in the given region. + # + # @overload list(request, options = nil) + # Pass arguments to `list` via a request object, either of type + # {::Google::Cloud::Compute::V1::ListRegionBackendBucketsRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::ListRegionBackendBucketsRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload list(filter: nil, max_results: nil, order_by: nil, page_token: nil, project: nil, region: nil, return_partial_success: nil) + # Pass arguments to `list` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param filter [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @param max_results [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @param order_by [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @param page_token [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region of this request. + # @param return_partial_success [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::BackendBucket>] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::BackendBucket>] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::ListRegionBackendBucketsRequest.new + # + # # Call the list method. + # result = client.list request + # + # # The returned object is of type Google::Cloud::Compute::V1::BackendBucketList. + # p result + # + def list request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::ListRegionBackendBucketsRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.list.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.list.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.list.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_backend_buckets_stub.list request, options do |result, operation| + result = ::Gapic::Rest::PagedEnumerable.new @region_backend_buckets_stub, :list, "items", request, result, options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Retrieves a list of all usable backend buckets in the specified project in + # the given region. + # + # @overload list_usable(request, options = nil) + # Pass arguments to `list_usable` via a request object, either of type + # {::Google::Cloud::Compute::V1::ListUsableRegionBackendBucketsRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::ListUsableRegionBackendBucketsRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload list_usable(filter: nil, max_results: nil, order_by: nil, page_token: nil, project: nil, region: nil, return_partial_success: nil) + # Pass arguments to `list_usable` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param filter [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @param max_results [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @param order_by [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @param page_token [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region scoping this request. + # It must be a string that meets the requirements in RFC1035. + # @param return_partial_success [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::BackendBucket>] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::BackendBucket>] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::ListUsableRegionBackendBucketsRequest.new + # + # # Call the list_usable method. + # result = client.list_usable request + # + # # The returned object is of type Google::Cloud::Compute::V1::BackendBucketListUsable. + # p result + # + def list_usable request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::ListUsableRegionBackendBucketsRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.list_usable.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.list_usable.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.list_usable.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_backend_buckets_stub.list_usable request, options do |result, operation| + result = ::Gapic::Rest::PagedEnumerable.new @region_backend_buckets_stub, :list_usable, "items", request, result, options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Updates the specified BackendBucket resource with the data included in the + # request. This method supportsPATCH + # semantics and uses theJSON merge + # patch format and processing rules. + # + # @overload patch(request, options = nil) + # Pass arguments to `patch` via a request object, either of type + # {::Google::Cloud::Compute::V1::PatchRegionBackendBucketRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::PatchRegionBackendBucketRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload patch(backend_bucket: nil, backend_bucket_resource: nil, project: nil, region: nil, request_id: nil) + # Pass arguments to `patch` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param backend_bucket [::String] + # Name of the BackendBucket resource to patch. + # @param backend_bucket_resource [::Google::Cloud::Compute::V1::BackendBucket, ::Hash] + # The body resource for this request + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region scoping this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # end_interface: MixerMutationRequestBuilder + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::PatchRegionBackendBucketRequest.new + # + # # Call the patch method. + # result = client.patch request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def patch request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::PatchRegionBackendBucketRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.patch.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.patch.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.patch.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_backend_buckets_stub.patch request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Sets the access control policy on the specified resource. + # Replaces any existing policy. + # + # @overload set_iam_policy(request, options = nil) + # Pass arguments to `set_iam_policy` via a request object, either of type + # {::Google::Cloud::Compute::V1::SetIamPolicyRegionBackendBucketRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::SetIamPolicyRegionBackendBucketRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload set_iam_policy(project: nil, region: nil, region_set_policy_request_resource: nil, resource: nil) + # Pass arguments to `set_iam_policy` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param region_set_policy_request_resource [::Google::Cloud::Compute::V1::RegionSetPolicyRequest, ::Hash] + # The body resource for this request + # @param resource [::String] + # Name or id of the resource for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::SetIamPolicyRegionBackendBucketRequest.new + # + # # Call the set_iam_policy method. + # result = client.set_iam_policy request + # + # # The returned object is of type Google::Cloud::Compute::V1::Policy. + # p result + # + def set_iam_policy request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::SetIamPolicyRegionBackendBucketRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.set_iam_policy.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.set_iam_policy.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.set_iam_policy.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_backend_buckets_stub.set_iam_policy request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Returns permissions that a caller has on the specified resource. + # + # @overload test_iam_permissions(request, options = nil) + # Pass arguments to `test_iam_permissions` via a request object, either of type + # {::Google::Cloud::Compute::V1::TestIamPermissionsRegionBackendBucketRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::TestIamPermissionsRegionBackendBucketRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload test_iam_permissions(project: nil, region: nil, resource: nil, test_permissions_request_resource: nil) + # Pass arguments to `test_iam_permissions` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param resource [::String] + # Name or id of the resource for this request. + # @param test_permissions_request_resource [::Google::Cloud::Compute::V1::TestPermissionsRequest, ::Hash] + # The body resource for this request + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::TestIamPermissionsRegionBackendBucketRequest.new + # + # # Call the test_iam_permissions method. + # result = client.test_iam_permissions request + # + # # The returned object is of type Google::Cloud::Compute::V1::TestPermissionsResponse. + # p result + # + def test_iam_permissions request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::TestIamPermissionsRegionBackendBucketRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.test_iam_permissions.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.test_iam_permissions.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.test_iam_permissions.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_backend_buckets_stub.test_iam_permissions request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Configuration class for the RegionBackendBuckets REST API. + # + # This class represents the configuration for RegionBackendBuckets REST, + # providing control over timeouts, retry behavior, logging, transport + # parameters, and other low-level controls. Certain parameters can also be + # applied individually to specific RPCs. See + # {::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client::Configuration::Rpcs} + # for a list of RPCs that can be configured independently. + # + # Configuration can be applied globally to all clients, or to a single client + # on construction. + # + # @example + # + # # Modify the global config, setting the timeout for + # # delete to 20 seconds, + # # and all remaining timeouts to 10 seconds. + # ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.configure do |config| + # config.timeout = 10.0 + # config.rpcs.delete.timeout = 20.0 + # end + # + # # Apply the above configuration only to a new client. + # client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new do |config| + # config.timeout = 10.0 + # config.rpcs.delete.timeout = 20.0 + # end + # + # @!attribute [rw] endpoint + # A custom service endpoint, as a hostname or hostname:port. The default is + # nil, indicating to use the default endpoint in the current universe domain. + # @return [::String,nil] + # @!attribute [rw] credentials + # Credentials to send with calls. You may provide any of the following types: + # * (`String`) The path to a service account key file in JSON format + # * (`Hash`) A service account key as a Hash + # * (`Google::Auth::Credentials`) A googleauth credentials object + # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials)) + # * (`Signet::OAuth2::Client`) A signet oauth2 client object + # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client)) + # * (`nil`) indicating no credentials + # + # Warning: If you accept a credential configuration (JSON file or Hash) from an + # external source for authentication to Google Cloud, you must validate it before + # providing it to a Google API client library. Providing an unvalidated credential + # configuration to Google APIs can compromise the security of your systems and data. + # For more information, refer to [Validate credential configurations from external + # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials). + # @return [::Object] + # @!attribute [rw] scope + # The OAuth scopes + # @return [::Array<::String>] + # @!attribute [rw] lib_name + # The library name as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] lib_version + # The library version as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] timeout + # The call timeout in seconds. + # @return [::Numeric] + # @!attribute [rw] metadata + # Additional headers to be sent with the call. + # @return [::Hash{::Symbol=>::String}] + # @!attribute [rw] retry_policy + # The retry policy. The value is a hash with the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # @return [::Hash] + # @!attribute [rw] quota_project + # A separate project against which to charge quota. + # @return [::String] + # @!attribute [rw] universe_domain + # The universe domain within which to make requests. This determines the + # default endpoint URL. The default value of nil uses the environment + # universe (usually the default "googleapis.com" universe). + # @return [::String,nil] + # @!attribute [rw] logger + # A custom logger to use for request/response debug logging, or the value + # `:default` (the default) to construct a default logger, or `nil` to + # explicitly disable logging. + # @return [::Logger,:default,nil] + # + class Configuration + extend ::Gapic::Config + + # @private + # The endpoint specific to the default "googleapis.com" universe. Deprecated. + DEFAULT_ENDPOINT = "compute.googleapis.com" + + config_attr :endpoint, nil, ::String, nil + config_attr :credentials, nil do |value| + allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Google::Auth::BaseClient, ::Signet::OAuth2::Client, nil] + allowed.any? { |klass| klass === value } + end + config_attr :scope, nil, ::String, ::Array, nil + config_attr :lib_name, nil, ::String, nil + config_attr :lib_version, nil, ::String, nil + config_attr :timeout, nil, ::Numeric, nil + config_attr :metadata, nil, ::Hash, nil + config_attr :retry_policy, nil, ::Hash, ::Proc, nil + config_attr :quota_project, nil, ::String, nil + config_attr :universe_domain, nil, ::String, nil + config_attr :logger, :default, ::Logger, nil, :default + + # @private + def initialize parent_config = nil + @parent_config = parent_config unless parent_config.nil? + + yield self if block_given? + end + + ## + # Configurations for individual RPCs + # @return [Rpcs] + # + def rpcs + @rpcs ||= begin + parent_rpcs = nil + parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs) + Rpcs.new parent_rpcs + end + end + + ## + # Configuration RPC class for the RegionBackendBuckets API. + # + # Includes fields providing the configuration for each RPC in this service. + # Each configuration object is of type `Gapic::Config::Method` and includes + # the following configuration fields: + # + # * `timeout` (*type:* `Numeric`) - The call timeout in seconds + # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional headers + # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields + # include the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # + class Rpcs + ## + # RPC-specific configuration for `delete` + # @return [::Gapic::Config::Method] + # + attr_reader :delete + ## + # RPC-specific configuration for `get` + # @return [::Gapic::Config::Method] + # + attr_reader :get + ## + # RPC-specific configuration for `get_iam_policy` + # @return [::Gapic::Config::Method] + # + attr_reader :get_iam_policy + ## + # RPC-specific configuration for `insert` + # @return [::Gapic::Config::Method] + # + attr_reader :insert + ## + # RPC-specific configuration for `list` + # @return [::Gapic::Config::Method] + # + attr_reader :list + ## + # RPC-specific configuration for `list_usable` + # @return [::Gapic::Config::Method] + # + attr_reader :list_usable + ## + # RPC-specific configuration for `patch` + # @return [::Gapic::Config::Method] + # + attr_reader :patch + ## + # RPC-specific configuration for `set_iam_policy` + # @return [::Gapic::Config::Method] + # + attr_reader :set_iam_policy + ## + # RPC-specific configuration for `test_iam_permissions` + # @return [::Gapic::Config::Method] + # + attr_reader :test_iam_permissions + + # @private + def initialize parent_rpcs = nil + delete_config = parent_rpcs.delete if parent_rpcs.respond_to? :delete + @delete = ::Gapic::Config::Method.new delete_config + get_config = parent_rpcs.get if parent_rpcs.respond_to? :get + @get = ::Gapic::Config::Method.new get_config + get_iam_policy_config = parent_rpcs.get_iam_policy if parent_rpcs.respond_to? :get_iam_policy + @get_iam_policy = ::Gapic::Config::Method.new get_iam_policy_config + insert_config = parent_rpcs.insert if parent_rpcs.respond_to? :insert + @insert = ::Gapic::Config::Method.new insert_config + list_config = parent_rpcs.list if parent_rpcs.respond_to? :list + @list = ::Gapic::Config::Method.new list_config + list_usable_config = parent_rpcs.list_usable if parent_rpcs.respond_to? :list_usable + @list_usable = ::Gapic::Config::Method.new list_usable_config + patch_config = parent_rpcs.patch if parent_rpcs.respond_to? :patch + @patch = ::Gapic::Config::Method.new patch_config + set_iam_policy_config = parent_rpcs.set_iam_policy if parent_rpcs.respond_to? :set_iam_policy + @set_iam_policy = ::Gapic::Config::Method.new set_iam_policy_config + test_iam_permissions_config = parent_rpcs.test_iam_permissions if parent_rpcs.respond_to? :test_iam_permissions + @test_iam_permissions = ::Gapic::Config::Method.new test_iam_permissions_config + + yield self if block_given? + end + end + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets/rest/service_stub.rb new file mode 100644 index 000000000000..30bb4be2724e --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_backend_buckets/rest/service_stub.rb @@ -0,0 +1,649 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/compute/v1/compute_pb" + +module Google + module Cloud + module Compute + module V1 + module RegionBackendBuckets + module Rest + ## + # REST service stub for the RegionBackendBuckets service. + # Service stub contains baseline method implementations + # including transcoding, making the REST call, and deserialing the response. + # + class ServiceStub + # @private + def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger: + # These require statements are intentionally placed here to initialize + # the REST modules only when it's required. + require "gapic/rest" + + @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, + endpoint_template: endpoint_template, + universe_domain: universe_domain, + credentials: credentials, + numeric_enums: false, + service_name: self.class, + raise_faraday_errors: false, + logger: logger + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @client_stub.universe_domain + end + + ## + # The effective endpoint + # + # @return [String] + # + def endpoint + @client_stub.endpoint + end + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger stub: false + stub ? @client_stub.stub_logger : @client_stub.logger + end + + ## + # Baseline implementation for the delete REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::DeleteRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def delete request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_delete_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "delete", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::BackendBucket] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::BackendBucket] + # A result object deserialized from the server's reply + def get request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::BackendBucket.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the get_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetIamPolicyRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # A result object deserialized from the server's reply + def get_iam_policy request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_iam_policy_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get_iam_policy", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Policy.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the insert REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::InsertRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def insert request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_insert_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "insert", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListRegionBackendBucketsRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::BackendBucketList] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::BackendBucketList] + # A result object deserialized from the server's reply + def list request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_list_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "list", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::BackendBucketList.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the list_usable REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListUsableRegionBackendBucketsRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::BackendBucketListUsable] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::BackendBucketListUsable] + # A result object deserialized from the server's reply + def list_usable request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_list_usable_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "list_usable", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::BackendBucketListUsable.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the patch REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::PatchRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def patch request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_patch_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "patch", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the set_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::SetIamPolicyRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # A result object deserialized from the server's reply + def set_iam_policy request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_set_iam_policy_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "set_iam_policy", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Policy.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the test_iam_permissions REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::TestIamPermissionsRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # A result object deserialized from the server's reply + def test_iam_permissions request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_test_iam_permissions_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "test_iam_permissions", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::TestPermissionsResponse.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # @private + # + # GRPC transcoding helper method for the delete REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::DeleteRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_delete_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :delete, + uri_template: "/compute/v1/projects/{project}/regions/{region}/backendBuckets/{backend_bucket}", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["backend_bucket", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/backendBuckets/{backend_bucket}", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["backend_bucket", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the get_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetIamPolicyRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_iam_policy_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/backendBuckets/{resource}/getIamPolicy", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the insert REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::InsertRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_insert_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/backendBuckets", + body: "backend_bucket_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListRegionBackendBucketsRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_list_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/backendBuckets", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the list_usable REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListUsableRegionBackendBucketsRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_list_usable_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/backendBuckets/listUsable", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the patch REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::PatchRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_patch_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :patch, + uri_template: "/compute/v1/projects/{project}/regions/{region}/backendBuckets/{backend_bucket}", + body: "backend_bucket_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["backend_bucket", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the set_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::SetIamPolicyRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_set_iam_policy_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/backendBuckets/{resource}/setIamPolicy", + body: "region_set_policy_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the test_iam_permissions REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::TestIamPermissionsRegionBackendBucketRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_test_iam_permissions_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/backendBuckets/{resource}/testIamPermissions", + body: "test_permissions_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_composite_health_checks/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_composite_health_checks/rest/client.rb index 6730156febe0..c923fea84197 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_composite_health_checks/rest/client.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_composite_health_checks/rest/client.rb @@ -83,6 +83,11 @@ def self.configure initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] } + default_config.rpcs.get_health.timeout = 600.0 + default_config.rpcs.get_health.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + default_config.rpcs.insert.timeout = 600.0 default_config.rpcs.list.timeout = 600.0 @@ -583,6 +588,89 @@ def get request, options = nil raise ::Google::Cloud::Error.from_error(e) end + ## + # Gets the most recent health check results for this + # regional CompositeHealthCheck. + # + # @overload get_health(request, options = nil) + # Pass arguments to `get_health` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetHealthRegionCompositeHealthCheckRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetHealthRegionCompositeHealthCheckRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get_health(composite_health_check: nil, project: nil, region: nil) + # Pass arguments to `get_health` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param composite_health_check [::String] + # Name of the CompositeHealthCheck resource to get health for. + # @param project [::String] + # Name of the project scoping this request. + # @param region [::String] + # Name of the region scoping this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::CompositeHealthCheckHealth] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::CompositeHealthCheckHealth] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionCompositeHealthChecks::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetHealthRegionCompositeHealthCheckRequest.new + # + # # Call the get_health method. + # result = client.get_health request + # + # # The returned object is of type Google::Cloud::Compute::V1::CompositeHealthCheckHealth. + # p result + # + def get_health request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetHealthRegionCompositeHealthCheckRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get_health.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get_health.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get_health.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_composite_health_checks_stub.get_health request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + ## # Create a CompositeHealthCheck in the specified project in the given region # using the parameters that are included in the request. @@ -1218,6 +1306,11 @@ class Rpcs # attr_reader :get ## + # RPC-specific configuration for `get_health` + # @return [::Gapic::Config::Method] + # + attr_reader :get_health + ## # RPC-specific configuration for `insert` # @return [::Gapic::Config::Method] # @@ -1246,6 +1339,8 @@ def initialize parent_rpcs = nil @delete = ::Gapic::Config::Method.new delete_config get_config = parent_rpcs.get if parent_rpcs.respond_to? :get @get = ::Gapic::Config::Method.new get_config + get_health_config = parent_rpcs.get_health if parent_rpcs.respond_to? :get_health + @get_health = ::Gapic::Config::Method.new get_health_config insert_config = parent_rpcs.insert if parent_rpcs.respond_to? :insert @insert = ::Gapic::Config::Method.new insert_config list_config = parent_rpcs.list if parent_rpcs.respond_to? :list diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_composite_health_checks/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_composite_health_checks/rest/service_stub.rb index 4f8cab51303e..453970b845db 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_composite_health_checks/rest/service_stub.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_composite_health_checks/rest/service_stub.rb @@ -193,6 +193,46 @@ def get request_pb, options = nil end end + ## + # Baseline implementation for the get_health REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetHealthRegionCompositeHealthCheckRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::CompositeHealthCheckHealth] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::CompositeHealthCheckHealth] + # A result object deserialized from the server's reply + def get_health request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_health_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get_health", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::CompositeHealthCheckHealth.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + ## # Baseline implementation for the insert REST call # @@ -420,6 +460,29 @@ def self.transcode_get_request request_pb transcoder.transcode request_pb end + ## + # @private + # + # GRPC transcoding helper method for the get_health REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetHealthRegionCompositeHealthCheckRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_health_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/compositeHealthChecks/{composite_health_check}/getHealth", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["composite_health_check", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + ## # @private # diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_disks/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_disks/rest/client.rb index 8bc536117d17..4a06b14b527c 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_disks/rest/client.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_disks/rest/client.rb @@ -114,6 +114,8 @@ def self.configure default_config.rpcs.update.timeout = 600.0 + default_config.rpcs.update_kms_key.timeout = 600.0 + default_config end yield @configure if block_given? @@ -2045,6 +2047,115 @@ def update request, options = nil raise ::Google::Cloud::Error.from_error(e) end + ## + # Rotates the customer-managed + # encryption key to the latest version for the specified persistent disk. + # + # @overload update_kms_key(request, options = nil) + # Pass arguments to `update_kms_key` via a request object, either of type + # {::Google::Cloud::Compute::V1::UpdateKmsKeyRegionDiskRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::UpdateKmsKeyRegionDiskRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload update_kms_key(disk: nil, project: nil, region: nil, region_disk_update_kms_key_request_resource: nil, request_id: nil) + # Pass arguments to `update_kms_key` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param disk [::String] + # Name of the Disk resource, should conform to RFC1035. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param region_disk_update_kms_key_request_resource [::Google::Cloud::Compute::V1::RegionDiskUpdateKmsKeyRequest, ::Hash] + # The body resource for this request + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionDisks::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::UpdateKmsKeyRegionDiskRequest.new + # + # # Call the update_kms_key method. + # result = client.update_kms_key request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def update_kms_key request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::UpdateKmsKeyRegionDiskRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.update_kms_key.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.update_kms_key.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.update_kms_key.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_disks_stub.update_kms_key request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + ## # Configuration class for the RegionDisks REST API. # @@ -2276,6 +2387,11 @@ class Rpcs # @return [::Gapic::Config::Method] # attr_reader :update + ## + # RPC-specific configuration for `update_kms_key` + # @return [::Gapic::Config::Method] + # + attr_reader :update_kms_key # @private def initialize parent_rpcs = nil @@ -2313,6 +2429,8 @@ def initialize parent_rpcs = nil @test_iam_permissions = ::Gapic::Config::Method.new test_iam_permissions_config update_config = parent_rpcs.update if parent_rpcs.respond_to? :update @update = ::Gapic::Config::Method.new update_config + update_kms_key_config = parent_rpcs.update_kms_key if parent_rpcs.respond_to? :update_kms_key + @update_kms_key = ::Gapic::Config::Method.new update_kms_key_config yield self if block_given? end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_disks/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_disks/rest/service_stub.rb index d9296c169bb9..e88727107ecc 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_disks/rest/service_stub.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_disks/rest/service_stub.rb @@ -753,6 +753,46 @@ def update request_pb, options = nil end end + ## + # Baseline implementation for the update_kms_key REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::UpdateKmsKeyRegionDiskRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def update_kms_key request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_update_kms_key_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "update_kms_key", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + ## # @private # @@ -1151,6 +1191,30 @@ def self.transcode_update_request request_pb ) transcoder.transcode request_pb end + + ## + # @private + # + # GRPC transcoding helper method for the update_kms_key REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::UpdateKmsKeyRegionDiskRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_update_kms_key_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/disks/{disk}/updateKmsKey", + body: "region_disk_update_kms_key_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["disk", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end end end end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_health_sources/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_health_sources/rest/client.rb index ed91cc12cf0f..de77c6d30b2d 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_health_sources/rest/client.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_health_sources/rest/client.rb @@ -83,6 +83,11 @@ def self.configure initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] } + default_config.rpcs.get_health.timeout = 600.0 + default_config.rpcs.get_health.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + default_config.rpcs.insert.timeout = 600.0 default_config.rpcs.list.timeout = 600.0 @@ -583,6 +588,89 @@ def get request, options = nil raise ::Google::Cloud::Error.from_error(e) end + ## + # Gets the most recent health check results for this + # regional HealthSource. + # + # @overload get_health(request, options = nil) + # Pass arguments to `get_health` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetHealthRegionHealthSourceRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetHealthRegionHealthSourceRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get_health(health_source: nil, project: nil, region: nil) + # Pass arguments to `get_health` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param health_source [::String] + # Name of the HealthSource resource to get health for. + # @param project [::String] + # Name of the project scoping this request. + # @param region [::String] + # Name of the region scoping this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::HealthSourceHealth] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::HealthSourceHealth] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionHealthSources::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetHealthRegionHealthSourceRequest.new + # + # # Call the get_health method. + # result = client.get_health request + # + # # The returned object is of type Google::Cloud::Compute::V1::HealthSourceHealth. + # p result + # + def get_health request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetHealthRegionHealthSourceRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get_health.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get_health.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get_health.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_health_sources_stub.get_health request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + ## # Create a HealthSource in the specified project in the given region # using the parameters that are included in the request. @@ -1218,6 +1306,11 @@ class Rpcs # attr_reader :get ## + # RPC-specific configuration for `get_health` + # @return [::Gapic::Config::Method] + # + attr_reader :get_health + ## # RPC-specific configuration for `insert` # @return [::Gapic::Config::Method] # @@ -1246,6 +1339,8 @@ def initialize parent_rpcs = nil @delete = ::Gapic::Config::Method.new delete_config get_config = parent_rpcs.get if parent_rpcs.respond_to? :get @get = ::Gapic::Config::Method.new get_config + get_health_config = parent_rpcs.get_health if parent_rpcs.respond_to? :get_health + @get_health = ::Gapic::Config::Method.new get_health_config insert_config = parent_rpcs.insert if parent_rpcs.respond_to? :insert @insert = ::Gapic::Config::Method.new insert_config list_config = parent_rpcs.list if parent_rpcs.respond_to? :list diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_health_sources/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_health_sources/rest/service_stub.rb index 8f59daebe199..3173f8594bc7 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_health_sources/rest/service_stub.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_health_sources/rest/service_stub.rb @@ -193,6 +193,46 @@ def get request_pb, options = nil end end + ## + # Baseline implementation for the get_health REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetHealthRegionHealthSourceRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::HealthSourceHealth] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::HealthSourceHealth] + # A result object deserialized from the server's reply + def get_health request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_health_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get_health", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::HealthSourceHealth.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + ## # Baseline implementation for the insert REST call # @@ -420,6 +460,29 @@ def self.transcode_get_request request_pb transcoder.transcode request_pb end + ## + # @private + # + # GRPC transcoding helper method for the get_health REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetHealthRegionHealthSourceRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_health_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/healthSources/{health_source}/getHealth", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["health_source", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + ## # @private # diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests.rb new file mode 100644 index 000000000000..300a82d16055 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests.rb @@ -0,0 +1,47 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/region_instance_group_manager_resize_requests/credentials" +require "google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest" + +module Google + module Cloud + module Compute + module V1 + ## + # The RegionInstanceGroupManagerResizeRequests API. + # + # @example Load this service and instantiate a REST client + # + # require "google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest" + # client = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new + # + module RegionInstanceGroupManagerResizeRequests + end + end + end + end +end + +helper_path = ::File.join __dir__, "region_instance_group_manager_resize_requests", "helpers.rb" +require "google/cloud/compute/v1/region_instance_group_manager_resize_requests/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/credentials.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/credentials.rb new file mode 100644 index 000000000000..176fd5cdef85 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/credentials.rb @@ -0,0 +1,52 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "googleauth" + +module Google + module Cloud + module Compute + module V1 + module RegionInstanceGroupManagerResizeRequests + # Credentials for the RegionInstanceGroupManagerResizeRequests API. + class Credentials < ::Google::Auth::Credentials + self.scope = [ + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/cloud-platform" + ] + self.env_vars = [ + "COMPUTE_CREDENTIALS", + "COMPUTE_KEYFILE", + "GOOGLE_CLOUD_CREDENTIALS", + "GOOGLE_CLOUD_KEYFILE", + "GCLOUD_KEYFILE", + "COMPUTE_CREDENTIALS_JSON", + "COMPUTE_KEYFILE_JSON", + "GOOGLE_CLOUD_CREDENTIALS_JSON", + "GOOGLE_CLOUD_KEYFILE_JSON", + "GCLOUD_KEYFILE_JSON" + ] + self.paths = [ + "~/.config/google_cloud/application_default_credentials.json" + ] + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest.rb new file mode 100644 index 000000000000..120e28f6441e --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest.rb @@ -0,0 +1,51 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/rest" +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/region_instance_group_manager_resize_requests/credentials" +require "google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest/client" + +module Google + module Cloud + module Compute + module V1 + ## + # The RegionInstanceGroupManagerResizeRequests API. + # + # To load this service and instantiate a REST client: + # + # require "google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest" + # client = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new + # + module RegionInstanceGroupManagerResizeRequests + # Client for the REST transport + module Rest + end + end + end + end + end +end + +helper_path = ::File.join __dir__, "rest", "helpers.rb" +require "google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest/client.rb new file mode 100644 index 000000000000..56ca5825cb4e --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest/client.rb @@ -0,0 +1,1002 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/errors" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest/service_stub" +require "google/cloud/compute/v1/region_operations/rest" + +module Google + module Cloud + module Compute + module V1 + module RegionInstanceGroupManagerResizeRequests + module Rest + ## + # REST client for the RegionInstanceGroupManagerResizeRequests service. + # + # The RegionInstanceGroupManagerResizeRequests API. + # + class Client + # @private + API_VERSION = "" + + # @private + DEFAULT_ENDPOINT_TEMPLATE = "compute.$UNIVERSE_DOMAIN$" + + # @private + attr_reader :region_instance_group_manager_resize_requests_stub + + ## + # Configure the RegionInstanceGroupManagerResizeRequests Client class. + # + # See {::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @example + # + # # Modify the configuration for all RegionInstanceGroupManagerResizeRequests clients + # ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.configure do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def self.configure + @configure ||= begin + namespace = ["Google", "Cloud", "Compute", "V1"] + parent_config = while namespace.any? + parent_name = namespace.join "::" + parent_const = const_get parent_name + break parent_const.configure if parent_const.respond_to? :configure + namespace.pop + end + default_config = Client::Configuration.new parent_config + + default_config.rpcs.cancel.timeout = 600.0 + + default_config.rpcs.delete.timeout = 600.0 + + default_config.rpcs.get.timeout = 600.0 + default_config.rpcs.get.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.insert.timeout = 600.0 + + default_config.rpcs.list.timeout = 600.0 + default_config.rpcs.list.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config + end + yield @configure if block_given? + @configure + end + + ## + # Configure the RegionInstanceGroupManagerResizeRequests Client instance. + # + # The configuration is set to the derived mode, meaning that values can be changed, + # but structural changes (adding new fields, etc.) are not allowed. Structural changes + # should be made on {Client.configure}. + # + # See {::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def configure + yield @config if block_given? + @config + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @region_instance_group_manager_resize_requests_stub.universe_domain + end + + ## + # Create a new RegionInstanceGroupManagerResizeRequests REST client object. + # + # @example + # + # # Create a client using the default configuration + # client = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new + # + # # Create a client using a custom configuration + # client = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the RegionInstanceGroupManagerResizeRequests client. + # @yieldparam config [Client::Configuration] + # + def initialize + # Create the configuration object + @config = Configuration.new Client.configure + + # Yield the configuration if needed + yield @config if block_given? + + # Create credentials + credentials = @config.credentials + # Use self-signed JWT if the endpoint is unchanged from default, + # but only if the default endpoint does not have a region prefix. + enable_self_signed_jwt = @config.endpoint.nil? || + (@config.endpoint == Configuration::DEFAULT_ENDPOINT && + !@config.endpoint.split(".").first.include?("-")) + credentials ||= Credentials.default scope: @config.scope, + enable_self_signed_jwt: enable_self_signed_jwt + if credentials.is_a?(::String) || credentials.is_a?(::Hash) + credentials = Credentials.new credentials, scope: @config.scope + end + + @quota_project_id = @config.quota_project + @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id + + @region_operations = ::Google::Cloud::Compute::V1::RegionOperations::Rest::Client.new do |config| + config.credentials = credentials + config.quota_project = @quota_project_id + config.endpoint = @config.endpoint + config.universe_domain = @config.universe_domain + end + + @region_instance_group_manager_resize_requests_stub = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::ServiceStub.new( + endpoint: @config.endpoint, + endpoint_template: DEFAULT_ENDPOINT_TEMPLATE, + universe_domain: @config.universe_domain, + credentials: credentials, + logger: @config.logger + ) + + @region_instance_group_manager_resize_requests_stub.logger(stub: true)&.info do |entry| + entry.set_system_name + entry.set_service + entry.message = "Created client for #{entry.service}" + entry.set_credentials_fields credentials + entry.set "customEndpoint", @config.endpoint if @config.endpoint + entry.set "defaultTimeout", @config.timeout if @config.timeout + entry.set "quotaProject", @quota_project_id if @quota_project_id + end + end + + ## + # Get the associated client for long-running operations via RegionOperations. + # + # @return [::Google::Cloud::Compute::V1::RegionOperations::Rest::Client] + # + attr_reader :region_operations + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger + @region_instance_group_manager_resize_requests_stub.logger + end + + # Service calls + + ## + # Cancels the specified resize request. + # Cancelled resize request no longer waits for the resources to be + # provisioned. Cancel is only possible for requests that are in accepted + # state. + # + # @overload cancel(request, options = nil) + # Pass arguments to `cancel` via a request object, either of type + # {::Google::Cloud::Compute::V1::CancelRegionInstanceGroupManagerResizeRequestRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::CancelRegionInstanceGroupManagerResizeRequestRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload cancel(instance_group_manager: nil, project: nil, region: nil, request_id: nil, resize_request: nil) + # Pass arguments to `cancel` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param instance_group_manager [::String] + # The name of the managed instance group. + # Name should conform to RFC1035 or be a resource ID. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region + # scoping this request. Name should conform to RFC1035. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param resize_request [::String] + # The name of the resize request to cancel. + # Name should conform to RFC1035 or be a resource ID. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::CancelRegionInstanceGroupManagerResizeRequestRequest.new + # + # # Call the cancel method. + # result = client.cancel request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def cancel request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::CancelRegionInstanceGroupManagerResizeRequestRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.cancel.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.cancel.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.cancel.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_instance_group_manager_resize_requests_stub.cancel request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Deletes the specified, inactive resize request. Requests that are still + # active cannot be deleted. Deleting request does not delete instances that + # were provisioned previously. + # + # @overload delete(request, options = nil) + # Pass arguments to `delete` via a request object, either of type + # {::Google::Cloud::Compute::V1::DeleteRegionInstanceGroupManagerResizeRequestRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::DeleteRegionInstanceGroupManagerResizeRequestRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload delete(instance_group_manager: nil, project: nil, region: nil, request_id: nil, resize_request: nil) + # Pass arguments to `delete` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param instance_group_manager [::String] + # The name of the managed instance group. + # Name should conform to RFC1035 or be a resource ID. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region + # scoping this request. Name should conform to RFC1035. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param resize_request [::String] + # The name of the resize request to delete. + # Name should conform to RFC1035 or be a resource ID. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::DeleteRegionInstanceGroupManagerResizeRequestRequest.new + # + # # Call the delete method. + # result = client.delete request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def delete request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::DeleteRegionInstanceGroupManagerResizeRequestRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.delete.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.delete.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.delete.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_instance_group_manager_resize_requests_stub.delete request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Returns all of the details about the specified resize request. + # + # @overload get(request, options = nil) + # Pass arguments to `get` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetRegionInstanceGroupManagerResizeRequestRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetRegionInstanceGroupManagerResizeRequestRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get(instance_group_manager: nil, project: nil, region: nil, resize_request: nil) + # Pass arguments to `get` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param instance_group_manager [::String] + # The name of the managed instance group. + # Name should conform to RFC1035 or be a resource ID. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region + # scoping this request. Name should conform to RFC1035. + # @param resize_request [::String] + # The name of the resize request. + # Name should conform to RFC1035 or be a resource ID. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequest] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequest] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetRegionInstanceGroupManagerResizeRequestRequest.new + # + # # Call the get method. + # result = client.get request + # + # # The returned object is of type Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequest. + # p result + # + def get request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetRegionInstanceGroupManagerResizeRequestRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_instance_group_manager_resize_requests_stub.get request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Creates a new Resize Request that starts provisioning VMs immediately + # or queues VM creation. + # + # @overload insert(request, options = nil) + # Pass arguments to `insert` via a request object, either of type + # {::Google::Cloud::Compute::V1::InsertRegionInstanceGroupManagerResizeRequestRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::InsertRegionInstanceGroupManagerResizeRequestRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload insert(instance_group_manager: nil, instance_group_manager_resize_request_resource: nil, project: nil, region: nil, request_id: nil) + # Pass arguments to `insert` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param instance_group_manager [::String] + # Name of the managed instance group to which the resize request is scoped. + # Name should conform to RFC1035 or be a resource ID. + # @param instance_group_manager_resize_request_resource [::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequest, ::Hash] + # The body resource for this request + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region + # scoping this request. Name should conform to RFC1035. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::InsertRegionInstanceGroupManagerResizeRequestRequest.new + # + # # Call the insert method. + # result = client.insert request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def insert request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::InsertRegionInstanceGroupManagerResizeRequestRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.insert.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.insert.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.insert.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_instance_group_manager_resize_requests_stub.insert request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Retrieves a list of Resize Requests that are contained in the + # managed instance group. + # + # @overload list(request, options = nil) + # Pass arguments to `list` via a request object, either of type + # {::Google::Cloud::Compute::V1::ListRegionInstanceGroupManagerResizeRequestsRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::ListRegionInstanceGroupManagerResizeRequestsRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload list(filter: nil, instance_group_manager: nil, max_results: nil, order_by: nil, page_token: nil, project: nil, region: nil, return_partial_success: nil) + # Pass arguments to `list` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param filter [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @param instance_group_manager [::String] + # The name of the managed instance group. The name should conform to RFC1035. + # @param max_results [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @param order_by [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @param page_token [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region + # scoping this request. Name should conform to RFC1035. + # @param return_partial_success [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequest>] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequest>] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::ListRegionInstanceGroupManagerResizeRequestsRequest.new + # + # # Call the list method. + # result = client.list request + # + # # The returned object is of type Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequestsListResponse. + # p result + # + def list request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::ListRegionInstanceGroupManagerResizeRequestsRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.list.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.list.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.list.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_instance_group_manager_resize_requests_stub.list request, options do |result, operation| + result = ::Gapic::Rest::PagedEnumerable.new @region_instance_group_manager_resize_requests_stub, :list, "items", request, result, options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Configuration class for the RegionInstanceGroupManagerResizeRequests REST API. + # + # This class represents the configuration for RegionInstanceGroupManagerResizeRequests REST, + # providing control over timeouts, retry behavior, logging, transport + # parameters, and other low-level controls. Certain parameters can also be + # applied individually to specific RPCs. See + # {::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client::Configuration::Rpcs} + # for a list of RPCs that can be configured independently. + # + # Configuration can be applied globally to all clients, or to a single client + # on construction. + # + # @example + # + # # Modify the global config, setting the timeout for + # # cancel to 20 seconds, + # # and all remaining timeouts to 10 seconds. + # ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.configure do |config| + # config.timeout = 10.0 + # config.rpcs.cancel.timeout = 20.0 + # end + # + # # Apply the above configuration only to a new client. + # client = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new do |config| + # config.timeout = 10.0 + # config.rpcs.cancel.timeout = 20.0 + # end + # + # @!attribute [rw] endpoint + # A custom service endpoint, as a hostname or hostname:port. The default is + # nil, indicating to use the default endpoint in the current universe domain. + # @return [::String,nil] + # @!attribute [rw] credentials + # Credentials to send with calls. You may provide any of the following types: + # * (`String`) The path to a service account key file in JSON format + # * (`Hash`) A service account key as a Hash + # * (`Google::Auth::Credentials`) A googleauth credentials object + # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials)) + # * (`Signet::OAuth2::Client`) A signet oauth2 client object + # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client)) + # * (`nil`) indicating no credentials + # + # Warning: If you accept a credential configuration (JSON file or Hash) from an + # external source for authentication to Google Cloud, you must validate it before + # providing it to a Google API client library. Providing an unvalidated credential + # configuration to Google APIs can compromise the security of your systems and data. + # For more information, refer to [Validate credential configurations from external + # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials). + # @return [::Object] + # @!attribute [rw] scope + # The OAuth scopes + # @return [::Array<::String>] + # @!attribute [rw] lib_name + # The library name as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] lib_version + # The library version as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] timeout + # The call timeout in seconds. + # @return [::Numeric] + # @!attribute [rw] metadata + # Additional headers to be sent with the call. + # @return [::Hash{::Symbol=>::String}] + # @!attribute [rw] retry_policy + # The retry policy. The value is a hash with the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # @return [::Hash] + # @!attribute [rw] quota_project + # A separate project against which to charge quota. + # @return [::String] + # @!attribute [rw] universe_domain + # The universe domain within which to make requests. This determines the + # default endpoint URL. The default value of nil uses the environment + # universe (usually the default "googleapis.com" universe). + # @return [::String,nil] + # @!attribute [rw] logger + # A custom logger to use for request/response debug logging, or the value + # `:default` (the default) to construct a default logger, or `nil` to + # explicitly disable logging. + # @return [::Logger,:default,nil] + # + class Configuration + extend ::Gapic::Config + + # @private + # The endpoint specific to the default "googleapis.com" universe. Deprecated. + DEFAULT_ENDPOINT = "compute.googleapis.com" + + config_attr :endpoint, nil, ::String, nil + config_attr :credentials, nil do |value| + allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Google::Auth::BaseClient, ::Signet::OAuth2::Client, nil] + allowed.any? { |klass| klass === value } + end + config_attr :scope, nil, ::String, ::Array, nil + config_attr :lib_name, nil, ::String, nil + config_attr :lib_version, nil, ::String, nil + config_attr :timeout, nil, ::Numeric, nil + config_attr :metadata, nil, ::Hash, nil + config_attr :retry_policy, nil, ::Hash, ::Proc, nil + config_attr :quota_project, nil, ::String, nil + config_attr :universe_domain, nil, ::String, nil + config_attr :logger, :default, ::Logger, nil, :default + + # @private + def initialize parent_config = nil + @parent_config = parent_config unless parent_config.nil? + + yield self if block_given? + end + + ## + # Configurations for individual RPCs + # @return [Rpcs] + # + def rpcs + @rpcs ||= begin + parent_rpcs = nil + parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs) + Rpcs.new parent_rpcs + end + end + + ## + # Configuration RPC class for the RegionInstanceGroupManagerResizeRequests API. + # + # Includes fields providing the configuration for each RPC in this service. + # Each configuration object is of type `Gapic::Config::Method` and includes + # the following configuration fields: + # + # * `timeout` (*type:* `Numeric`) - The call timeout in seconds + # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional headers + # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields + # include the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # + class Rpcs + ## + # RPC-specific configuration for `cancel` + # @return [::Gapic::Config::Method] + # + attr_reader :cancel + ## + # RPC-specific configuration for `delete` + # @return [::Gapic::Config::Method] + # + attr_reader :delete + ## + # RPC-specific configuration for `get` + # @return [::Gapic::Config::Method] + # + attr_reader :get + ## + # RPC-specific configuration for `insert` + # @return [::Gapic::Config::Method] + # + attr_reader :insert + ## + # RPC-specific configuration for `list` + # @return [::Gapic::Config::Method] + # + attr_reader :list + + # @private + def initialize parent_rpcs = nil + cancel_config = parent_rpcs.cancel if parent_rpcs.respond_to? :cancel + @cancel = ::Gapic::Config::Method.new cancel_config + delete_config = parent_rpcs.delete if parent_rpcs.respond_to? :delete + @delete = ::Gapic::Config::Method.new delete_config + get_config = parent_rpcs.get if parent_rpcs.respond_to? :get + @get = ::Gapic::Config::Method.new get_config + insert_config = parent_rpcs.insert if parent_rpcs.respond_to? :insert + @insert = ::Gapic::Config::Method.new insert_config + list_config = parent_rpcs.list if parent_rpcs.respond_to? :list + @list = ::Gapic::Config::Method.new list_config + + yield self if block_given? + end + end + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest/service_stub.rb new file mode 100644 index 000000000000..a4a4eff49aae --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest/service_stub.rb @@ -0,0 +1,400 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/compute/v1/compute_pb" + +module Google + module Cloud + module Compute + module V1 + module RegionInstanceGroupManagerResizeRequests + module Rest + ## + # REST service stub for the RegionInstanceGroupManagerResizeRequests service. + # Service stub contains baseline method implementations + # including transcoding, making the REST call, and deserialing the response. + # + class ServiceStub + # @private + def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger: + # These require statements are intentionally placed here to initialize + # the REST modules only when it's required. + require "gapic/rest" + + @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, + endpoint_template: endpoint_template, + universe_domain: universe_domain, + credentials: credentials, + numeric_enums: false, + service_name: self.class, + raise_faraday_errors: false, + logger: logger + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @client_stub.universe_domain + end + + ## + # The effective endpoint + # + # @return [String] + # + def endpoint + @client_stub.endpoint + end + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger stub: false + stub ? @client_stub.stub_logger : @client_stub.logger + end + + ## + # Baseline implementation for the cancel REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::CancelRegionInstanceGroupManagerResizeRequestRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def cancel request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_cancel_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "cancel", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the delete REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::DeleteRegionInstanceGroupManagerResizeRequestRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def delete request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_delete_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "delete", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetRegionInstanceGroupManagerResizeRequestRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequest] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequest] + # A result object deserialized from the server's reply + def get request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequest.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the insert REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::InsertRegionInstanceGroupManagerResizeRequestRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def insert request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_insert_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "insert", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListRegionInstanceGroupManagerResizeRequestsRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequestsListResponse] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequestsListResponse] + # A result object deserialized from the server's reply + def list request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_list_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "list", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequestsListResponse.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # @private + # + # GRPC transcoding helper method for the cancel REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::CancelRegionInstanceGroupManagerResizeRequestRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_cancel_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/resizeRequests/{resize_request}/cancel", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["instance_group_manager", %r{^[^/]+/?$}, false], + ["resize_request", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the delete REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::DeleteRegionInstanceGroupManagerResizeRequestRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_delete_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :delete, + uri_template: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/resizeRequests/{resize_request}", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["instance_group_manager", %r{^[^/]+/?$}, false], + ["resize_request", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetRegionInstanceGroupManagerResizeRequestRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/resizeRequests/{resize_request}", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["instance_group_manager", %r{^[^/]+/?$}, false], + ["resize_request", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the insert REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::InsertRegionInstanceGroupManagerResizeRequestRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_insert_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/resizeRequests", + body: "instance_group_manager_resize_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["instance_group_manager", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListRegionInstanceGroupManagerResizeRequestsRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_list_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/resizeRequests", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["instance_group_manager", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups.rb new file mode 100644 index 000000000000..040f8556cd07 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups.rb @@ -0,0 +1,47 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/region_instant_snapshot_groups/credentials" +require "google/cloud/compute/v1/region_instant_snapshot_groups/rest" + +module Google + module Cloud + module Compute + module V1 + ## + # The RegionInstantSnapshotGroups API. + # + # @example Load this service and instantiate a REST client + # + # require "google/cloud/compute/v1/region_instant_snapshot_groups/rest" + # client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new + # + module RegionInstantSnapshotGroups + end + end + end + end +end + +helper_path = ::File.join __dir__, "region_instant_snapshot_groups", "helpers.rb" +require "google/cloud/compute/v1/region_instant_snapshot_groups/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups/credentials.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups/credentials.rb new file mode 100644 index 000000000000..449c61963669 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups/credentials.rb @@ -0,0 +1,52 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "googleauth" + +module Google + module Cloud + module Compute + module V1 + module RegionInstantSnapshotGroups + # Credentials for the RegionInstantSnapshotGroups API. + class Credentials < ::Google::Auth::Credentials + self.scope = [ + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/cloud-platform" + ] + self.env_vars = [ + "COMPUTE_CREDENTIALS", + "COMPUTE_KEYFILE", + "GOOGLE_CLOUD_CREDENTIALS", + "GOOGLE_CLOUD_KEYFILE", + "GCLOUD_KEYFILE", + "COMPUTE_CREDENTIALS_JSON", + "COMPUTE_KEYFILE_JSON", + "GOOGLE_CLOUD_CREDENTIALS_JSON", + "GOOGLE_CLOUD_KEYFILE_JSON", + "GCLOUD_KEYFILE_JSON" + ] + self.paths = [ + "~/.config/google_cloud/application_default_credentials.json" + ] + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups/rest.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups/rest.rb new file mode 100644 index 000000000000..0c7366230c74 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups/rest.rb @@ -0,0 +1,51 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/rest" +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/region_instant_snapshot_groups/credentials" +require "google/cloud/compute/v1/region_instant_snapshot_groups/rest/client" + +module Google + module Cloud + module Compute + module V1 + ## + # The RegionInstantSnapshotGroups API. + # + # To load this service and instantiate a REST client: + # + # require "google/cloud/compute/v1/region_instant_snapshot_groups/rest" + # client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new + # + module RegionInstantSnapshotGroups + # Client for the REST transport + module Rest + end + end + end + end + end +end + +helper_path = ::File.join __dir__, "rest", "helpers.rb" +require "google/cloud/compute/v1/region_instant_snapshot_groups/rest/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups/rest/client.rb new file mode 100644 index 000000000000..11bd63a25b5e --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups/rest/client.rb @@ -0,0 +1,1146 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/errors" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/region_instant_snapshot_groups/rest/service_stub" +require "google/cloud/compute/v1/region_operations/rest" + +module Google + module Cloud + module Compute + module V1 + module RegionInstantSnapshotGroups + module Rest + ## + # REST client for the RegionInstantSnapshotGroups service. + # + # The RegionInstantSnapshotGroups API. + # + class Client + # @private + API_VERSION = "" + + # @private + DEFAULT_ENDPOINT_TEMPLATE = "compute.$UNIVERSE_DOMAIN$" + + # @private + attr_reader :region_instant_snapshot_groups_stub + + ## + # Configure the RegionInstantSnapshotGroups Client class. + # + # See {::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @example + # + # # Modify the configuration for all RegionInstantSnapshotGroups clients + # ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.configure do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def self.configure + @configure ||= begin + namespace = ["Google", "Cloud", "Compute", "V1"] + parent_config = while namespace.any? + parent_name = namespace.join "::" + parent_const = const_get parent_name + break parent_const.configure if parent_const.respond_to? :configure + namespace.pop + end + default_config = Client::Configuration.new parent_config + + default_config.rpcs.delete.timeout = 600.0 + + default_config.rpcs.get.timeout = 600.0 + default_config.rpcs.get.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.get_iam_policy.timeout = 600.0 + default_config.rpcs.get_iam_policy.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.insert.timeout = 600.0 + + default_config.rpcs.list.timeout = 600.0 + default_config.rpcs.list.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.set_iam_policy.timeout = 600.0 + + default_config.rpcs.test_iam_permissions.timeout = 600.0 + + default_config + end + yield @configure if block_given? + @configure + end + + ## + # Configure the RegionInstantSnapshotGroups Client instance. + # + # The configuration is set to the derived mode, meaning that values can be changed, + # but structural changes (adding new fields, etc.) are not allowed. Structural changes + # should be made on {Client.configure}. + # + # See {::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def configure + yield @config if block_given? + @config + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @region_instant_snapshot_groups_stub.universe_domain + end + + ## + # Create a new RegionInstantSnapshotGroups REST client object. + # + # @example + # + # # Create a client using the default configuration + # client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new + # + # # Create a client using a custom configuration + # client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the RegionInstantSnapshotGroups client. + # @yieldparam config [Client::Configuration] + # + def initialize + # Create the configuration object + @config = Configuration.new Client.configure + + # Yield the configuration if needed + yield @config if block_given? + + # Create credentials + credentials = @config.credentials + # Use self-signed JWT if the endpoint is unchanged from default, + # but only if the default endpoint does not have a region prefix. + enable_self_signed_jwt = @config.endpoint.nil? || + (@config.endpoint == Configuration::DEFAULT_ENDPOINT && + !@config.endpoint.split(".").first.include?("-")) + credentials ||= Credentials.default scope: @config.scope, + enable_self_signed_jwt: enable_self_signed_jwt + if credentials.is_a?(::String) || credentials.is_a?(::Hash) + credentials = Credentials.new credentials, scope: @config.scope + end + + @quota_project_id = @config.quota_project + @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id + + @region_operations = ::Google::Cloud::Compute::V1::RegionOperations::Rest::Client.new do |config| + config.credentials = credentials + config.quota_project = @quota_project_id + config.endpoint = @config.endpoint + config.universe_domain = @config.universe_domain + end + + @region_instant_snapshot_groups_stub = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::ServiceStub.new( + endpoint: @config.endpoint, + endpoint_template: DEFAULT_ENDPOINT_TEMPLATE, + universe_domain: @config.universe_domain, + credentials: credentials, + logger: @config.logger + ) + + @region_instant_snapshot_groups_stub.logger(stub: true)&.info do |entry| + entry.set_system_name + entry.set_service + entry.message = "Created client for #{entry.service}" + entry.set_credentials_fields credentials + entry.set "customEndpoint", @config.endpoint if @config.endpoint + entry.set "defaultTimeout", @config.timeout if @config.timeout + entry.set "quotaProject", @quota_project_id if @quota_project_id + end + end + + ## + # Get the associated client for long-running operations via RegionOperations. + # + # @return [::Google::Cloud::Compute::V1::RegionOperations::Rest::Client] + # + attr_reader :region_operations + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger + @region_instant_snapshot_groups_stub.logger + end + + # Service calls + + ## + # deletes a Regional InstantSnapshotGroup resource + # + # @overload delete(request, options = nil) + # Pass arguments to `delete` via a request object, either of type + # {::Google::Cloud::Compute::V1::DeleteRegionInstantSnapshotGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::DeleteRegionInstantSnapshotGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload delete(instant_snapshot_group: nil, project: nil, region: nil, request_id: nil) + # Pass arguments to `delete` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param instant_snapshot_group [::String] + # Name of the InstantSnapshotGroup resource to delete. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::DeleteRegionInstantSnapshotGroupRequest.new + # + # # Call the delete method. + # result = client.delete request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def delete request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::DeleteRegionInstantSnapshotGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.delete.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.delete.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.delete.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_instant_snapshot_groups_stub.delete request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # returns the specified InstantSnapshotGroup resource in the specified + # region. + # + # @overload get(request, options = nil) + # Pass arguments to `get` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetRegionInstantSnapshotGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetRegionInstantSnapshotGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get(instant_snapshot_group: nil, project: nil, region: nil) + # Pass arguments to `get` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param instant_snapshot_group [::String] + # Name of the InstantSnapshotGroup resource to return. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::InstantSnapshotGroup] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::InstantSnapshotGroup] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetRegionInstantSnapshotGroupRequest.new + # + # # Call the get method. + # result = client.get request + # + # # The returned object is of type Google::Cloud::Compute::V1::InstantSnapshotGroup. + # p result + # + def get request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetRegionInstantSnapshotGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_instant_snapshot_groups_stub.get request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Gets the access control policy for a resource. May be empty if no such + # policy or resource exists. + # + # @overload get_iam_policy(request, options = nil) + # Pass arguments to `get_iam_policy` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetIamPolicyRegionInstantSnapshotGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetIamPolicyRegionInstantSnapshotGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get_iam_policy(options_requested_policy_version: nil, project: nil, region: nil, resource: nil) + # Pass arguments to `get_iam_policy` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param options_requested_policy_version [::Integer] + # Requested IAM Policy version. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param resource [::String] + # Name or id of the resource for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetIamPolicyRegionInstantSnapshotGroupRequest.new + # + # # Call the get_iam_policy method. + # result = client.get_iam_policy request + # + # # The returned object is of type Google::Cloud::Compute::V1::Policy. + # p result + # + def get_iam_policy request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetIamPolicyRegionInstantSnapshotGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get_iam_policy.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get_iam_policy.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get_iam_policy.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_instant_snapshot_groups_stub.get_iam_policy request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # creates a Regional InstantSnapshotGroup resource + # + # @overload insert(request, options = nil) + # Pass arguments to `insert` via a request object, either of type + # {::Google::Cloud::Compute::V1::InsertRegionInstantSnapshotGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::InsertRegionInstantSnapshotGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload insert(instant_snapshot_group_resource: nil, project: nil, region: nil, request_id: nil, source_consistency_group: nil) + # Pass arguments to `insert` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param instant_snapshot_group_resource [::Google::Cloud::Compute::V1::InstantSnapshotGroup, ::Hash] + # The body resource for this request + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region for this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param source_consistency_group [::String] + # begin_interface: MixerMutationRequestBuilder + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::InsertRegionInstantSnapshotGroupRequest.new + # + # # Call the insert method. + # result = client.insert request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def insert request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::InsertRegionInstantSnapshotGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.insert.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.insert.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.insert.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_instant_snapshot_groups_stub.insert request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # retrieves the list of InstantSnapshotGroup resources contained within + # the specified region. + # + # @overload list(request, options = nil) + # Pass arguments to `list` via a request object, either of type + # {::Google::Cloud::Compute::V1::ListRegionInstantSnapshotGroupsRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::ListRegionInstantSnapshotGroupsRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload list(filter: nil, max_results: nil, order_by: nil, page_token: nil, project: nil, region: nil, return_partial_success: nil) + # Pass arguments to `list` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param filter [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @param max_results [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @param order_by [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @param page_token [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param return_partial_success [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::InstantSnapshotGroup>] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::InstantSnapshotGroup>] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::ListRegionInstantSnapshotGroupsRequest.new + # + # # Call the list method. + # result = client.list request + # + # # The returned object is of type Google::Cloud::Compute::V1::ListInstantSnapshotGroups. + # p result + # + def list request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::ListRegionInstantSnapshotGroupsRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.list.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.list.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.list.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_instant_snapshot_groups_stub.list request, options do |result, operation| + result = ::Gapic::Rest::PagedEnumerable.new @region_instant_snapshot_groups_stub, :list, "items", request, result, options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Sets the access control policy on the specified resource. + # Replaces any existing policy. + # + # @overload set_iam_policy(request, options = nil) + # Pass arguments to `set_iam_policy` via a request object, either of type + # {::Google::Cloud::Compute::V1::SetIamPolicyRegionInstantSnapshotGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::SetIamPolicyRegionInstantSnapshotGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload set_iam_policy(project: nil, region: nil, region_set_policy_request_resource: nil, resource: nil) + # Pass arguments to `set_iam_policy` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param region_set_policy_request_resource [::Google::Cloud::Compute::V1::RegionSetPolicyRequest, ::Hash] + # The body resource for this request + # @param resource [::String] + # Name or id of the resource for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::SetIamPolicyRegionInstantSnapshotGroupRequest.new + # + # # Call the set_iam_policy method. + # result = client.set_iam_policy request + # + # # The returned object is of type Google::Cloud::Compute::V1::Policy. + # p result + # + def set_iam_policy request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::SetIamPolicyRegionInstantSnapshotGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.set_iam_policy.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.set_iam_policy.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.set_iam_policy.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_instant_snapshot_groups_stub.set_iam_policy request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Returns permissions that a caller has on the specified resource. + # + # @overload test_iam_permissions(request, options = nil) + # Pass arguments to `test_iam_permissions` via a request object, either of type + # {::Google::Cloud::Compute::V1::TestIamPermissionsRegionInstantSnapshotGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::TestIamPermissionsRegionInstantSnapshotGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload test_iam_permissions(project: nil, region: nil, resource: nil, test_permissions_request_resource: nil) + # Pass arguments to `test_iam_permissions` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param resource [::String] + # Name or id of the resource for this request. + # @param test_permissions_request_resource [::Google::Cloud::Compute::V1::TestPermissionsRequest, ::Hash] + # The body resource for this request + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::TestIamPermissionsRegionInstantSnapshotGroupRequest.new + # + # # Call the test_iam_permissions method. + # result = client.test_iam_permissions request + # + # # The returned object is of type Google::Cloud::Compute::V1::TestPermissionsResponse. + # p result + # + def test_iam_permissions request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::TestIamPermissionsRegionInstantSnapshotGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.test_iam_permissions.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.test_iam_permissions.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.test_iam_permissions.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_instant_snapshot_groups_stub.test_iam_permissions request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Configuration class for the RegionInstantSnapshotGroups REST API. + # + # This class represents the configuration for RegionInstantSnapshotGroups REST, + # providing control over timeouts, retry behavior, logging, transport + # parameters, and other low-level controls. Certain parameters can also be + # applied individually to specific RPCs. See + # {::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client::Configuration::Rpcs} + # for a list of RPCs that can be configured independently. + # + # Configuration can be applied globally to all clients, or to a single client + # on construction. + # + # @example + # + # # Modify the global config, setting the timeout for + # # delete to 20 seconds, + # # and all remaining timeouts to 10 seconds. + # ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.configure do |config| + # config.timeout = 10.0 + # config.rpcs.delete.timeout = 20.0 + # end + # + # # Apply the above configuration only to a new client. + # client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new do |config| + # config.timeout = 10.0 + # config.rpcs.delete.timeout = 20.0 + # end + # + # @!attribute [rw] endpoint + # A custom service endpoint, as a hostname or hostname:port. The default is + # nil, indicating to use the default endpoint in the current universe domain. + # @return [::String,nil] + # @!attribute [rw] credentials + # Credentials to send with calls. You may provide any of the following types: + # * (`String`) The path to a service account key file in JSON format + # * (`Hash`) A service account key as a Hash + # * (`Google::Auth::Credentials`) A googleauth credentials object + # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials)) + # * (`Signet::OAuth2::Client`) A signet oauth2 client object + # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client)) + # * (`nil`) indicating no credentials + # + # Warning: If you accept a credential configuration (JSON file or Hash) from an + # external source for authentication to Google Cloud, you must validate it before + # providing it to a Google API client library. Providing an unvalidated credential + # configuration to Google APIs can compromise the security of your systems and data. + # For more information, refer to [Validate credential configurations from external + # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials). + # @return [::Object] + # @!attribute [rw] scope + # The OAuth scopes + # @return [::Array<::String>] + # @!attribute [rw] lib_name + # The library name as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] lib_version + # The library version as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] timeout + # The call timeout in seconds. + # @return [::Numeric] + # @!attribute [rw] metadata + # Additional headers to be sent with the call. + # @return [::Hash{::Symbol=>::String}] + # @!attribute [rw] retry_policy + # The retry policy. The value is a hash with the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # @return [::Hash] + # @!attribute [rw] quota_project + # A separate project against which to charge quota. + # @return [::String] + # @!attribute [rw] universe_domain + # The universe domain within which to make requests. This determines the + # default endpoint URL. The default value of nil uses the environment + # universe (usually the default "googleapis.com" universe). + # @return [::String,nil] + # @!attribute [rw] logger + # A custom logger to use for request/response debug logging, or the value + # `:default` (the default) to construct a default logger, or `nil` to + # explicitly disable logging. + # @return [::Logger,:default,nil] + # + class Configuration + extend ::Gapic::Config + + # @private + # The endpoint specific to the default "googleapis.com" universe. Deprecated. + DEFAULT_ENDPOINT = "compute.googleapis.com" + + config_attr :endpoint, nil, ::String, nil + config_attr :credentials, nil do |value| + allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Google::Auth::BaseClient, ::Signet::OAuth2::Client, nil] + allowed.any? { |klass| klass === value } + end + config_attr :scope, nil, ::String, ::Array, nil + config_attr :lib_name, nil, ::String, nil + config_attr :lib_version, nil, ::String, nil + config_attr :timeout, nil, ::Numeric, nil + config_attr :metadata, nil, ::Hash, nil + config_attr :retry_policy, nil, ::Hash, ::Proc, nil + config_attr :quota_project, nil, ::String, nil + config_attr :universe_domain, nil, ::String, nil + config_attr :logger, :default, ::Logger, nil, :default + + # @private + def initialize parent_config = nil + @parent_config = parent_config unless parent_config.nil? + + yield self if block_given? + end + + ## + # Configurations for individual RPCs + # @return [Rpcs] + # + def rpcs + @rpcs ||= begin + parent_rpcs = nil + parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs) + Rpcs.new parent_rpcs + end + end + + ## + # Configuration RPC class for the RegionInstantSnapshotGroups API. + # + # Includes fields providing the configuration for each RPC in this service. + # Each configuration object is of type `Gapic::Config::Method` and includes + # the following configuration fields: + # + # * `timeout` (*type:* `Numeric`) - The call timeout in seconds + # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional headers + # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields + # include the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # + class Rpcs + ## + # RPC-specific configuration for `delete` + # @return [::Gapic::Config::Method] + # + attr_reader :delete + ## + # RPC-specific configuration for `get` + # @return [::Gapic::Config::Method] + # + attr_reader :get + ## + # RPC-specific configuration for `get_iam_policy` + # @return [::Gapic::Config::Method] + # + attr_reader :get_iam_policy + ## + # RPC-specific configuration for `insert` + # @return [::Gapic::Config::Method] + # + attr_reader :insert + ## + # RPC-specific configuration for `list` + # @return [::Gapic::Config::Method] + # + attr_reader :list + ## + # RPC-specific configuration for `set_iam_policy` + # @return [::Gapic::Config::Method] + # + attr_reader :set_iam_policy + ## + # RPC-specific configuration for `test_iam_permissions` + # @return [::Gapic::Config::Method] + # + attr_reader :test_iam_permissions + + # @private + def initialize parent_rpcs = nil + delete_config = parent_rpcs.delete if parent_rpcs.respond_to? :delete + @delete = ::Gapic::Config::Method.new delete_config + get_config = parent_rpcs.get if parent_rpcs.respond_to? :get + @get = ::Gapic::Config::Method.new get_config + get_iam_policy_config = parent_rpcs.get_iam_policy if parent_rpcs.respond_to? :get_iam_policy + @get_iam_policy = ::Gapic::Config::Method.new get_iam_policy_config + insert_config = parent_rpcs.insert if parent_rpcs.respond_to? :insert + @insert = ::Gapic::Config::Method.new insert_config + list_config = parent_rpcs.list if parent_rpcs.respond_to? :list + @list = ::Gapic::Config::Method.new list_config + set_iam_policy_config = parent_rpcs.set_iam_policy if parent_rpcs.respond_to? :set_iam_policy + @set_iam_policy = ::Gapic::Config::Method.new set_iam_policy_config + test_iam_permissions_config = parent_rpcs.test_iam_permissions if parent_rpcs.respond_to? :test_iam_permissions + @test_iam_permissions = ::Gapic::Config::Method.new test_iam_permissions_config + + yield self if block_given? + end + end + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups/rest/service_stub.rb new file mode 100644 index 000000000000..88063aacb5e5 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_instant_snapshot_groups/rest/service_stub.rb @@ -0,0 +1,523 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/compute/v1/compute_pb" + +module Google + module Cloud + module Compute + module V1 + module RegionInstantSnapshotGroups + module Rest + ## + # REST service stub for the RegionInstantSnapshotGroups service. + # Service stub contains baseline method implementations + # including transcoding, making the REST call, and deserialing the response. + # + class ServiceStub + # @private + def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger: + # These require statements are intentionally placed here to initialize + # the REST modules only when it's required. + require "gapic/rest" + + @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, + endpoint_template: endpoint_template, + universe_domain: universe_domain, + credentials: credentials, + numeric_enums: false, + service_name: self.class, + raise_faraday_errors: false, + logger: logger + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @client_stub.universe_domain + end + + ## + # The effective endpoint + # + # @return [String] + # + def endpoint + @client_stub.endpoint + end + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger stub: false + stub ? @client_stub.stub_logger : @client_stub.logger + end + + ## + # Baseline implementation for the delete REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::DeleteRegionInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def delete request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_delete_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "delete", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetRegionInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::InstantSnapshotGroup] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::InstantSnapshotGroup] + # A result object deserialized from the server's reply + def get request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::InstantSnapshotGroup.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the get_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetIamPolicyRegionInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # A result object deserialized from the server's reply + def get_iam_policy request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_iam_policy_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get_iam_policy", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Policy.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the insert REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::InsertRegionInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def insert request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_insert_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "insert", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListRegionInstantSnapshotGroupsRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::ListInstantSnapshotGroups] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::ListInstantSnapshotGroups] + # A result object deserialized from the server's reply + def list request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_list_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "list", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::ListInstantSnapshotGroups.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the set_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::SetIamPolicyRegionInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # A result object deserialized from the server's reply + def set_iam_policy request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_set_iam_policy_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "set_iam_policy", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Policy.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the test_iam_permissions REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::TestIamPermissionsRegionInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # A result object deserialized from the server's reply + def test_iam_permissions request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_test_iam_permissions_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "test_iam_permissions", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::TestPermissionsResponse.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # @private + # + # GRPC transcoding helper method for the delete REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::DeleteRegionInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_delete_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :delete, + uri_template: "/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{instant_snapshot_group}", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["instant_snapshot_group", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetRegionInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{instant_snapshot_group}", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["instant_snapshot_group", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the get_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetIamPolicyRegionInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_iam_policy_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/getIamPolicy", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the insert REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::InsertRegionInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_insert_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups", + body: "instant_snapshot_group_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListRegionInstantSnapshotGroupsRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_list_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the set_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::SetIamPolicyRegionInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_set_iam_policy_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/setIamPolicy", + body: "region_set_policy_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the test_iam_permissions REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::TestIamPermissionsRegionInstantSnapshotGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_test_iam_permissions_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/instantSnapshotGroups/{resource}/testIamPermissions", + body: "test_permissions_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings.rb new file mode 100644 index 000000000000..0045ec5e9a43 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings.rb @@ -0,0 +1,47 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/region_snapshot_settings/credentials" +require "google/cloud/compute/v1/region_snapshot_settings/rest" + +module Google + module Cloud + module Compute + module V1 + ## + # The RegionSnapshotSettings API. + # + # @example Load this service and instantiate a REST client + # + # require "google/cloud/compute/v1/region_snapshot_settings/rest" + # client = ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client.new + # + module RegionSnapshotSettings + end + end + end + end +end + +helper_path = ::File.join __dir__, "region_snapshot_settings", "helpers.rb" +require "google/cloud/compute/v1/region_snapshot_settings/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings/credentials.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings/credentials.rb new file mode 100644 index 000000000000..633d3dfe0789 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings/credentials.rb @@ -0,0 +1,52 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "googleauth" + +module Google + module Cloud + module Compute + module V1 + module RegionSnapshotSettings + # Credentials for the RegionSnapshotSettings API. + class Credentials < ::Google::Auth::Credentials + self.scope = [ + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/cloud-platform" + ] + self.env_vars = [ + "COMPUTE_CREDENTIALS", + "COMPUTE_KEYFILE", + "GOOGLE_CLOUD_CREDENTIALS", + "GOOGLE_CLOUD_KEYFILE", + "GCLOUD_KEYFILE", + "COMPUTE_CREDENTIALS_JSON", + "COMPUTE_KEYFILE_JSON", + "GOOGLE_CLOUD_CREDENTIALS_JSON", + "GOOGLE_CLOUD_KEYFILE_JSON", + "GCLOUD_KEYFILE_JSON" + ] + self.paths = [ + "~/.config/google_cloud/application_default_credentials.json" + ] + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings/rest.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings/rest.rb new file mode 100644 index 000000000000..d784f82efff1 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings/rest.rb @@ -0,0 +1,51 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/rest" +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/region_snapshot_settings/credentials" +require "google/cloud/compute/v1/region_snapshot_settings/rest/client" + +module Google + module Cloud + module Compute + module V1 + ## + # The RegionSnapshotSettings API. + # + # To load this service and instantiate a REST client: + # + # require "google/cloud/compute/v1/region_snapshot_settings/rest" + # client = ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client.new + # + module RegionSnapshotSettings + # Client for the REST transport + module Rest + end + end + end + end + end +end + +helper_path = ::File.join __dir__, "rest", "helpers.rb" +require "google/cloud/compute/v1/region_snapshot_settings/rest/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings/rest/client.rb new file mode 100644 index 000000000000..0a3837272e44 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings/rest/client.rb @@ -0,0 +1,561 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/errors" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/region_snapshot_settings/rest/service_stub" +require "google/cloud/compute/v1/region_operations/rest" + +module Google + module Cloud + module Compute + module V1 + module RegionSnapshotSettings + module Rest + ## + # REST client for the RegionSnapshotSettings service. + # + # The RegionSnapshotSettings API. + # + class Client + # @private + API_VERSION = "" + + # @private + DEFAULT_ENDPOINT_TEMPLATE = "compute.$UNIVERSE_DOMAIN$" + + # @private + attr_reader :region_snapshot_settings_stub + + ## + # Configure the RegionSnapshotSettings Client class. + # + # See {::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @example + # + # # Modify the configuration for all RegionSnapshotSettings clients + # ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client.configure do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def self.configure + @configure ||= begin + namespace = ["Google", "Cloud", "Compute", "V1"] + parent_config = while namespace.any? + parent_name = namespace.join "::" + parent_const = const_get parent_name + break parent_const.configure if parent_const.respond_to? :configure + namespace.pop + end + default_config = Client::Configuration.new parent_config + + default_config.rpcs.get.timeout = 600.0 + default_config.rpcs.get.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.patch.timeout = 600.0 + + default_config + end + yield @configure if block_given? + @configure + end + + ## + # Configure the RegionSnapshotSettings Client instance. + # + # The configuration is set to the derived mode, meaning that values can be changed, + # but structural changes (adding new fields, etc.) are not allowed. Structural changes + # should be made on {Client.configure}. + # + # See {::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def configure + yield @config if block_given? + @config + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @region_snapshot_settings_stub.universe_domain + end + + ## + # Create a new RegionSnapshotSettings REST client object. + # + # @example + # + # # Create a client using the default configuration + # client = ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client.new + # + # # Create a client using a custom configuration + # client = ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client.new do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the RegionSnapshotSettings client. + # @yieldparam config [Client::Configuration] + # + def initialize + # Create the configuration object + @config = Configuration.new Client.configure + + # Yield the configuration if needed + yield @config if block_given? + + # Create credentials + credentials = @config.credentials + # Use self-signed JWT if the endpoint is unchanged from default, + # but only if the default endpoint does not have a region prefix. + enable_self_signed_jwt = @config.endpoint.nil? || + (@config.endpoint == Configuration::DEFAULT_ENDPOINT && + !@config.endpoint.split(".").first.include?("-")) + credentials ||= Credentials.default scope: @config.scope, + enable_self_signed_jwt: enable_self_signed_jwt + if credentials.is_a?(::String) || credentials.is_a?(::Hash) + credentials = Credentials.new credentials, scope: @config.scope + end + + @quota_project_id = @config.quota_project + @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id + + @region_operations = ::Google::Cloud::Compute::V1::RegionOperations::Rest::Client.new do |config| + config.credentials = credentials + config.quota_project = @quota_project_id + config.endpoint = @config.endpoint + config.universe_domain = @config.universe_domain + end + + @region_snapshot_settings_stub = ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::ServiceStub.new( + endpoint: @config.endpoint, + endpoint_template: DEFAULT_ENDPOINT_TEMPLATE, + universe_domain: @config.universe_domain, + credentials: credentials, + logger: @config.logger + ) + + @region_snapshot_settings_stub.logger(stub: true)&.info do |entry| + entry.set_system_name + entry.set_service + entry.message = "Created client for #{entry.service}" + entry.set_credentials_fields credentials + entry.set "customEndpoint", @config.endpoint if @config.endpoint + entry.set "defaultTimeout", @config.timeout if @config.timeout + entry.set "quotaProject", @quota_project_id if @quota_project_id + end + end + + ## + # Get the associated client for long-running operations via RegionOperations. + # + # @return [::Google::Cloud::Compute::V1::RegionOperations::Rest::Client] + # + attr_reader :region_operations + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger + @region_snapshot_settings_stub.logger + end + + # Service calls + + ## + # Get region snapshot settings. + # + # @overload get(request, options = nil) + # Pass arguments to `get` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetRegionSnapshotSettingRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetRegionSnapshotSettingRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get(project: nil, region: nil) + # Pass arguments to `get` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::SnapshotSettings] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::SnapshotSettings] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetRegionSnapshotSettingRequest.new + # + # # Call the get method. + # result = client.get request + # + # # The returned object is of type Google::Cloud::Compute::V1::SnapshotSettings. + # p result + # + def get request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetRegionSnapshotSettingRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_snapshot_settings_stub.get request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Patch region snapshot settings. + # + # @overload patch(request, options = nil) + # Pass arguments to `patch` via a request object, either of type + # {::Google::Cloud::Compute::V1::PatchRegionSnapshotSettingRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::PatchRegionSnapshotSettingRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload patch(project: nil, region: nil, request_id: nil, snapshot_settings_resource: nil, update_mask: nil) + # Pass arguments to `patch` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region for this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param snapshot_settings_resource [::Google::Cloud::Compute::V1::SnapshotSettings, ::Hash] + # The body resource for this request + # @param update_mask [::String] + # update_mask indicates fields to be updated as part of this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::PatchRegionSnapshotSettingRequest.new + # + # # Call the patch method. + # result = client.patch request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def patch request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::PatchRegionSnapshotSettingRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.patch.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.patch.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.patch.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_snapshot_settings_stub.patch request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Configuration class for the RegionSnapshotSettings REST API. + # + # This class represents the configuration for RegionSnapshotSettings REST, + # providing control over timeouts, retry behavior, logging, transport + # parameters, and other low-level controls. Certain parameters can also be + # applied individually to specific RPCs. See + # {::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client::Configuration::Rpcs} + # for a list of RPCs that can be configured independently. + # + # Configuration can be applied globally to all clients, or to a single client + # on construction. + # + # @example + # + # # Modify the global config, setting the timeout for + # # get to 20 seconds, + # # and all remaining timeouts to 10 seconds. + # ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client.configure do |config| + # config.timeout = 10.0 + # config.rpcs.get.timeout = 20.0 + # end + # + # # Apply the above configuration only to a new client. + # client = ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client.new do |config| + # config.timeout = 10.0 + # config.rpcs.get.timeout = 20.0 + # end + # + # @!attribute [rw] endpoint + # A custom service endpoint, as a hostname or hostname:port. The default is + # nil, indicating to use the default endpoint in the current universe domain. + # @return [::String,nil] + # @!attribute [rw] credentials + # Credentials to send with calls. You may provide any of the following types: + # * (`String`) The path to a service account key file in JSON format + # * (`Hash`) A service account key as a Hash + # * (`Google::Auth::Credentials`) A googleauth credentials object + # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials)) + # * (`Signet::OAuth2::Client`) A signet oauth2 client object + # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client)) + # * (`nil`) indicating no credentials + # + # Warning: If you accept a credential configuration (JSON file or Hash) from an + # external source for authentication to Google Cloud, you must validate it before + # providing it to a Google API client library. Providing an unvalidated credential + # configuration to Google APIs can compromise the security of your systems and data. + # For more information, refer to [Validate credential configurations from external + # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials). + # @return [::Object] + # @!attribute [rw] scope + # The OAuth scopes + # @return [::Array<::String>] + # @!attribute [rw] lib_name + # The library name as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] lib_version + # The library version as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] timeout + # The call timeout in seconds. + # @return [::Numeric] + # @!attribute [rw] metadata + # Additional headers to be sent with the call. + # @return [::Hash{::Symbol=>::String}] + # @!attribute [rw] retry_policy + # The retry policy. The value is a hash with the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # @return [::Hash] + # @!attribute [rw] quota_project + # A separate project against which to charge quota. + # @return [::String] + # @!attribute [rw] universe_domain + # The universe domain within which to make requests. This determines the + # default endpoint URL. The default value of nil uses the environment + # universe (usually the default "googleapis.com" universe). + # @return [::String,nil] + # @!attribute [rw] logger + # A custom logger to use for request/response debug logging, or the value + # `:default` (the default) to construct a default logger, or `nil` to + # explicitly disable logging. + # @return [::Logger,:default,nil] + # + class Configuration + extend ::Gapic::Config + + # @private + # The endpoint specific to the default "googleapis.com" universe. Deprecated. + DEFAULT_ENDPOINT = "compute.googleapis.com" + + config_attr :endpoint, nil, ::String, nil + config_attr :credentials, nil do |value| + allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Google::Auth::BaseClient, ::Signet::OAuth2::Client, nil] + allowed.any? { |klass| klass === value } + end + config_attr :scope, nil, ::String, ::Array, nil + config_attr :lib_name, nil, ::String, nil + config_attr :lib_version, nil, ::String, nil + config_attr :timeout, nil, ::Numeric, nil + config_attr :metadata, nil, ::Hash, nil + config_attr :retry_policy, nil, ::Hash, ::Proc, nil + config_attr :quota_project, nil, ::String, nil + config_attr :universe_domain, nil, ::String, nil + config_attr :logger, :default, ::Logger, nil, :default + + # @private + def initialize parent_config = nil + @parent_config = parent_config unless parent_config.nil? + + yield self if block_given? + end + + ## + # Configurations for individual RPCs + # @return [Rpcs] + # + def rpcs + @rpcs ||= begin + parent_rpcs = nil + parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs) + Rpcs.new parent_rpcs + end + end + + ## + # Configuration RPC class for the RegionSnapshotSettings API. + # + # Includes fields providing the configuration for each RPC in this service. + # Each configuration object is of type `Gapic::Config::Method` and includes + # the following configuration fields: + # + # * `timeout` (*type:* `Numeric`) - The call timeout in seconds + # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional headers + # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields + # include the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # + class Rpcs + ## + # RPC-specific configuration for `get` + # @return [::Gapic::Config::Method] + # + attr_reader :get + ## + # RPC-specific configuration for `patch` + # @return [::Gapic::Config::Method] + # + attr_reader :patch + + # @private + def initialize parent_rpcs = nil + get_config = parent_rpcs.get if parent_rpcs.respond_to? :get + @get = ::Gapic::Config::Method.new get_config + patch_config = parent_rpcs.patch if parent_rpcs.respond_to? :patch + @patch = ::Gapic::Config::Method.new patch_config + + yield self if block_given? + end + end + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings/rest/service_stub.rb new file mode 100644 index 000000000000..419b7e8ed7ca --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshot_settings/rest/service_stub.rb @@ -0,0 +1,206 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/compute/v1/compute_pb" + +module Google + module Cloud + module Compute + module V1 + module RegionSnapshotSettings + module Rest + ## + # REST service stub for the RegionSnapshotSettings service. + # Service stub contains baseline method implementations + # including transcoding, making the REST call, and deserialing the response. + # + class ServiceStub + # @private + def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger: + # These require statements are intentionally placed here to initialize + # the REST modules only when it's required. + require "gapic/rest" + + @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, + endpoint_template: endpoint_template, + universe_domain: universe_domain, + credentials: credentials, + numeric_enums: false, + service_name: self.class, + raise_faraday_errors: false, + logger: logger + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @client_stub.universe_domain + end + + ## + # The effective endpoint + # + # @return [String] + # + def endpoint + @client_stub.endpoint + end + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger stub: false + stub ? @client_stub.stub_logger : @client_stub.logger + end + + ## + # Baseline implementation for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetRegionSnapshotSettingRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::SnapshotSettings] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::SnapshotSettings] + # A result object deserialized from the server's reply + def get request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::SnapshotSettings.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the patch REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::PatchRegionSnapshotSettingRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def patch request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_patch_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "patch", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # @private + # + # GRPC transcoding helper method for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetRegionSnapshotSettingRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/snapshotSettings", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the patch REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::PatchRegionSnapshotSettingRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_patch_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :patch, + uri_template: "/compute/v1/projects/{project}/regions/{region}/snapshotSettings", + body: "snapshot_settings_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots.rb new file mode 100644 index 000000000000..1c98787478cf --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots.rb @@ -0,0 +1,47 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/region_snapshots/credentials" +require "google/cloud/compute/v1/region_snapshots/rest" + +module Google + module Cloud + module Compute + module V1 + ## + # The RegionSnapshots API. + # + # @example Load this service and instantiate a REST client + # + # require "google/cloud/compute/v1/region_snapshots/rest" + # client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new + # + module RegionSnapshots + end + end + end + end +end + +helper_path = ::File.join __dir__, "region_snapshots", "helpers.rb" +require "google/cloud/compute/v1/region_snapshots/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots/credentials.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots/credentials.rb new file mode 100644 index 000000000000..fd0acc6e8c03 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots/credentials.rb @@ -0,0 +1,52 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "googleauth" + +module Google + module Cloud + module Compute + module V1 + module RegionSnapshots + # Credentials for the RegionSnapshots API. + class Credentials < ::Google::Auth::Credentials + self.scope = [ + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/cloud-platform" + ] + self.env_vars = [ + "COMPUTE_CREDENTIALS", + "COMPUTE_KEYFILE", + "GOOGLE_CLOUD_CREDENTIALS", + "GOOGLE_CLOUD_KEYFILE", + "GCLOUD_KEYFILE", + "COMPUTE_CREDENTIALS_JSON", + "COMPUTE_KEYFILE_JSON", + "GOOGLE_CLOUD_CREDENTIALS_JSON", + "GOOGLE_CLOUD_KEYFILE_JSON", + "GCLOUD_KEYFILE_JSON" + ] + self.paths = [ + "~/.config/google_cloud/application_default_credentials.json" + ] + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots/rest.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots/rest.rb new file mode 100644 index 000000000000..2732e47545eb --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots/rest.rb @@ -0,0 +1,51 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/rest" +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/region_snapshots/credentials" +require "google/cloud/compute/v1/region_snapshots/rest/client" + +module Google + module Cloud + module Compute + module V1 + ## + # The RegionSnapshots API. + # + # To load this service and instantiate a REST client: + # + # require "google/cloud/compute/v1/region_snapshots/rest" + # client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new + # + module RegionSnapshots + # Client for the REST transport + module Rest + end + end + end + end + end +end + +helper_path = ::File.join __dir__, "rest", "helpers.rb" +require "google/cloud/compute/v1/region_snapshots/rest/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots/rest/client.rb new file mode 100644 index 000000000000..8443e7a3c7e5 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots/rest/client.rb @@ -0,0 +1,1388 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/errors" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/region_snapshots/rest/service_stub" +require "google/cloud/compute/v1/region_operations/rest" + +module Google + module Cloud + module Compute + module V1 + module RegionSnapshots + module Rest + ## + # REST client for the RegionSnapshots service. + # + # The RegionSnapshots API. + # + class Client + # @private + API_VERSION = "" + + # @private + DEFAULT_ENDPOINT_TEMPLATE = "compute.$UNIVERSE_DOMAIN$" + + # @private + attr_reader :region_snapshots_stub + + ## + # Configure the RegionSnapshots Client class. + # + # See {::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @example + # + # # Modify the configuration for all RegionSnapshots clients + # ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.configure do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def self.configure + @configure ||= begin + namespace = ["Google", "Cloud", "Compute", "V1"] + parent_config = while namespace.any? + parent_name = namespace.join "::" + parent_const = const_get parent_name + break parent_const.configure if parent_const.respond_to? :configure + namespace.pop + end + default_config = Client::Configuration.new parent_config + + default_config.rpcs.delete.timeout = 600.0 + + default_config.rpcs.get.timeout = 600.0 + default_config.rpcs.get.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.get_iam_policy.timeout = 600.0 + default_config.rpcs.get_iam_policy.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.insert.timeout = 600.0 + + default_config.rpcs.list.timeout = 600.0 + default_config.rpcs.list.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.set_iam_policy.timeout = 600.0 + + default_config.rpcs.set_labels.timeout = 600.0 + + default_config.rpcs.test_iam_permissions.timeout = 600.0 + + default_config.rpcs.update_kms_key.timeout = 600.0 + + default_config + end + yield @configure if block_given? + @configure + end + + ## + # Configure the RegionSnapshots Client instance. + # + # The configuration is set to the derived mode, meaning that values can be changed, + # but structural changes (adding new fields, etc.) are not allowed. Structural changes + # should be made on {Client.configure}. + # + # See {::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def configure + yield @config if block_given? + @config + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @region_snapshots_stub.universe_domain + end + + ## + # Create a new RegionSnapshots REST client object. + # + # @example + # + # # Create a client using the default configuration + # client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new + # + # # Create a client using a custom configuration + # client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the RegionSnapshots client. + # @yieldparam config [Client::Configuration] + # + def initialize + # Create the configuration object + @config = Configuration.new Client.configure + + # Yield the configuration if needed + yield @config if block_given? + + # Create credentials + credentials = @config.credentials + # Use self-signed JWT if the endpoint is unchanged from default, + # but only if the default endpoint does not have a region prefix. + enable_self_signed_jwt = @config.endpoint.nil? || + (@config.endpoint == Configuration::DEFAULT_ENDPOINT && + !@config.endpoint.split(".").first.include?("-")) + credentials ||= Credentials.default scope: @config.scope, + enable_self_signed_jwt: enable_self_signed_jwt + if credentials.is_a?(::String) || credentials.is_a?(::Hash) + credentials = Credentials.new credentials, scope: @config.scope + end + + @quota_project_id = @config.quota_project + @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id + + @region_operations = ::Google::Cloud::Compute::V1::RegionOperations::Rest::Client.new do |config| + config.credentials = credentials + config.quota_project = @quota_project_id + config.endpoint = @config.endpoint + config.universe_domain = @config.universe_domain + end + + @region_snapshots_stub = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::ServiceStub.new( + endpoint: @config.endpoint, + endpoint_template: DEFAULT_ENDPOINT_TEMPLATE, + universe_domain: @config.universe_domain, + credentials: credentials, + logger: @config.logger + ) + + @region_snapshots_stub.logger(stub: true)&.info do |entry| + entry.set_system_name + entry.set_service + entry.message = "Created client for #{entry.service}" + entry.set_credentials_fields credentials + entry.set "customEndpoint", @config.endpoint if @config.endpoint + entry.set "defaultTimeout", @config.timeout if @config.timeout + entry.set "quotaProject", @quota_project_id if @quota_project_id + end + end + + ## + # Get the associated client for long-running operations via RegionOperations. + # + # @return [::Google::Cloud::Compute::V1::RegionOperations::Rest::Client] + # + attr_reader :region_operations + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger + @region_snapshots_stub.logger + end + + # Service calls + + ## + # Deletes the specified Snapshot resource. Keep in mind that deleting + # a single snapshot might not necessarily delete all the data on that + # snapshot. If any data on the snapshot that is marked for deletion is + # needed for subsequent snapshots, the data will be moved to the next + # corresponding snapshot. + # + # For more information, seeDeleting + # snapshots. + # + # @overload delete(request, options = nil) + # Pass arguments to `delete` via a request object, either of type + # {::Google::Cloud::Compute::V1::DeleteRegionSnapshotRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::DeleteRegionSnapshotRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload delete(project: nil, region: nil, request_id: nil, snapshot: nil) + # Pass arguments to `delete` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param snapshot [::String] + # Name of the snapshot resource to delete. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::DeleteRegionSnapshotRequest.new + # + # # Call the delete method. + # result = client.delete request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def delete request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::DeleteRegionSnapshotRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.delete.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.delete.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.delete.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_snapshots_stub.delete request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Returns the specified Snapshot resource. + # + # @overload get(request, options = nil) + # Pass arguments to `get` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetRegionSnapshotRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetRegionSnapshotRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get(project: nil, region: nil, snapshot: nil) + # Pass arguments to `get` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region for this request. + # @param snapshot [::String] + # Name of the Snapshot resource to return. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Snapshot] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Snapshot] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetRegionSnapshotRequest.new + # + # # Call the get method. + # result = client.get request + # + # # The returned object is of type Google::Cloud::Compute::V1::Snapshot. + # p result + # + def get request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetRegionSnapshotRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_snapshots_stub.get request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Gets the access control policy for a resource. May be empty if no such + # policy or resource exists. + # + # @overload get_iam_policy(request, options = nil) + # Pass arguments to `get_iam_policy` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetIamPolicyRegionSnapshotRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetIamPolicyRegionSnapshotRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get_iam_policy(options_requested_policy_version: nil, project: nil, region: nil, resource: nil) + # Pass arguments to `get_iam_policy` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param options_requested_policy_version [::Integer] + # Requested IAM Policy version. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param resource [::String] + # Name or id of the resource for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetIamPolicyRegionSnapshotRequest.new + # + # # Call the get_iam_policy method. + # result = client.get_iam_policy request + # + # # The returned object is of type Google::Cloud::Compute::V1::Policy. + # p result + # + def get_iam_policy request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetIamPolicyRegionSnapshotRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get_iam_policy.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get_iam_policy.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get_iam_policy.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_snapshots_stub.get_iam_policy request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Creates a snapshot in the specified region using the data included + # in the request. + # + # @overload insert(request, options = nil) + # Pass arguments to `insert` via a request object, either of type + # {::Google::Cloud::Compute::V1::InsertRegionSnapshotRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::InsertRegionSnapshotRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload insert(project: nil, region: nil, request_id: nil, snapshot_resource: nil) + # Pass arguments to `insert` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region for this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param snapshot_resource [::Google::Cloud::Compute::V1::Snapshot, ::Hash] + # The body resource for this request + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::InsertRegionSnapshotRequest.new + # + # # Call the insert method. + # result = client.insert request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def insert request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::InsertRegionSnapshotRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.insert.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.insert.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.insert.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_snapshots_stub.insert request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Retrieves the list of Snapshot resources contained within + # the specified region. + # + # @overload list(request, options = nil) + # Pass arguments to `list` via a request object, either of type + # {::Google::Cloud::Compute::V1::ListRegionSnapshotsRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::ListRegionSnapshotsRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload list(filter: nil, max_results: nil, order_by: nil, page_token: nil, project: nil, region: nil, return_partial_success: nil) + # Pass arguments to `list` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param filter [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @param max_results [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @param order_by [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @param page_token [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region for this request. + # @param return_partial_success [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::Snapshot>] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::Snapshot>] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::ListRegionSnapshotsRequest.new + # + # # Call the list method. + # result = client.list request + # + # # The returned object is of type Google::Cloud::Compute::V1::SnapshotList. + # p result + # + def list request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::ListRegionSnapshotsRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.list.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.list.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.list.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_snapshots_stub.list request, options do |result, operation| + result = ::Gapic::Rest::PagedEnumerable.new @region_snapshots_stub, :list, "items", request, result, options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Sets the access control policy on the specified resource. + # Replaces any existing policy. + # + # @overload set_iam_policy(request, options = nil) + # Pass arguments to `set_iam_policy` via a request object, either of type + # {::Google::Cloud::Compute::V1::SetIamPolicyRegionSnapshotRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::SetIamPolicyRegionSnapshotRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload set_iam_policy(project: nil, region: nil, region_set_policy_request_resource: nil, resource: nil) + # Pass arguments to `set_iam_policy` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param region_set_policy_request_resource [::Google::Cloud::Compute::V1::RegionSetPolicyRequest, ::Hash] + # The body resource for this request + # @param resource [::String] + # Name or id of the resource for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::SetIamPolicyRegionSnapshotRequest.new + # + # # Call the set_iam_policy method. + # result = client.set_iam_policy request + # + # # The returned object is of type Google::Cloud::Compute::V1::Policy. + # p result + # + def set_iam_policy request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::SetIamPolicyRegionSnapshotRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.set_iam_policy.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.set_iam_policy.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.set_iam_policy.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_snapshots_stub.set_iam_policy request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Sets the labels on a regional snapshot. To learn more about labels, read + # the Labeling Resources + # documentation. + # + # @overload set_labels(request, options = nil) + # Pass arguments to `set_labels` via a request object, either of type + # {::Google::Cloud::Compute::V1::SetLabelsRegionSnapshotRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::SetLabelsRegionSnapshotRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload set_labels(project: nil, region: nil, region_set_labels_request_resource: nil, request_id: nil, resource: nil) + # Pass arguments to `set_labels` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The region for this request. + # @param region_set_labels_request_resource [::Google::Cloud::Compute::V1::RegionSetLabelsRequest, ::Hash] + # The body resource for this request + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param resource [::String] + # Name or id of the resource for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::SetLabelsRegionSnapshotRequest.new + # + # # Call the set_labels method. + # result = client.set_labels request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def set_labels request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::SetLabelsRegionSnapshotRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.set_labels.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.set_labels.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.set_labels.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_snapshots_stub.set_labels request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Returns permissions that a caller has on the specified resource. + # + # @overload test_iam_permissions(request, options = nil) + # Pass arguments to `test_iam_permissions` via a request object, either of type + # {::Google::Cloud::Compute::V1::TestIamPermissionsRegionSnapshotRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::TestIamPermissionsRegionSnapshotRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload test_iam_permissions(project: nil, region: nil, resource: nil, test_permissions_request_resource: nil) + # Pass arguments to `test_iam_permissions` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # The name of the region for this request. + # @param resource [::String] + # Name or id of the resource for this request. + # @param test_permissions_request_resource [::Google::Cloud::Compute::V1::TestPermissionsRequest, ::Hash] + # The body resource for this request + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::TestIamPermissionsRegionSnapshotRequest.new + # + # # Call the test_iam_permissions method. + # result = client.test_iam_permissions request + # + # # The returned object is of type Google::Cloud::Compute::V1::TestPermissionsResponse. + # p result + # + def test_iam_permissions request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::TestIamPermissionsRegionSnapshotRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.test_iam_permissions.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.test_iam_permissions.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.test_iam_permissions.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_snapshots_stub.test_iam_permissions request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Rotates the customer-managed + # encryption key to the latest version for the specified snapshot. + # + # @overload update_kms_key(request, options = nil) + # Pass arguments to `update_kms_key` via a request object, either of type + # {::Google::Cloud::Compute::V1::UpdateKmsKeyRegionSnapshotRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::UpdateKmsKeyRegionSnapshotRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload update_kms_key(project: nil, region: nil, region_snapshot_update_kms_key_request_resource: nil, request_id: nil, snapshot: nil) + # Pass arguments to `update_kms_key` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param region [::String] + # Name of the region for this request. + # @param region_snapshot_update_kms_key_request_resource [::Google::Cloud::Compute::V1::RegionSnapshotUpdateKmsKeyRequest, ::Hash] + # The body resource for this request + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param snapshot [::String] + # Name of the snapshot resource to update. Should conform to RFC1035. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::UpdateKmsKeyRegionSnapshotRequest.new + # + # # Call the update_kms_key method. + # result = client.update_kms_key request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def update_kms_key request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::UpdateKmsKeyRegionSnapshotRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.update_kms_key.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.update_kms_key.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.update_kms_key.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @region_snapshots_stub.update_kms_key request, options do |result, response| + result = ::Google::Cloud::Compute::V1::RegionOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: region_operations, + request_values: { + "project" => request.project, + "region" => request.region + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Configuration class for the RegionSnapshots REST API. + # + # This class represents the configuration for RegionSnapshots REST, + # providing control over timeouts, retry behavior, logging, transport + # parameters, and other low-level controls. Certain parameters can also be + # applied individually to specific RPCs. See + # {::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client::Configuration::Rpcs} + # for a list of RPCs that can be configured independently. + # + # Configuration can be applied globally to all clients, or to a single client + # on construction. + # + # @example + # + # # Modify the global config, setting the timeout for + # # delete to 20 seconds, + # # and all remaining timeouts to 10 seconds. + # ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.configure do |config| + # config.timeout = 10.0 + # config.rpcs.delete.timeout = 20.0 + # end + # + # # Apply the above configuration only to a new client. + # client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new do |config| + # config.timeout = 10.0 + # config.rpcs.delete.timeout = 20.0 + # end + # + # @!attribute [rw] endpoint + # A custom service endpoint, as a hostname or hostname:port. The default is + # nil, indicating to use the default endpoint in the current universe domain. + # @return [::String,nil] + # @!attribute [rw] credentials + # Credentials to send with calls. You may provide any of the following types: + # * (`String`) The path to a service account key file in JSON format + # * (`Hash`) A service account key as a Hash + # * (`Google::Auth::Credentials`) A googleauth credentials object + # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials)) + # * (`Signet::OAuth2::Client`) A signet oauth2 client object + # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client)) + # * (`nil`) indicating no credentials + # + # Warning: If you accept a credential configuration (JSON file or Hash) from an + # external source for authentication to Google Cloud, you must validate it before + # providing it to a Google API client library. Providing an unvalidated credential + # configuration to Google APIs can compromise the security of your systems and data. + # For more information, refer to [Validate credential configurations from external + # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials). + # @return [::Object] + # @!attribute [rw] scope + # The OAuth scopes + # @return [::Array<::String>] + # @!attribute [rw] lib_name + # The library name as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] lib_version + # The library version as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] timeout + # The call timeout in seconds. + # @return [::Numeric] + # @!attribute [rw] metadata + # Additional headers to be sent with the call. + # @return [::Hash{::Symbol=>::String}] + # @!attribute [rw] retry_policy + # The retry policy. The value is a hash with the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # @return [::Hash] + # @!attribute [rw] quota_project + # A separate project against which to charge quota. + # @return [::String] + # @!attribute [rw] universe_domain + # The universe domain within which to make requests. This determines the + # default endpoint URL. The default value of nil uses the environment + # universe (usually the default "googleapis.com" universe). + # @return [::String,nil] + # @!attribute [rw] logger + # A custom logger to use for request/response debug logging, or the value + # `:default` (the default) to construct a default logger, or `nil` to + # explicitly disable logging. + # @return [::Logger,:default,nil] + # + class Configuration + extend ::Gapic::Config + + # @private + # The endpoint specific to the default "googleapis.com" universe. Deprecated. + DEFAULT_ENDPOINT = "compute.googleapis.com" + + config_attr :endpoint, nil, ::String, nil + config_attr :credentials, nil do |value| + allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Google::Auth::BaseClient, ::Signet::OAuth2::Client, nil] + allowed.any? { |klass| klass === value } + end + config_attr :scope, nil, ::String, ::Array, nil + config_attr :lib_name, nil, ::String, nil + config_attr :lib_version, nil, ::String, nil + config_attr :timeout, nil, ::Numeric, nil + config_attr :metadata, nil, ::Hash, nil + config_attr :retry_policy, nil, ::Hash, ::Proc, nil + config_attr :quota_project, nil, ::String, nil + config_attr :universe_domain, nil, ::String, nil + config_attr :logger, :default, ::Logger, nil, :default + + # @private + def initialize parent_config = nil + @parent_config = parent_config unless parent_config.nil? + + yield self if block_given? + end + + ## + # Configurations for individual RPCs + # @return [Rpcs] + # + def rpcs + @rpcs ||= begin + parent_rpcs = nil + parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs) + Rpcs.new parent_rpcs + end + end + + ## + # Configuration RPC class for the RegionSnapshots API. + # + # Includes fields providing the configuration for each RPC in this service. + # Each configuration object is of type `Gapic::Config::Method` and includes + # the following configuration fields: + # + # * `timeout` (*type:* `Numeric`) - The call timeout in seconds + # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional headers + # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields + # include the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # + class Rpcs + ## + # RPC-specific configuration for `delete` + # @return [::Gapic::Config::Method] + # + attr_reader :delete + ## + # RPC-specific configuration for `get` + # @return [::Gapic::Config::Method] + # + attr_reader :get + ## + # RPC-specific configuration for `get_iam_policy` + # @return [::Gapic::Config::Method] + # + attr_reader :get_iam_policy + ## + # RPC-specific configuration for `insert` + # @return [::Gapic::Config::Method] + # + attr_reader :insert + ## + # RPC-specific configuration for `list` + # @return [::Gapic::Config::Method] + # + attr_reader :list + ## + # RPC-specific configuration for `set_iam_policy` + # @return [::Gapic::Config::Method] + # + attr_reader :set_iam_policy + ## + # RPC-specific configuration for `set_labels` + # @return [::Gapic::Config::Method] + # + attr_reader :set_labels + ## + # RPC-specific configuration for `test_iam_permissions` + # @return [::Gapic::Config::Method] + # + attr_reader :test_iam_permissions + ## + # RPC-specific configuration for `update_kms_key` + # @return [::Gapic::Config::Method] + # + attr_reader :update_kms_key + + # @private + def initialize parent_rpcs = nil + delete_config = parent_rpcs.delete if parent_rpcs.respond_to? :delete + @delete = ::Gapic::Config::Method.new delete_config + get_config = parent_rpcs.get if parent_rpcs.respond_to? :get + @get = ::Gapic::Config::Method.new get_config + get_iam_policy_config = parent_rpcs.get_iam_policy if parent_rpcs.respond_to? :get_iam_policy + @get_iam_policy = ::Gapic::Config::Method.new get_iam_policy_config + insert_config = parent_rpcs.insert if parent_rpcs.respond_to? :insert + @insert = ::Gapic::Config::Method.new insert_config + list_config = parent_rpcs.list if parent_rpcs.respond_to? :list + @list = ::Gapic::Config::Method.new list_config + set_iam_policy_config = parent_rpcs.set_iam_policy if parent_rpcs.respond_to? :set_iam_policy + @set_iam_policy = ::Gapic::Config::Method.new set_iam_policy_config + set_labels_config = parent_rpcs.set_labels if parent_rpcs.respond_to? :set_labels + @set_labels = ::Gapic::Config::Method.new set_labels_config + test_iam_permissions_config = parent_rpcs.test_iam_permissions if parent_rpcs.respond_to? :test_iam_permissions + @test_iam_permissions = ::Gapic::Config::Method.new test_iam_permissions_config + update_kms_key_config = parent_rpcs.update_kms_key if parent_rpcs.respond_to? :update_kms_key + @update_kms_key = ::Gapic::Config::Method.new update_kms_key_config + + yield self if block_given? + end + end + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots/rest/service_stub.rb new file mode 100644 index 000000000000..a9e7a75e1e1b --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/region_snapshots/rest/service_stub.rb @@ -0,0 +1,651 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/compute/v1/compute_pb" + +module Google + module Cloud + module Compute + module V1 + module RegionSnapshots + module Rest + ## + # REST service stub for the RegionSnapshots service. + # Service stub contains baseline method implementations + # including transcoding, making the REST call, and deserialing the response. + # + class ServiceStub + # @private + def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger: + # These require statements are intentionally placed here to initialize + # the REST modules only when it's required. + require "gapic/rest" + + @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, + endpoint_template: endpoint_template, + universe_domain: universe_domain, + credentials: credentials, + numeric_enums: false, + service_name: self.class, + raise_faraday_errors: false, + logger: logger + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @client_stub.universe_domain + end + + ## + # The effective endpoint + # + # @return [String] + # + def endpoint + @client_stub.endpoint + end + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger stub: false + stub ? @client_stub.stub_logger : @client_stub.logger + end + + ## + # Baseline implementation for the delete REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::DeleteRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def delete request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_delete_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "delete", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Snapshot] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Snapshot] + # A result object deserialized from the server's reply + def get request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Snapshot.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the get_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetIamPolicyRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # A result object deserialized from the server's reply + def get_iam_policy request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_iam_policy_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get_iam_policy", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Policy.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the insert REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::InsertRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def insert request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_insert_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "insert", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListRegionSnapshotsRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::SnapshotList] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::SnapshotList] + # A result object deserialized from the server's reply + def list request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_list_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "list", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::SnapshotList.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the set_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::SetIamPolicyRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Policy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Policy] + # A result object deserialized from the server's reply + def set_iam_policy request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_set_iam_policy_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "set_iam_policy", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Policy.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the set_labels REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::SetLabelsRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def set_labels request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_set_labels_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "set_labels", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the test_iam_permissions REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::TestIamPermissionsRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::TestPermissionsResponse] + # A result object deserialized from the server's reply + def test_iam_permissions request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_test_iam_permissions_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "test_iam_permissions", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::TestPermissionsResponse.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the update_kms_key REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::UpdateKmsKeyRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def update_kms_key request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_update_kms_key_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "update_kms_key", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # @private + # + # GRPC transcoding helper method for the delete REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::DeleteRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_delete_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :delete, + uri_template: "/compute/v1/projects/{project}/regions/{region}/snapshots/{snapshot}", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["snapshot", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/snapshots/{snapshot}", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["snapshot", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the get_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetIamPolicyRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_iam_policy_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/snapshots/{resource}/getIamPolicy", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the insert REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::InsertRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_insert_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/snapshots", + body: "snapshot_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListRegionSnapshotsRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_list_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/regions/{region}/snapshots", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the set_iam_policy REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::SetIamPolicyRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_set_iam_policy_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/snapshots/{resource}/setIamPolicy", + body: "region_set_policy_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the set_labels REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::SetLabelsRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_set_labels_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/snapshots/{resource}/setLabels", + body: "region_set_labels_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the test_iam_permissions REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::TestIamPermissionsRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_test_iam_permissions_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/snapshots/{resource}/testIamPermissions", + body: "test_permissions_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["resource", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the update_kms_key REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::UpdateKmsKeyRegionSnapshotRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_update_kms_key_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/regions/{region}/snapshots/{snapshot}/updateKmsKey", + body: "region_snapshot_update_kms_key_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["region", %r{^[^/]+/?$}, false], + ["snapshot", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/rest.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/rest.rb index 4e7c71670267..0696bd7e6806 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/rest.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/rest.rb @@ -45,6 +45,7 @@ require "google/cloud/compute/v1/instance_settings_service/rest" require "google/cloud/compute/v1/instance_templates/rest" require "google/cloud/compute/v1/instances/rest" +require "google/cloud/compute/v1/instant_snapshot_groups/rest" require "google/cloud/compute/v1/instant_snapshots/rest" require "google/cloud/compute/v1/interconnect_attachment_groups/rest" require "google/cloud/compute/v1/interconnect_attachments/rest" @@ -72,6 +73,7 @@ require "google/cloud/compute/v1/public_advertised_prefixes/rest" require "google/cloud/compute/v1/public_delegated_prefixes/rest" require "google/cloud/compute/v1/region_autoscalers/rest" +require "google/cloud/compute/v1/region_backend_buckets/rest" require "google/cloud/compute/v1/region_backend_services/rest" require "google/cloud/compute/v1/region_commitments/rest" require "google/cloud/compute/v1/region_composite_health_checks/rest" @@ -81,16 +83,20 @@ require "google/cloud/compute/v1/region_health_check_services/rest" require "google/cloud/compute/v1/region_health_checks/rest" require "google/cloud/compute/v1/region_health_sources/rest" +require "google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest" require "google/cloud/compute/v1/region_instance_group_managers/rest" require "google/cloud/compute/v1/region_instance_groups/rest" require "google/cloud/compute/v1/region_instance_templates/rest" require "google/cloud/compute/v1/region_instances/rest" +require "google/cloud/compute/v1/region_instant_snapshot_groups/rest" require "google/cloud/compute/v1/region_instant_snapshots/rest" require "google/cloud/compute/v1/region_network_endpoint_groups/rest" require "google/cloud/compute/v1/region_network_firewall_policies/rest" require "google/cloud/compute/v1/region_notification_endpoints/rest" require "google/cloud/compute/v1/region_operations/rest" require "google/cloud/compute/v1/region_security_policies/rest" +require "google/cloud/compute/v1/region_snapshot_settings/rest" +require "google/cloud/compute/v1/region_snapshots/rest" require "google/cloud/compute/v1/region_ssl_certificates/rest" require "google/cloud/compute/v1/region_ssl_policies/rest" require "google/cloud/compute/v1/region_target_http_proxies/rest" @@ -128,6 +134,7 @@ require "google/cloud/compute/v1/vpn_tunnels/rest" require "google/cloud/compute/v1/wire_groups/rest" require "google/cloud/compute/v1/zone_operations/rest" +require "google/cloud/compute/v1/zone_vm_extension_policies/rest" require "google/cloud/compute/v1/zones/rest" require "google/cloud/compute/v1/version" diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/snapshots/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/snapshots/rest/client.rb index 0c26f28bd67c..6d720515c5d8 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/snapshots/rest/client.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/snapshots/rest/client.rb @@ -96,6 +96,8 @@ def self.configure default_config.rpcs.test_iam_permissions.timeout = 600.0 + default_config.rpcs.update_kms_key.timeout = 600.0 + default_config end yield @configure if block_given? @@ -1020,6 +1022,112 @@ def test_iam_permissions request, options = nil raise ::Google::Cloud::Error.from_error(e) end + ## + # Rotates the customer-managed + # encryption key to the latest version for the specified snapshot. + # + # @overload update_kms_key(request, options = nil) + # Pass arguments to `update_kms_key` via a request object, either of type + # {::Google::Cloud::Compute::V1::UpdateKmsKeySnapshotRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::UpdateKmsKeySnapshotRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload update_kms_key(project: nil, request_id: nil, snapshot: nil, snapshot_update_kms_key_request_resource: nil) + # Pass arguments to `update_kms_key` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param snapshot [::String] + # Name of the snapshot resource to update. Should conform to RFC1035. + # @param snapshot_update_kms_key_request_resource [::Google::Cloud::Compute::V1::SnapshotUpdateKmsKeyRequest, ::Hash] + # The body resource for this request + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::Snapshots::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::UpdateKmsKeySnapshotRequest.new + # + # # Call the update_kms_key method. + # result = client.update_kms_key request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def update_kms_key request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::UpdateKmsKeySnapshotRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.update_kms_key.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.update_kms_key.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.update_kms_key.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @snapshots_stub.update_kms_key request, options do |result, response| + result = ::Google::Cloud::Compute::V1::GlobalOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: global_operations, + request_values: { + "project" => request.project + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + ## # Configuration class for the Snapshots REST API. # @@ -1206,6 +1314,11 @@ class Rpcs # @return [::Gapic::Config::Method] # attr_reader :test_iam_permissions + ## + # RPC-specific configuration for `update_kms_key` + # @return [::Gapic::Config::Method] + # + attr_reader :update_kms_key # @private def initialize parent_rpcs = nil @@ -1225,6 +1338,8 @@ def initialize parent_rpcs = nil @set_labels = ::Gapic::Config::Method.new set_labels_config test_iam_permissions_config = parent_rpcs.test_iam_permissions if parent_rpcs.respond_to? :test_iam_permissions @test_iam_permissions = ::Gapic::Config::Method.new test_iam_permissions_config + update_kms_key_config = parent_rpcs.update_kms_key if parent_rpcs.respond_to? :update_kms_key + @update_kms_key = ::Gapic::Config::Method.new update_kms_key_config yield self if block_given? end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/snapshots/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/snapshots/rest/service_stub.rb index 0ff7e6491122..6b0616995df0 100644 --- a/google-cloud-compute-v1/lib/google/cloud/compute/v1/snapshots/rest/service_stub.rb +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/snapshots/rest/service_stub.rb @@ -393,6 +393,46 @@ def test_iam_permissions request_pb, options = nil end end + ## + # Baseline implementation for the update_kms_key REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::UpdateKmsKeySnapshotRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def update_kms_key request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_update_kms_key_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "update_kms_key", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + ## # @private # @@ -570,6 +610,29 @@ def self.transcode_test_iam_permissions_request request_pb ) transcoder.transcode request_pb end + + ## + # @private + # + # GRPC transcoding helper method for the update_kms_key REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::UpdateKmsKeySnapshotRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_update_kms_key_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/global/snapshots/{snapshot}/updateKmsKey", + body: "snapshot_update_kms_key_request_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["snapshot", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end end end end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies.rb new file mode 100644 index 000000000000..c3b74fee1b5d --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies.rb @@ -0,0 +1,47 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/zone_vm_extension_policies/credentials" +require "google/cloud/compute/v1/zone_vm_extension_policies/rest" + +module Google + module Cloud + module Compute + module V1 + ## + # The ZoneVmExtensionPolicies API. + # + # @example Load this service and instantiate a REST client + # + # require "google/cloud/compute/v1/zone_vm_extension_policies/rest" + # client = ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new + # + module ZoneVmExtensionPolicies + end + end + end + end +end + +helper_path = ::File.join __dir__, "zone_vm_extension_policies", "helpers.rb" +require "google/cloud/compute/v1/zone_vm_extension_policies/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies/credentials.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies/credentials.rb new file mode 100644 index 000000000000..301cd15b83ba --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies/credentials.rb @@ -0,0 +1,52 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "googleauth" + +module Google + module Cloud + module Compute + module V1 + module ZoneVmExtensionPolicies + # Credentials for the ZoneVmExtensionPolicies API. + class Credentials < ::Google::Auth::Credentials + self.scope = [ + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/cloud-platform" + ] + self.env_vars = [ + "COMPUTE_CREDENTIALS", + "COMPUTE_KEYFILE", + "GOOGLE_CLOUD_CREDENTIALS", + "GOOGLE_CLOUD_KEYFILE", + "GCLOUD_KEYFILE", + "COMPUTE_CREDENTIALS_JSON", + "COMPUTE_KEYFILE_JSON", + "GOOGLE_CLOUD_CREDENTIALS_JSON", + "GOOGLE_CLOUD_KEYFILE_JSON", + "GCLOUD_KEYFILE_JSON" + ] + self.paths = [ + "~/.config/google_cloud/application_default_credentials.json" + ] + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies/rest.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies/rest.rb new file mode 100644 index 000000000000..a43198953981 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies/rest.rb @@ -0,0 +1,51 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "gapic/rest" +require "gapic/config" +require "gapic/config/method" + +require "google/cloud/compute/v1/version" + +require "google/cloud/compute/v1/zone_vm_extension_policies/credentials" +require "google/cloud/compute/v1/zone_vm_extension_policies/rest/client" + +module Google + module Cloud + module Compute + module V1 + ## + # The ZoneVmExtensionPolicies API. + # + # To load this service and instantiate a REST client: + # + # require "google/cloud/compute/v1/zone_vm_extension_policies/rest" + # client = ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new + # + module ZoneVmExtensionPolicies + # Client for the REST transport + module Rest + end + end + end + end + end +end + +helper_path = ::File.join __dir__, "rest", "helpers.rb" +require "google/cloud/compute/v1/zone_vm_extension_policies/rest/helpers" if ::File.file? helper_path diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies/rest/client.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies/rest/client.rb new file mode 100644 index 000000000000..3e52a0d8538c --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies/rest/client.rb @@ -0,0 +1,975 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/errors" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/zone_vm_extension_policies/rest/service_stub" +require "google/cloud/compute/v1/zone_operations/rest" + +module Google + module Cloud + module Compute + module V1 + module ZoneVmExtensionPolicies + module Rest + ## + # REST client for the ZoneVmExtensionPolicies service. + # + # The ZoneVmExtensionPolicies API. + # + class Client + # @private + API_VERSION = "" + + # @private + DEFAULT_ENDPOINT_TEMPLATE = "compute.$UNIVERSE_DOMAIN$" + + # @private + attr_reader :zone_vm_extension_policies_stub + + ## + # Configure the ZoneVmExtensionPolicies Client class. + # + # See {::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @example + # + # # Modify the configuration for all ZoneVmExtensionPolicies clients + # ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.configure do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def self.configure + @configure ||= begin + namespace = ["Google", "Cloud", "Compute", "V1"] + parent_config = while namespace.any? + parent_name = namespace.join "::" + parent_const = const_get parent_name + break parent_const.configure if parent_const.respond_to? :configure + namespace.pop + end + default_config = Client::Configuration.new parent_config + + default_config.rpcs.delete.timeout = 600.0 + + default_config.rpcs.get.timeout = 600.0 + default_config.rpcs.get.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.insert.timeout = 600.0 + + default_config.rpcs.list.timeout = 600.0 + default_config.rpcs.list.retry_policy = { + initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14] + } + + default_config.rpcs.update.timeout = 600.0 + + default_config + end + yield @configure if block_given? + @configure + end + + ## + # Configure the ZoneVmExtensionPolicies Client instance. + # + # The configuration is set to the derived mode, meaning that values can be changed, + # but structural changes (adding new fields, etc.) are not allowed. Structural changes + # should be made on {Client.configure}. + # + # See {::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client::Configuration} + # for a description of the configuration fields. + # + # @yield [config] Configure the Client client. + # @yieldparam config [Client::Configuration] + # + # @return [Client::Configuration] + # + def configure + yield @config if block_given? + @config + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @zone_vm_extension_policies_stub.universe_domain + end + + ## + # Create a new ZoneVmExtensionPolicies REST client object. + # + # @example + # + # # Create a client using the default configuration + # client = ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new + # + # # Create a client using a custom configuration + # client = ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new do |config| + # config.timeout = 10.0 + # end + # + # @yield [config] Configure the ZoneVmExtensionPolicies client. + # @yieldparam config [Client::Configuration] + # + def initialize + # Create the configuration object + @config = Configuration.new Client.configure + + # Yield the configuration if needed + yield @config if block_given? + + # Create credentials + credentials = @config.credentials + # Use self-signed JWT if the endpoint is unchanged from default, + # but only if the default endpoint does not have a region prefix. + enable_self_signed_jwt = @config.endpoint.nil? || + (@config.endpoint == Configuration::DEFAULT_ENDPOINT && + !@config.endpoint.split(".").first.include?("-")) + credentials ||= Credentials.default scope: @config.scope, + enable_self_signed_jwt: enable_self_signed_jwt + if credentials.is_a?(::String) || credentials.is_a?(::Hash) + credentials = Credentials.new credentials, scope: @config.scope + end + + @quota_project_id = @config.quota_project + @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id + + @zone_operations = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::Client.new do |config| + config.credentials = credentials + config.quota_project = @quota_project_id + config.endpoint = @config.endpoint + config.universe_domain = @config.universe_domain + end + + @zone_vm_extension_policies_stub = ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::ServiceStub.new( + endpoint: @config.endpoint, + endpoint_template: DEFAULT_ENDPOINT_TEMPLATE, + universe_domain: @config.universe_domain, + credentials: credentials, + logger: @config.logger + ) + + @zone_vm_extension_policies_stub.logger(stub: true)&.info do |entry| + entry.set_system_name + entry.set_service + entry.message = "Created client for #{entry.service}" + entry.set_credentials_fields credentials + entry.set "customEndpoint", @config.endpoint if @config.endpoint + entry.set "defaultTimeout", @config.timeout if @config.timeout + entry.set "quotaProject", @quota_project_id if @quota_project_id + end + end + + ## + # Get the associated client for long-running operations via ZoneOperations. + # + # @return [::Google::Cloud::Compute::V1::ZoneOperations::Rest::Client] + # + attr_reader :zone_operations + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger + @zone_vm_extension_policies_stub.logger + end + + # Service calls + + ## + # Deletes a specified zone VM extension policy. + # + # @overload delete(request, options = nil) + # Pass arguments to `delete` via a request object, either of type + # {::Google::Cloud::Compute::V1::DeleteZoneVmExtensionPolicyRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::DeleteZoneVmExtensionPolicyRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload delete(project: nil, request_id: nil, vm_extension_policy: nil, zone: nil) + # Pass arguments to `delete` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param vm_extension_policy [::String] + # Name of the zone VM extension policy to delete. + # @param zone [::String] + # Name of the zone for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::DeleteZoneVmExtensionPolicyRequest.new + # + # # Call the delete method. + # result = client.delete request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def delete request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::DeleteZoneVmExtensionPolicyRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.delete.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.delete.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.delete.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @zone_vm_extension_policies_stub.delete request, options do |result, response| + result = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: zone_operations, + request_values: { + "project" => request.project, + "zone" => request.zone + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Retrieves details of a specific zone VM extension policy. + # + # @overload get(request, options = nil) + # Pass arguments to `get` via a request object, either of type + # {::Google::Cloud::Compute::V1::GetZoneVmExtensionPolicyRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::GetZoneVmExtensionPolicyRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get(project: nil, vm_extension_policy: nil, zone: nil) + # Pass arguments to `get` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param vm_extension_policy [::String] + # Name of the VM extension policy resource to return. + # @param zone [::String] + # Name of the zone for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::VmExtensionPolicy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::VmExtensionPolicy] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::GetZoneVmExtensionPolicyRequest.new + # + # # Call the get method. + # result = client.get request + # + # # The returned object is of type Google::Cloud::Compute::V1::VmExtensionPolicy. + # p result + # + def get request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::GetZoneVmExtensionPolicyRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @zone_vm_extension_policies_stub.get request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Creates a new zone-level VM extension policy within a project. + # + # @overload insert(request, options = nil) + # Pass arguments to `insert` via a request object, either of type + # {::Google::Cloud::Compute::V1::InsertZoneVmExtensionPolicyRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::InsertZoneVmExtensionPolicyRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload insert(project: nil, request_id: nil, vm_extension_policy_resource: nil, zone: nil) + # Pass arguments to `insert` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param vm_extension_policy_resource [::Google::Cloud::Compute::V1::VmExtensionPolicy, ::Hash] + # The body resource for this request + # @param zone [::String] + # Name of the zone for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::InsertZoneVmExtensionPolicyRequest.new + # + # # Call the insert method. + # result = client.insert request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def insert request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::InsertZoneVmExtensionPolicyRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.insert.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.insert.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.insert.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @zone_vm_extension_policies_stub.insert request, options do |result, response| + result = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: zone_operations, + request_values: { + "project" => request.project, + "zone" => request.zone + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Lists all VM extension policies within a specific zone for a project. + # + # @overload list(request, options = nil) + # Pass arguments to `list` via a request object, either of type + # {::Google::Cloud::Compute::V1::ListZoneVmExtensionPoliciesRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::ListZoneVmExtensionPoliciesRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload list(filter: nil, max_results: nil, order_by: nil, page_token: nil, project: nil, return_partial_success: nil, zone: nil) + # Pass arguments to `list` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param filter [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @param max_results [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @param order_by [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @param page_token [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @param project [::String] + # Project ID for this request. + # @param return_partial_success [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @param zone [::String] + # Name of the zone for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::VmExtensionPolicy>] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::VmExtensionPolicy>] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::ListZoneVmExtensionPoliciesRequest.new + # + # # Call the list method. + # result = client.list request + # + # # The returned object is of type Google::Cloud::Compute::V1::VmExtensionPolicyList. + # p result + # + def list request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::ListZoneVmExtensionPoliciesRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.list.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.list.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.list.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @zone_vm_extension_policies_stub.list request, options do |result, operation| + result = ::Gapic::Rest::PagedEnumerable.new @zone_vm_extension_policies_stub, :list, "items", request, result, options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Modifies an existing zone VM extension policy. + # + # @overload update(request, options = nil) + # Pass arguments to `update` via a request object, either of type + # {::Google::Cloud::Compute::V1::UpdateZoneVmExtensionPolicyRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::Compute::V1::UpdateZoneVmExtensionPolicyRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload update(project: nil, request_id: nil, vm_extension_policy: nil, vm_extension_policy_resource: nil, zone: nil) + # Pass arguments to `update` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param project [::String] + # Project ID for this request. + # @param request_id [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @param vm_extension_policy [::String] + # Name of the zone VM extension policy to update. + # @param vm_extension_policy_resource [::Google::Cloud::Compute::V1::VmExtensionPolicy, ::Hash] + # The body resource for this request + # @param zone [::String] + # Name of the zone for this request. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::GenericLRO::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::GenericLRO::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/compute/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::Compute::V1::UpdateZoneVmExtensionPolicyRequest.new + # + # # Call the update method. + # result = client.update request + # + # # The returned object is of type Google::Cloud::Compute::V1::Operation. + # p result + # + def update request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Compute::V1::UpdateZoneVmExtensionPolicyRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.update.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::Compute::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.update.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.update.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @zone_vm_extension_policies_stub.update request, options do |result, response| + result = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::NonstandardLro.create_operation( + operation: result, + client: zone_operations, + request_values: { + "project" => request.project, + "zone" => request.zone + }, + options: options + ) + yield result, response if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Configuration class for the ZoneVmExtensionPolicies REST API. + # + # This class represents the configuration for ZoneVmExtensionPolicies REST, + # providing control over timeouts, retry behavior, logging, transport + # parameters, and other low-level controls. Certain parameters can also be + # applied individually to specific RPCs. See + # {::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client::Configuration::Rpcs} + # for a list of RPCs that can be configured independently. + # + # Configuration can be applied globally to all clients, or to a single client + # on construction. + # + # @example + # + # # Modify the global config, setting the timeout for + # # delete to 20 seconds, + # # and all remaining timeouts to 10 seconds. + # ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.configure do |config| + # config.timeout = 10.0 + # config.rpcs.delete.timeout = 20.0 + # end + # + # # Apply the above configuration only to a new client. + # client = ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new do |config| + # config.timeout = 10.0 + # config.rpcs.delete.timeout = 20.0 + # end + # + # @!attribute [rw] endpoint + # A custom service endpoint, as a hostname or hostname:port. The default is + # nil, indicating to use the default endpoint in the current universe domain. + # @return [::String,nil] + # @!attribute [rw] credentials + # Credentials to send with calls. You may provide any of the following types: + # * (`String`) The path to a service account key file in JSON format + # * (`Hash`) A service account key as a Hash + # * (`Google::Auth::Credentials`) A googleauth credentials object + # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials)) + # * (`Signet::OAuth2::Client`) A signet oauth2 client object + # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client)) + # * (`nil`) indicating no credentials + # + # Warning: If you accept a credential configuration (JSON file or Hash) from an + # external source for authentication to Google Cloud, you must validate it before + # providing it to a Google API client library. Providing an unvalidated credential + # configuration to Google APIs can compromise the security of your systems and data. + # For more information, refer to [Validate credential configurations from external + # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials). + # @return [::Object] + # @!attribute [rw] scope + # The OAuth scopes + # @return [::Array<::String>] + # @!attribute [rw] lib_name + # The library name as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] lib_version + # The library version as recorded in instrumentation and logging + # @return [::String] + # @!attribute [rw] timeout + # The call timeout in seconds. + # @return [::Numeric] + # @!attribute [rw] metadata + # Additional headers to be sent with the call. + # @return [::Hash{::Symbol=>::String}] + # @!attribute [rw] retry_policy + # The retry policy. The value is a hash with the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # @return [::Hash] + # @!attribute [rw] quota_project + # A separate project against which to charge quota. + # @return [::String] + # @!attribute [rw] universe_domain + # The universe domain within which to make requests. This determines the + # default endpoint URL. The default value of nil uses the environment + # universe (usually the default "googleapis.com" universe). + # @return [::String,nil] + # @!attribute [rw] logger + # A custom logger to use for request/response debug logging, or the value + # `:default` (the default) to construct a default logger, or `nil` to + # explicitly disable logging. + # @return [::Logger,:default,nil] + # + class Configuration + extend ::Gapic::Config + + # @private + # The endpoint specific to the default "googleapis.com" universe. Deprecated. + DEFAULT_ENDPOINT = "compute.googleapis.com" + + config_attr :endpoint, nil, ::String, nil + config_attr :credentials, nil do |value| + allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Google::Auth::BaseClient, ::Signet::OAuth2::Client, nil] + allowed.any? { |klass| klass === value } + end + config_attr :scope, nil, ::String, ::Array, nil + config_attr :lib_name, nil, ::String, nil + config_attr :lib_version, nil, ::String, nil + config_attr :timeout, nil, ::Numeric, nil + config_attr :metadata, nil, ::Hash, nil + config_attr :retry_policy, nil, ::Hash, ::Proc, nil + config_attr :quota_project, nil, ::String, nil + config_attr :universe_domain, nil, ::String, nil + config_attr :logger, :default, ::Logger, nil, :default + + # @private + def initialize parent_config = nil + @parent_config = parent_config unless parent_config.nil? + + yield self if block_given? + end + + ## + # Configurations for individual RPCs + # @return [Rpcs] + # + def rpcs + @rpcs ||= begin + parent_rpcs = nil + parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs) + Rpcs.new parent_rpcs + end + end + + ## + # Configuration RPC class for the ZoneVmExtensionPolicies API. + # + # Includes fields providing the configuration for each RPC in this service. + # Each configuration object is of type `Gapic::Config::Method` and includes + # the following configuration fields: + # + # * `timeout` (*type:* `Numeric`) - The call timeout in seconds + # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional headers + # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields + # include the following keys: + # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds. + # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds. + # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier. + # * `:retry_codes` (*type:* `Array`) - The error codes that should + # trigger a retry. + # + class Rpcs + ## + # RPC-specific configuration for `delete` + # @return [::Gapic::Config::Method] + # + attr_reader :delete + ## + # RPC-specific configuration for `get` + # @return [::Gapic::Config::Method] + # + attr_reader :get + ## + # RPC-specific configuration for `insert` + # @return [::Gapic::Config::Method] + # + attr_reader :insert + ## + # RPC-specific configuration for `list` + # @return [::Gapic::Config::Method] + # + attr_reader :list + ## + # RPC-specific configuration for `update` + # @return [::Gapic::Config::Method] + # + attr_reader :update + + # @private + def initialize parent_rpcs = nil + delete_config = parent_rpcs.delete if parent_rpcs.respond_to? :delete + @delete = ::Gapic::Config::Method.new delete_config + get_config = parent_rpcs.get if parent_rpcs.respond_to? :get + @get = ::Gapic::Config::Method.new get_config + insert_config = parent_rpcs.insert if parent_rpcs.respond_to? :insert + @insert = ::Gapic::Config::Method.new insert_config + list_config = parent_rpcs.list if parent_rpcs.respond_to? :list + @list = ::Gapic::Config::Method.new list_config + update_config = parent_rpcs.update if parent_rpcs.respond_to? :update + @update = ::Gapic::Config::Method.new update_config + + yield self if block_given? + end + end + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies/rest/service_stub.rb b/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies/rest/service_stub.rb new file mode 100644 index 000000000000..80809f288745 --- /dev/null +++ b/google-cloud-compute-v1/lib/google/cloud/compute/v1/zone_vm_extension_policies/rest/service_stub.rb @@ -0,0 +1,396 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "google/cloud/compute/v1/compute_pb" + +module Google + module Cloud + module Compute + module V1 + module ZoneVmExtensionPolicies + module Rest + ## + # REST service stub for the ZoneVmExtensionPolicies service. + # Service stub contains baseline method implementations + # including transcoding, making the REST call, and deserialing the response. + # + class ServiceStub + # @private + def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger: + # These require statements are intentionally placed here to initialize + # the REST modules only when it's required. + require "gapic/rest" + + @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, + endpoint_template: endpoint_template, + universe_domain: universe_domain, + credentials: credentials, + numeric_enums: false, + service_name: self.class, + raise_faraday_errors: false, + logger: logger + end + + ## + # The effective universe domain + # + # @return [String] + # + def universe_domain + @client_stub.universe_domain + end + + ## + # The effective endpoint + # + # @return [String] + # + def endpoint + @client_stub.endpoint + end + + ## + # The logger used for request/response debug logging. + # + # @return [Logger] + # + def logger stub: false + stub ? @client_stub.stub_logger : @client_stub.logger + end + + ## + # Baseline implementation for the delete REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::DeleteZoneVmExtensionPolicyRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def delete request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_delete_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "delete", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetZoneVmExtensionPolicyRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::VmExtensionPolicy] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::VmExtensionPolicy] + # A result object deserialized from the server's reply + def get request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::VmExtensionPolicy.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the insert REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::InsertZoneVmExtensionPolicyRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def insert request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_insert_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "insert", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListZoneVmExtensionPoliciesRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::VmExtensionPolicyList] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::VmExtensionPolicyList] + # A result object deserialized from the server's reply + def list request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_list_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "list", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::VmExtensionPolicyList.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the update REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::UpdateZoneVmExtensionPolicyRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::Compute::V1::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::Compute::V1::Operation] + # A result object deserialized from the server's reply + def update request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_update_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "update", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # @private + # + # GRPC transcoding helper method for the delete REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::DeleteZoneVmExtensionPolicyRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_delete_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :delete, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies/{vm_extension_policy}", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false], + ["vm_extension_policy", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetZoneVmExtensionPolicyRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies/{vm_extension_policy}", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false], + ["vm_extension_policy", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the insert REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::InsertZoneVmExtensionPolicyRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_insert_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies", + body: "vm_extension_policy_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the list REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::ListZoneVmExtensionPoliciesRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_list_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the update REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::UpdateZoneVmExtensionPolicyRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_update_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :patch, + uri_template: "/compute/v1/projects/{project}/zones/{zone}/vmExtensionPolicies/{vm_extension_policy}", + body: "vm_extension_policy_resource", + matches: [ + ["project", %r{^[^/]+/?$}, false], + ["zone", %r{^[^/]+/?$}, false], + ["vm_extension_policy", %r{^[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + end + end + end + end + end + end +end diff --git a/google-cloud-compute-v1/proto_docs/google/cloud/compute/v1/compute.rb b/google-cloud-compute-v1/proto_docs/google/cloud/compute/v1/compute.rb index 89f5027a4894..9d04f5e445ad 100644 --- a/google-cloud-compute-v1/proto_docs/google/cloud/compute/v1/compute.rb +++ b/google-cloud-compute-v1/proto_docs/google/cloud/compute/v1/compute.rb @@ -1975,7 +1975,7 @@ class AggregatedListAutoscalersRequest extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for BackendServices.AggregatedList. See the method description for details. + # A request message for BackendBuckets.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -2085,12 +2085,12 @@ class AggregatedListAutoscalersRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListBackendServicesRequest + class AggregatedListBackendBucketsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for DiskTypes.AggregatedList. See the method description for details. + # A request message for BackendServices.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -2187,7 +2187,7 @@ class AggregatedListBackendServicesRequest # the next page of results. # @!attribute [rw] project # @return [::String] - # Project ID for this request. + # Name of the project scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -2200,12 +2200,12 @@ class AggregatedListBackendServicesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListDiskTypesRequest + class AggregatedListBackendServicesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Disks.AggregatedList. See the method description for details. + # A request message for DiskTypes.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -2315,12 +2315,12 @@ class AggregatedListDiskTypesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListDisksRequest + class AggregatedListDiskTypesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for ForwardingRules.AggregatedList. See the method description for details. + # A request message for Disks.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -2430,12 +2430,12 @@ class AggregatedListDisksRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListForwardingRulesRequest + class AggregatedListDisksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for FutureReservations.AggregatedList. See the method description for details. + # A request message for ForwardingRules.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -2545,12 +2545,12 @@ class AggregatedListForwardingRulesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListFutureReservationsRequest + class AggregatedListForwardingRulesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for GlobalOperations.AggregatedList. See the method description for details. + # A request message for FutureReservations.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -2660,127 +2660,12 @@ class AggregatedListFutureReservationsRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListGlobalOperationsRequest - include ::Google::Protobuf::MessageExts - extend ::Google::Protobuf::MessageExts::ClassMethods - end - - # A request message for HealthChecks.AggregatedList. See the method description for details. - # @!attribute [rw] filter - # @return [::String] - # A filter expression that filters resources listed in the response. Most - # Compute resources support two types of filter expressions: - # expressions that support regular expressions and expressions that follow - # API improvement proposal AIP-160. - # These two types of filter expressions cannot be mixed in one request. - # - # If you want to use AIP-160, your expression must specify the field name, an - # operator, and the value that you want to use for filtering. The value - # must be a string, a number, or a boolean. The operator - # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. - # - # For example, if you are filtering Compute Engine instances, you can - # exclude instances named `example-instance` by specifying - # `name != example-instance`. - # - # The `:*` comparison can be used to test whether a key has been defined. - # For example, to find all objects with `owner` label use: - # ``` - # labels.owner:* - # ``` - # - # You can also filter nested fields. For example, you could specify - # `scheduling.automaticRestart = false` to include instances only - # if they are not scheduled for automatic restarts. You can use filtering - # on nested fields to filter based onresource labels. - # - # To filter on multiple expressions, provide each separate expression within - # parentheses. For example: - # ``` - # (scheduling.automaticRestart = true) - # (cpuPlatform = "Intel Skylake") - # ``` - # By default, each expression is an `AND` expression. However, you - # can include `AND` and `OR` expressions explicitly. - # For example: - # ``` - # (cpuPlatform = "Intel Skylake") OR - # (cpuPlatform = "Intel Broadwell") AND - # (scheduling.automaticRestart = true) - # ``` - # - # If you want to use a regular expression, use the `eq` (equal) or `ne` - # (not equal) operator against a single un-parenthesized expression with or - # without quotes or against multiple parenthesized expressions. Examples: - # - # `fieldname eq unquoted literal` - # `fieldname eq 'single quoted literal'` - # `fieldname eq "double quoted literal"` - # `(fieldname1 eq literal) (fieldname2 ne "literal")` - # - # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - # The literal value must match the entire field. - # - # For example, to filter for instances that do not end with name "instance", - # you would use `name ne .*instance`. - # - # You cannot combine constraints on multiple fields using regular - # expressions. - # @!attribute [rw] include_all_scopes - # @return [::Boolean] - # Indicates whether every visible scope for each scope type (zone, region, - # global) should be included in the response. For new resource types added - # after this field, the flag has no effect as new resource types will always - # include every visible scope for each scope type in response. For resource - # types which predate this field, if this flag is omitted or false, only - # scopes of the scope types where the resource type is expected to be found - # will be included. - # @!attribute [rw] max_results - # @return [::Integer] - # The maximum number of results per page that should be returned. - # If the number of available results is larger than `maxResults`, - # Compute Engine returns a `nextPageToken` that can be used to get - # the next page of results in subsequent list requests. Acceptable values are - # `0` to `500`, inclusive. (Default: `500`) - # @!attribute [rw] order_by - # @return [::String] - # Sorts list results by a certain order. By default, results - # are returned in alphanumerical order based on the resource name. - # - # You can also sort results in descending order based on the creation - # timestamp using `orderBy="creationTimestamp desc"`. This sorts - # results based on the `creationTimestamp` field in - # reverse chronological order (newest result first). Use this to sort - # resources like operations so that the newest operation is returned first. - # - # Currently, only sorting by `name` or - # `creationTimestamp desc` is supported. - # @!attribute [rw] page_token - # @return [::String] - # Specifies a page token to use. Set `pageToken` to the - # `nextPageToken` returned by a previous list request to get - # the next page of results. - # @!attribute [rw] project - # @return [::String] - # Name of the project scoping this request. - # @!attribute [rw] return_partial_success - # @return [::Boolean] - # Opt-in for partial success behavior which provides partial results in case - # of failure. The default value is false. - # - # For example, when partial success behavior is enabled, aggregatedList for a - # single zone scope either returns all resources in the zone or no resources, - # with an error code. - # @!attribute [rw] service_project_number - # @return [::Integer] - # The Shared VPC service project id or service project number for which - # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListHealthChecksRequest + class AggregatedListFutureReservationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InstanceGroupManagers.AggregatedList. See the method description for details. + # A request message for GlobalOperations.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -2890,12 +2775,12 @@ class AggregatedListHealthChecksRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListInstanceGroupManagersRequest + class AggregatedListGlobalOperationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InstanceGroups.AggregatedList. See the method description for details. + # A request message for HealthChecks.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -2992,7 +2877,7 @@ class AggregatedListInstanceGroupManagersRequest # the next page of results. # @!attribute [rw] project # @return [::String] - # Project ID for this request. + # Name of the project scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -3005,12 +2890,12 @@ class AggregatedListInstanceGroupManagersRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListInstanceGroupsRequest + class AggregatedListHealthChecksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InstanceTemplates.AggregatedList. See the method description for details. + # A request message for InstanceGroupManagers.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -3107,7 +2992,7 @@ class AggregatedListInstanceGroupsRequest # the next page of results. # @!attribute [rw] project # @return [::String] - # Name of the project scoping this request. + # Project ID for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -3120,12 +3005,12 @@ class AggregatedListInstanceGroupsRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListInstanceTemplatesRequest + class AggregatedListInstanceGroupManagersRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Instances.AggregatedList. See the method description for details. + # A request message for InstanceGroups.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -3235,12 +3120,12 @@ class AggregatedListInstanceTemplatesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListInstancesRequest + class AggregatedListInstanceGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InstantSnapshots.AggregatedList. See the method description for details. + # A request message for InstanceTemplates.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -3337,7 +3222,7 @@ class AggregatedListInstancesRequest # the next page of results. # @!attribute [rw] project # @return [::String] - # Project ID for this request. + # Name of the project scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -3350,12 +3235,12 @@ class AggregatedListInstancesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListInstantSnapshotsRequest + class AggregatedListInstanceTemplatesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InterconnectAttachments.AggregatedList. See the method description for details. + # A request message for Instances.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -3465,12 +3350,12 @@ class AggregatedListInstantSnapshotsRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListInterconnectAttachmentsRequest + class AggregatedListInstancesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for MachineTypes.AggregatedList. See the method description for details. + # A request message for InstantSnapshots.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -3580,12 +3465,12 @@ class AggregatedListInterconnectAttachmentsRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListMachineTypesRequest + class AggregatedListInstantSnapshotsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NetworkAttachments.AggregatedList. See the method description for details. + # A request message for InterconnectAttachments.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -3695,12 +3580,12 @@ class AggregatedListMachineTypesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListNetworkAttachmentsRequest + class AggregatedListInterconnectAttachmentsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NetworkEdgeSecurityServices.AggregatedList. See the method description for details. + # A request message for MachineTypes.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -3797,7 +3682,7 @@ class AggregatedListNetworkAttachmentsRequest # the next page of results. # @!attribute [rw] project # @return [::String] - # Name of the project scoping this request. + # Project ID for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -3810,12 +3695,12 @@ class AggregatedListNetworkAttachmentsRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListNetworkEdgeSecurityServicesRequest + class AggregatedListMachineTypesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NetworkEndpointGroups.AggregatedList. See the method description for details. + # A request message for NetworkAttachments.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -3925,12 +3810,12 @@ class AggregatedListNetworkEdgeSecurityServicesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListNetworkEndpointGroupsRequest + class AggregatedListNetworkAttachmentsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NetworkFirewallPolicies.AggregatedList. See the method description for details. + # A request message for NetworkEdgeSecurityServices.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -4027,7 +3912,7 @@ class AggregatedListNetworkEndpointGroupsRequest # the next page of results. # @!attribute [rw] project # @return [::String] - # Project ID for this request. + # Name of the project scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -4040,12 +3925,12 @@ class AggregatedListNetworkEndpointGroupsRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListNetworkFirewallPoliciesRequest + class AggregatedListNetworkEdgeSecurityServicesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NodeGroups.AggregatedList. See the method description for details. + # A request message for NetworkEndpointGroups.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -4155,12 +4040,12 @@ class AggregatedListNetworkFirewallPoliciesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListNodeGroupsRequest + class AggregatedListNetworkEndpointGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NodeTemplates.AggregatedList. See the method description for details. + # A request message for NetworkFirewallPolicies.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -4270,12 +4155,12 @@ class AggregatedListNodeGroupsRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListNodeTemplatesRequest + class AggregatedListNetworkFirewallPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NodeTypes.AggregatedList. See the method description for details. + # A request message for NodeGroups.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -4385,12 +4270,12 @@ class AggregatedListNodeTemplatesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListNodeTypesRequest + class AggregatedListNodeGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for PacketMirrorings.AggregatedList. See the method description for details. + # A request message for NodeTemplates.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -4500,12 +4385,12 @@ class AggregatedListNodeTypesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListPacketMirroringsRequest + class AggregatedListNodeTemplatesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for PublicDelegatedPrefixes.AggregatedList. See the method description for details. + # A request message for NodeTypes.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -4602,7 +4487,7 @@ class AggregatedListPacketMirroringsRequest # the next page of results. # @!attribute [rw] project # @return [::String] - # Name of the project scoping this request. + # Project ID for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -4615,12 +4500,12 @@ class AggregatedListPacketMirroringsRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListPublicDelegatedPrefixesRequest + class AggregatedListNodeTypesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionCommitments.AggregatedList. See the method description for details. + # A request message for PacketMirrorings.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -4730,12 +4615,12 @@ class AggregatedListPublicDelegatedPrefixesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListRegionCommitmentsRequest + class AggregatedListPacketMirroringsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionCompositeHealthChecks.AggregatedList. See the method description for details. + # A request message for PublicDelegatedPrefixes.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -4845,12 +4730,12 @@ class AggregatedListRegionCommitmentsRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListRegionCompositeHealthChecksRequest + class AggregatedListPublicDelegatedPrefixesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionHealthAggregationPolicies.AggregatedList. See the method description for details. + # A request message for RegionCommitments.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -4947,7 +4832,7 @@ class AggregatedListRegionCompositeHealthChecksRequest # the next page of results. # @!attribute [rw] project # @return [::String] - # Name of the project scoping this request. + # Project ID for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -4960,12 +4845,12 @@ class AggregatedListRegionCompositeHealthChecksRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListRegionHealthAggregationPoliciesRequest + class AggregatedListRegionCommitmentsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionHealthCheckServices.AggregatedList. See the method description for details. + # A request message for RegionCompositeHealthChecks.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -5075,12 +4960,12 @@ class AggregatedListRegionHealthAggregationPoliciesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListRegionHealthCheckServicesRequest + class AggregatedListRegionCompositeHealthChecksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionHealthSources.AggregatedList. See the method description for details. + # A request message for RegionHealthAggregationPolicies.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -5190,12 +5075,12 @@ class AggregatedListRegionHealthCheckServicesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListRegionHealthSourcesRequest + class AggregatedListRegionHealthAggregationPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionNotificationEndpoints.AggregatedList. See the method description for details. + # A request message for RegionHealthCheckServices.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -5305,12 +5190,12 @@ class AggregatedListRegionHealthSourcesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListRegionNotificationEndpointsRequest + class AggregatedListRegionHealthCheckServicesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Reservations.AggregatedList. See the method description for details. + # A request message for RegionHealthSources.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -5407,7 +5292,7 @@ class AggregatedListRegionNotificationEndpointsRequest # the next page of results. # @!attribute [rw] project # @return [::String] - # Project ID for this request. + # Name of the project scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -5420,12 +5305,12 @@ class AggregatedListRegionNotificationEndpointsRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListReservationsRequest + class AggregatedListRegionHealthSourcesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for ResourcePolicies.AggregatedList. See the method description for details. + # A request message for RegionNotificationEndpoints.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -5522,7 +5407,7 @@ class AggregatedListReservationsRequest # the next page of results. # @!attribute [rw] project # @return [::String] - # Project ID for this request. + # Name of the project scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -5535,12 +5420,12 @@ class AggregatedListReservationsRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListResourcePoliciesRequest + class AggregatedListRegionNotificationEndpointsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Routers.AggregatedList. See the method description for details. + # A request message for Reservations.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -5650,12 +5535,242 @@ class AggregatedListResourcePoliciesRequest # @return [::Integer] # The Shared VPC service project id or service project number for which # aggregated list request is invoked for subnetworks list-usable api. - class AggregatedListRoutersRequest + class AggregatedListReservationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for SecurityPolicies.AggregatedList. See the method description for details. + # A request message for ResourcePolicies.AggregatedList. See the method description for details. + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] include_all_scopes + # @return [::Boolean] + # Indicates whether every visible scope for each scope type (zone, region, + # global) should be included in the response. For new resource types added + # after this field, the flag has no effect as new resource types will always + # include every visible scope for each scope type in response. For resource + # types which predate this field, if this flag is omitted or false, only + # scopes of the scope types where the resource type is expected to be found + # will be included. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @!attribute [rw] service_project_number + # @return [::Integer] + # The Shared VPC service project id or service project number for which + # aggregated list request is invoked for subnetworks list-usable api. + class AggregatedListResourcePoliciesRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for Routers.AggregatedList. See the method description for details. + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] include_all_scopes + # @return [::Boolean] + # Indicates whether every visible scope for each scope type (zone, region, + # global) should be included in the response. For new resource types added + # after this field, the flag has no effect as new resource types will always + # include every visible scope for each scope type in response. For resource + # types which predate this field, if this flag is omitted or false, only + # scopes of the scope types where the resource type is expected to be found + # will be included. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @!attribute [rw] service_project_number + # @return [::Integer] + # The Shared VPC service project id or service project number for which + # aggregated list request is invoked for subnetworks list-usable api. + class AggregatedListRoutersRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for SecurityPolicies.AggregatedList. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -9437,6 +9552,20 @@ class AutoscalingPolicyScalingSchedule # balancing mode. # # Not available if the backend's balancingMode isRATE. + # @!attribute [rw] max_in_flight_requests + # @return [::Integer] + # Defines a maximum number of in-flight requests for the whole NEG or + # instance group. Not available if backend's balancingMode isRATE or CONNECTION. + # @!attribute [rw] max_in_flight_requests_per_endpoint + # @return [::Integer] + # Defines a maximum number of in-flight requests for a single endpoint. + # Not available if backend's balancingMode is RATE + # or CONNECTION. + # @!attribute [rw] max_in_flight_requests_per_instance + # @return [::Integer] + # Defines a maximum number of in-flight requests for a single VM. + # Not available if backend's balancingMode is RATE + # or CONNECTION. # @!attribute [rw] max_rate # @return [::Integer] # Defines a maximum number of HTTP requests per second (RPS). For @@ -9483,6 +9612,9 @@ class AutoscalingPolicyScalingSchedule # assigned based on the load balancing algorithm you use. This is the # default # Check the Preference enum for the list of possible values. + # @!attribute [rw] traffic_duration + # @return [::String] + # Check the TrafficDuration enum for the list of possible values. class Backend include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods @@ -9510,6 +9642,9 @@ module BalancingMode # Based on custom defined and reported metrics. CUSTOM_METRICS = 331_575_765 + # Balance based on the number of in-flight requests. + IN_FLIGHT = 190_040_266 + # Balance based on requests per second (RPS). RATE = 2_508_000 @@ -9540,6 +9675,21 @@ module Preference # Traffic will be sent to this backend first. PREFERRED = 418_847_841 end + + module TrafficDuration + # A value indicating that the enum field is not set. + UNDEFINED_TRAFFIC_DURATION = 0 + + # Most of the requests are expected to take more than multiple seconds to + # finish. + LONG = 2_342_524 + + # Most requests are expected to finish with a sub-second latency. + SHORT = 78_875_740 + + # Traffic duration is unspecified. + TRAFFIC_DURATION_UNSPECIFIED = 265_201_166 + end end # A message containing information about the resource or system that manages @@ -9613,6 +9763,12 @@ class BackendBackendOrchestrationInfo # @return [::Google::Cloud::Compute::V1::BackendBucketParams] # Input only. [Input Only] Additional params passed with the request, but not persisted # as part of resource payload. + # @!attribute [rw] region + # @return [::String] + # Output only. [Output Only] URL of the region where the regional backend bucket + # resides. This field is not applicable to global backend buckets. + # You must specify this field as part of the HTTP request URL. It is + # not settable as a field in the request body. # @!attribute [rw] self_link # @return [::String] # [Output Only] Server-defined URL for the resource. @@ -9648,11 +9804,51 @@ module LoadBalancingScheme # A value indicating that the enum field is not set. UNDEFINED_LOAD_BALANCING_SCHEME = 0 + # Signifies that this will be used for regional external Application Load + # Balancers. + EXTERNAL_MANAGED = 512_006_923 + # Signifies that this will be used for internal Application Load Balancers. INTERNAL_MANAGED = 37_350_397 end end + # @!attribute [rw] id + # @return [::String] + # [Output Only] Unique identifier for the resource; defined by the server. + # @!attribute [rw] items + # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Compute::V1::BackendBucketsScopedList}] + # A list of BackendBucketsScopedList resources. + # @!attribute [rw] kind + # @return [::String] + # Output only. Type of resource. + # @!attribute [rw] next_page_token + # @return [::String] + # [Output Only] This token allows you to get the next page of results for + # list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + # the query parameter pageToken in the next list request. + # Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # @!attribute [rw] self_link + # @return [::String] + # Output only. [Output Only] Server-defined URL for this resource. + # @!attribute [rw] warning + # @return [::Google::Cloud::Compute::V1::Warning] + # [Output Only] Informational warning message. + class BackendBucketAggregatedList + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # @!attribute [rw] key + # @return [::String] + # @!attribute [rw] value + # @return [::Google::Cloud::Compute::V1::BackendBucketsScopedList] + class ItemsEntry + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + end + # Message containing Cloud CDN configuration for a backend bucket. # @!attribute [rw] bypass_cache_on_request_headers # @return [::Array<::Google::Cloud::Compute::V1::BackendBucketCdnPolicyBypassCacheOnRequestHeader>] @@ -9897,6 +10093,34 @@ class BackendBucketList extend ::Google::Protobuf::MessageExts::ClassMethods end + # @!attribute [rw] id + # @return [::String] + # [Output Only] Unique identifier for the resource; defined by the server. + # @!attribute [rw] items + # @return [::Array<::Google::Cloud::Compute::V1::BackendBucket>] + # A list of BackendBucket resources. + # @!attribute [rw] kind + # @return [::String] + # Output only. [Output Only] Type of resource. Alwayscompute#usableBackendBucketList for lists of usable backend + # buckets. + # @!attribute [rw] next_page_token + # @return [::String] + # [Output Only] This token allows you to get the next page of results for + # list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + # the query parameter pageToken in the next list request. + # Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # @!attribute [rw] self_link + # @return [::String] + # Output only. [Output Only] Server-defined URL for this resource. + # @!attribute [rw] warning + # @return [::Google::Cloud::Compute::V1::Warning] + # [Output Only] Informational warning message. + class BackendBucketListUsable + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # Additional Backend Bucket parameters. # @!attribute [rw] resource_manager_tags # @return [::Google::Protobuf::Map{::String => ::String}] @@ -9935,6 +10159,18 @@ class BackendBucketUsedBy extend ::Google::Protobuf::MessageExts::ClassMethods end + # @!attribute [rw] backend_buckets + # @return [::Array<::Google::Cloud::Compute::V1::BackendBucket>] + # A list of BackendBuckets contained in this scope. + # @!attribute [rw] warning + # @return [::Google::Cloud::Compute::V1::Warning] + # Informational warning which replaces the list of + # backend services when the list is empty. + class BackendBucketsScopedList + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # Custom Metrics are used for CUSTOM_METRICS balancing_mode. # @!attribute [rw] dry_run # @return [::Boolean] @@ -10025,7 +10261,7 @@ class BackendCustomMetric # # This field is applicable to either: # - # - A regional backend service with the service_protocol set to HTTP, + # - A regional backend service with the service protocol set to HTTP, # HTTPS, HTTP2 or H2C, and load_balancing_scheme set to # INTERNAL_MANAGED. # - A global backend service with the @@ -10255,7 +10491,7 @@ class BackendCustomMetric # metrics to use for computing the weights are specified via thecustomMetrics field. # # This field is applicable to either: - # - A regional backend service with the service_protocol set to HTTP, + # - A regional backend service with the service protocol set to HTTP, # HTTPS, HTTP2 or H2C, and load_balancing_scheme set to # INTERNAL_MANAGED. # - A global backend service with the @@ -10361,7 +10597,7 @@ class BackendCustomMetric # - A global backend service with the loadBalancingScheme set to # INTERNAL_SELF_MANAGED or EXTERNAL_MANAGED. # - A regional backend - # service with the serviceProtocol set to HTTP, HTTPS, HTTP2 or H2C, and + # service with the service protocol set to HTTP, HTTPS, HTTP2 or H2C, and # loadBalancingScheme set to INTERNAL_MANAGED or EXTERNAL_MANAGED. Not # supported for Serverless NEGs. # @@ -10645,7 +10881,7 @@ module LoadBalancingScheme # metrics to use for computing the weights are specified via thecustomMetrics field. # # This field is applicable to either: - # - A regional backend service with the service_protocol set to HTTP, + # - A regional backend service with the service protocol set to HTTP, # HTTPS, HTTP2 or H2C, and load_balancing_scheme set to # INTERNAL_MANAGED. # - A global backend service with the @@ -12432,6 +12668,13 @@ class BulkInsertDiskRequest # A transient resource used in compute.disks.bulkInsert and # compute.regionDisks.bulkInsert. It is only used to process # requests and is not persisted. + # @!attribute [rw] instant_snapshot_group_parameters + # @return [::Google::Cloud::Compute::V1::InstantSnapshotGroupParameters] + # The parameters for the instant snapshot group. + # @!attribute [rw] snapshot_group_parameters + # @return [::Google::Cloud::Compute::V1::SnapshotGroupParameters] + # The parameters for the snapshot group. The usage of snapshot group feature + # is restricted. # @!attribute [rw] source_consistency_group_policy # @return [::String] # The URL of the DiskConsistencyGroupPolicy for the group of disks to clone. @@ -12807,6 +13050,225 @@ class CacheKeyPolicy extend ::Google::Protobuf::MessageExts::ClassMethods end + # Message containing CachePolicy configuration for URL Map's Route Action. + # @!attribute [rw] cache_bypass_request_header_names + # @return [::Array<::String>] + # Bypass the cache when the specified request headers are matched by name, + # e.g. Pragma or Authorization headers. Values are case-insensitive. Up to 5 + # header names can be specified. The cache is bypassed for all `cacheMode` + # values. + # @!attribute [rw] cache_key_policy + # @return [::Google::Cloud::Compute::V1::CachePolicyCacheKeyPolicy] + # The cache key configuration. If not specified, the default behavior depends + # on the backend type: for Backend Services, the complete request URI is + # used; for Backend Buckets, the request URI is used without the protocol or + # host, and only query parameters known to Cloud Storage are included. + # @!attribute [rw] cache_mode + # @return [::String] + # Specifies the cache setting for all responses from this route. If not + # specified, Cloud CDN uses `CACHE_ALL_STATIC` mode. + # Check the CacheMode enum for the list of possible values. + # @!attribute [rw] client_ttl + # @return [::Google::Cloud::Compute::V1::Duration] + # Specifies a separate client (e.g. browser client) maximum TTL for cached + # content. This is used to clamp the max-age (or Expires) value sent to the + # client. With `FORCE_CACHE_ALL`, the lesser of `clientTtl` and `defaultTtl` + # is used for the response max-age directive, along with a "public" + # directive. For cacheable content in `CACHE_ALL_STATIC` mode, `clientTtl` + # clamps the max-age from the origin (if specified), or else sets the + # response max-age directive to the lesser of the `clientTtl` and + # `defaultTtl`, and also ensures a "public" cache-control directive is + # present. The maximum allowed value is 31,622,400s (1 year). If not + # specified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` mode. + # Cannot exceed `maxTtl`. Cannot be specified when `cacheMode` is + # `USE_ORIGIN_HEADERS`. + # @!attribute [rw] default_ttl + # @return [::Google::Cloud::Compute::V1::Duration] + # Specifies the default TTL for cached content for responses that do not have + # an existing valid TTL (max-age or s-maxage). Setting a TTL of "0" means + # "always revalidate". The value of `defaultTtl` cannot be set to a value + # greater than that of `maxTtl`. When the `cacheMode` is set to + # `FORCE_CACHE_ALL`, the `defaultTtl` will overwrite the TTL set in all + # responses. The maximum allowed value is 31,622,400s (1 year). Infrequently + # accessed objects may be evicted from the cache before the defined TTL. If + # not specified, Cloud CDN uses 3600s (1 hour) for `CACHE_ALL_STATIC` and + # `FORCE_CACHE_ALL` modes. Cannot be specified when `cacheMode` is + # `USE_ORIGIN_HEADERS`. + # @!attribute [rw] max_ttl + # @return [::Google::Cloud::Compute::V1::Duration] + # Specifies the maximum allowed TTL for cached content. Cache directives that + # attempt to set a max-age or s-maxage higher than this, or an Expires header + # more than `maxTtl` seconds in the future will be capped at the value of + # `maxTtl`, as if it were the value of an s-maxage Cache-Control directive. + # Headers sent to the client will not be modified. Setting a TTL of "0" means + # "always revalidate". The maximum allowed value is 31,622,400s (1 year). + # Infrequently accessed objects may be evicted from the cache before the + # defined TTL. If not specified, Cloud CDN uses 86400s (1 day) for + # `CACHE_ALL_STATIC` mode. Can be specified only for `CACHE_ALL_STATIC` cache + # mode. + # @!attribute [rw] negative_caching + # @return [::Boolean] + # Negative caching allows per-status code TTLs to be set, in order + # to apply fine-grained caching for common errors or redirects. + # This can reduce the load on your origin and improve end-user + # experience by reducing response latency. + # When the `cacheMode` is set to `CACHE_ALL_STATIC` or + # `USE_ORIGIN_HEADERS`, negative caching applies to responses with + # the specified response code that lack any Cache-Control, Expires, or + # Pragma: no-cache directives. When the `cacheMode` is set to + # `FORCE_CACHE_ALL`, negative caching applies to all responses + # with the specified response code, and overrides any caching headers. By + # default, Cloud CDN applies the following TTLs to these HTTP status codes: + # + # * 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m + # * 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s + # * 405 (Method Not Found), 501 (Not Implemented): 60s + # + # These defaults can be overridden in `negativeCachingPolicy`. + # If not specified, Cloud CDN applies negative caching by default. + # @!attribute [rw] negative_caching_policy + # @return [::Array<::Google::Cloud::Compute::V1::CachePolicyNegativeCachingPolicy>] + # Sets a cache TTL for the specified HTTP status code. + # `negativeCaching` must be enabled to configure `negativeCachingPolicy`. + # Omitting the policy and leaving `negativeCaching` enabled will use Cloud + # CDN's default cache TTLs. Note that when specifying an explicit + # `negativeCachingPolicy`, you should take care to specify a cache TTL for + # all response codes that you wish to cache. Cloud CDN will not apply any + # default negative caching when a policy exists. + # @!attribute [rw] request_coalescing + # @return [::Boolean] + # If true then Cloud CDN will combine multiple concurrent cache fill + # requests into a small number of requests to the origin. If not specified, + # Cloud CDN applies request coalescing by default. + # @!attribute [rw] serve_while_stale + # @return [::Google::Cloud::Compute::V1::Duration] + # Serve existing content from the cache (if available) when revalidating + # content with the origin, or when an error is encountered when refreshing + # the cache. + # This setting defines the default "max-stale" duration for any cached + # responses that do not specify a max-stale directive. Stale responses that + # exceed the TTL configured here will not be served. The default limit + # (max-stale) is 86400s (1 day), which will allow stale content to be + # served up to this limit beyond the max-age (or s-maxage) of a cached + # response. + # The maximum allowed value is 604800 (1 week). + # Set this to zero (0) to disable serve-while-stale. + class CachePolicy + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # Specifies the cache setting for all responses from this route. If not + # specified, Cloud CDN uses `CACHE_ALL_STATIC` mode. + module CacheMode + # A value indicating that the enum field is not set. + UNDEFINED_CACHE_MODE = 0 + + # Automatically cache static content, including common image formats, + # media (video and audio), and web assets (JavaScript and CSS). + # Requests and responses that are marked as uncacheable, as well as + # dynamic content (including HTML), will not be cached. + CACHE_ALL_STATIC = 355_027_945 + + # Cache all content, ignoring any "private", "no-store" or "no-cache" + # directives in Cache-Control response headers. + # Warning: this may result in Cloud CDN caching private, + # per-user (user identifiable) content. + FORCE_CACHE_ALL = 486_026_928 + + # Requires the origin to set valid caching headers to cache content. + # Responses without these headers will not be cached at the edge, and will + # require a full trip to the origin on every request, potentially impacting + # performance and increasing load on the origin server. + USE_ORIGIN_HEADERS = 55_380_261 + end + end + + # Message containing what to include in the cache key for a request for Cache + # Policy defined on Route Action. + # @!attribute [rw] excluded_query_parameters + # @return [::Array<::String>] + # Names of query string parameters to exclude in cache keys. All other + # parameters will be included. Either specify `excludedQueryParameters` + # or `includedQueryParameters`, not both. '&' and '=' will be percent + # encoded and not treated as delimiters. + # + # Note: This field applies to routes that use backend services. Attempting + # to set it on a route that points exclusively to Backend Buckets will + # result in a configuration error. For routes that point to a Backend + # Bucket, use `includedQueryParameters` to define which parameters should + # be part of the cache key. + # @!attribute [rw] include_host + # @return [::Boolean] + # If true, requests to different hosts will be cached separately. + # + # Note: This setting is only applicable to routes that use a Backend + # Service. It does not affect requests served by a Backend Bucket, as the + # host is never included in a Backend Bucket's cache key. Attempting to set + # it on a route that points exclusively to Backend Buckets will result in a + # configuration error. + # @!attribute [rw] include_protocol + # @return [::Boolean] + # If true, http and https requests will be cached separately. + # + # Note: This setting is only applicable to routes that use a Backend + # Service. It does not affect requests served by a Backend Bucket, as the + # protocol is never included in a Backend Bucket's cache key. Attempting to + # set on a route that points exclusively to Backend Buckets will result in + # a configuration error. + # @!attribute [rw] include_query_string + # @return [::Boolean] + # If true, include query string parameters in the cache key according to + # `includedQueryParameters` and `excludedQueryParameters`. If neither + # is set, the entire query string will be included. If false, the query + # string will be excluded from the cache key entirely. + # + # Note: This field applies to routes that use backend services. Attempting + # to set it on a route that points exclusively to Backend Buckets will + # result in a configuration error. For routes that point to a Backend + # Bucket, use `includedQueryParameters` to define which parameters should + # be part of the cache key. + # @!attribute [rw] included_cookie_names + # @return [::Array<::String>] + # Allows HTTP cookies (by name) to be used in the cache key. + # The name=value pair will be used in the cache key Cloud CDN generates. + # + # Note: This setting is only applicable to routes that use a Backend + # Service. It does not affect requests served by a Backend Bucket. + # Attempting to set it on a route that points exclusively to Backend + # Buckets will result in a configuration error. Up to 5 cookie names can be + # specified. + # @!attribute [rw] included_header_names + # @return [::Array<::String>] + # Allows HTTP request headers (by name) to be used in the cache key. + # @!attribute [rw] included_query_parameters + # @return [::Array<::String>] + # Names of query string parameters to include in cache keys. All other + # parameters will be excluded. Either specify `includedQueryParameters` + # or `excludedQueryParameters`, not both. '&' and '=' will be percent + # encoded and not treated as delimiters. + class CachePolicyCacheKeyPolicy + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # Specify CDN TTLs for response error codes. + # @!attribute [rw] code + # @return [::Integer] + # The HTTP status code to define a TTL against. Only HTTP status codes + # 300, 301, 302, 307, 308, 404, 405, 410, 421, 451 and 501 can be + # specified as values, and you cannot specify a status code more than + # once. + # @!attribute [rw] ttl + # @return [::Google::Cloud::Compute::V1::Duration] + # The TTL (in seconds) for which to cache responses with the + # corresponding status code. + # The maximum allowed value is 1800s (30 minutes). Infrequently accessed + # objects may be evicted from the cache before the defined TTL. + class CachePolicyNegativeCachingPolicy + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request to recommend the best way to consume the specified resources in the # future. # @!attribute [rw] future_resources_specs @@ -12944,6 +13406,42 @@ class CancelInstanceGroupManagerResizeRequestRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionInstanceGroupManagerResizeRequests.Cancel. See the method description for details. + # @!attribute [rw] instance_group_manager + # @return [::String] + # The name of the managed instance group. + # Name should conform to RFC1035 or be a resource ID. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region + # scoping this request. Name should conform to RFC1035. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] resize_request + # @return [::String] + # The name of the resize request to cancel. + # Name should conform to RFC1035 or be a resource ID. + class CancelRegionInstanceGroupManagerResizeRequestRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # Settings controlling the volume of requests, connections and retries to this # backend service. # @!attribute [rw] max_connections @@ -13145,6 +13643,10 @@ class CloneRulesRegionNetworkFirewallPolicyRequest # character must be a lowercase letter, and all following characters must # be a dash, lowercase letter, or digit, except the last character, which # cannot be a dash. + # @!attribute [rw] params + # @return [::Google::Cloud::Compute::V1::CommitmentParams] + # Input only. Additional params passed with the request, but not persisted + # as part of resource payload. # @!attribute [rw] plan # @return [::String] # The minimum time duration that you commit to purchasing resources. @@ -13445,6 +13947,30 @@ class CommitmentList extend ::Google::Protobuf::MessageExts::ClassMethods end + # Additional commitment params. + # @!attribute [rw] resource_manager_tags + # @return [::Google::Protobuf::Map{::String => ::String}] + # Input only. Resource manager tags to be bound to the commitment. Tag keys and + # values have the same definition as resource + # manager tags. Keys and values can be either in numeric format, + # such as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in + # namespaced format such as `{org_id|project_id}/{tag_key_short_name}` and + # `{tag_value_short_name}`. The field is ignored (both PUT & + # PATCH) when empty. + class CommitmentParams + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # @!attribute [rw] key + # @return [::String] + # @!attribute [rw] value + # @return [::String] + class ResourceManagerTagsEntry + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + end + # [Output Only] Contains output only fields. # @!attribute [rw] custom_term_eligibility_end_timestamp # @return [::String] @@ -13574,6 +14100,35 @@ class ItemsEntry end end + # Response message for RegionCompositeHealthChecks.GetHealth + # @!attribute [rw] health_sources + # @return [::Array<::Google::Cloud::Compute::V1::CompositeHealthChecksGetHealthResponseHealthSourceHealth>] + # Health sources and their corresponding health states. + # @!attribute [rw] health_state + # @return [::String] + # Health state of the CompositeHealthCheck. + # Check the HealthState enum for the list of possible values. + # @!attribute [rw] kind + # @return [::String] + # Output only. [Output Only] Type of resource. Alwayscompute#compositeHealthCheckHealth for the health of + # composite health checks. + class CompositeHealthCheckHealth + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # Health state of the CompositeHealthCheck. + module HealthState + # A value indicating that the enum field is not set. + UNDEFINED_HEALTH_STATE = 0 + + HEALTHY = 439_801_213 + + UNHEALTHY = 462_118_084 + + UNKNOWN = 433_141_802 + end + end + # @!attribute [rw] id # @return [::String] # [Output Only] Unique identifier for the resource; defined by the server. @@ -13601,6 +14156,30 @@ class CompositeHealthCheckList extend ::Google::Protobuf::MessageExts::ClassMethods end + # @!attribute [rw] health_state + # @return [::String] + # Health state of the associated HealthSource resource. + # Check the HealthState enum for the list of possible values. + # @!attribute [rw] source + # @return [::String] + # Fully qualified URL of the associated HealthSource resource. + class CompositeHealthChecksGetHealthResponseHealthSourceHealth + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # Health state of the associated HealthSource resource. + module HealthState + # A value indicating that the enum field is not set. + UNDEFINED_HEALTH_STATE = 0 + + HEALTHY = 439_801_213 + + UNHEALTHY = 462_118_084 + + UNKNOWN = 433_141_802 + end + end + # @!attribute [rw] composite_health_checks # @return [::Array<::Google::Cloud::Compute::V1::CompositeHealthCheck>] # A list of CompositeHealthChecks contained in this scope. @@ -14980,6 +15559,36 @@ class DeleteInstancesRegionInstanceGroupManagerRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for InstantSnapshotGroups.Delete. See the method description for details. + # @!attribute [rw] instant_snapshot_group + # @return [::String] + # Name of the InstantSnapshot resource to delete. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class DeleteInstantSnapshotGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for InstantSnapshots.Delete. See the method description for details. # @!attribute [rw] instant_snapshot # @return [::String] @@ -15632,6 +16241,37 @@ class DeleteRegionAutoscalerRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionBackendBuckets.Delete. See the method description for details. + # @!attribute [rw] backend_bucket + # @return [::String] + # Name of the BackendBucket resource to delete. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # end_interface: MixerMutationRequestBuilder + class DeleteRegionBackendBucketRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionBackendServices.Delete. See the method description for details. # @!attribute [rw] backend_service # @return [::String] @@ -15873,6 +16513,42 @@ class DeleteRegionInstanceGroupManagerRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionInstanceGroupManagerResizeRequests.Delete. See the method description for details. + # @!attribute [rw] instance_group_manager + # @return [::String] + # The name of the managed instance group. + # Name should conform to RFC1035 or be a resource ID. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region + # scoping this request. Name should conform to RFC1035. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] resize_request + # @return [::String] + # The name of the resize request to delete. + # Name should conform to RFC1035 or be a resource ID. + class DeleteRegionInstanceGroupManagerResizeRequestRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionInstanceTemplates.Delete. See the method description for details. # @!attribute [rw] instance_template # @return [::String] @@ -15903,6 +16579,36 @@ class DeleteRegionInstanceTemplateRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionInstantSnapshotGroups.Delete. See the method description for details. + # @!attribute [rw] instant_snapshot_group + # @return [::String] + # Name of the InstantSnapshotGroup resource to delete. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + class DeleteRegionInstantSnapshotGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionInstantSnapshots.Delete. See the method description for details. # @!attribute [rw] instant_snapshot # @return [::String] @@ -16077,6 +16783,36 @@ class DeleteRegionSecurityPolicyRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionSnapshots.Delete. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] snapshot + # @return [::String] + # Name of the snapshot resource to delete. + class DeleteRegionSnapshotRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionSslCertificates.Delete. See the method description for details. # @!attribute [rw] project # @return [::String] @@ -17022,6 +17758,36 @@ class DeleteZoneOperationResponse extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for ZoneVmExtensionPolicies.Delete. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] vm_extension_policy + # @return [::String] + # Name of the zone VM extension policy to delete. + # @!attribute [rw] zone + # @return [::String] + # Name of the zone for this request. + class DeleteZoneVmExtensionPolicyRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # @!attribute [rw] I_p_protocol # @return [::String] # The IP protocol to which this rule applies. The protocol type is @@ -18215,6 +18981,25 @@ class DiskTypesScopedList extend ::Google::Protobuf::MessageExts::ClassMethods end + # @!attribute [rw] kms_key_name + # @return [::String] + # Optional. The new KMS key to replace the current one on the disk. If empty, the disk + # will be re-encrypted using the primary version of the disk's current KMS + # key. + # + # The KMS key can be provided in the following formats: + # + # + # - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key + # + # + # Where project is the project ID or + # project number. + class DiskUpdateKmsKeyRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # @!attribute [rw] resource_policies # @return [::Array<::String>] # Full or relative path to the resource policy to be added to this disk. You @@ -18444,7 +19229,7 @@ class EnableXpnResourceProjectRequest extend ::Google::Protobuf::MessageExts::ClassMethods end - # Output only. [Output Only] Encountered errors. + # Output only. Encountered errors. # @!attribute [rw] errors # @return [::Array<::Google::Cloud::Compute::V1::Errors>] # [Output Only] The array of errors encountered while processing this @@ -20425,6 +21210,9 @@ class ForwardingRulesScopedList # @return [::Google::Cloud::Compute::V1::FutureReservationCommitmentInfo] # If not present, then FR will not deliver a new commitment or update an # existing commitment. + # @!attribute [rw] confidential_compute_type + # @return [::String] + # Check the ConfidentialComputeType enum for the list of possible values. # @!attribute [rw] creation_timestamp # @return [::String] # Output only. [Output Only] The creation timestamp for this future reservation inRFC3339 @@ -20463,6 +21251,10 @@ class ForwardingRulesScopedList # delivery. The name prefix must comply with RFC1035. # Maximum allowed length for name prefix is 20. Automatically created # reservations name format will be -date-####. + # @!attribute [rw] params + # @return [::Google::Cloud::Compute::V1::FutureReservationParams] + # Input only. Additional params passed with the request, but not persisted + # as part of resource payload. # @!attribute [rw] planning_status # @return [::String] # Planning state before being submitted for evaluation @@ -20514,6 +21306,17 @@ class FutureReservation include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods + + module ConfidentialComputeType + # A value indicating that the enum field is not set. + UNDEFINED_CONFIDENTIAL_COMPUTE_TYPE = 0 + + # Intel Trust Domain Extensions. + CONFIDENTIAL_COMPUTE_TYPE_TDX = 301_241_954 + + CONFIDENTIAL_COMPUTE_TYPE_UNSPECIFIED = 42_227_601 + end + # Type of the deployment requested as part of future reservation. module DeploymentType # A value indicating that the enum field is not set. @@ -20624,6 +21427,30 @@ module PreviousCommitmentTerms end end + # Additional future reservation params. + # @!attribute [rw] resource_manager_tags + # @return [::Google::Protobuf::Map{::String => ::String}] + # Input only. Resource manager tags to be bound to the future reservation. Tag keys and + # values have the same definition as resource + # manager tags. Keys and values can be either in numeric format, + # such as `tagKeys/{tag_key_id}` and `tagValues/{tag_value_id}` or in + # namespaced format such as `{org_id|project_id}/{tag_key_short_name}` and + # `{tag_value_short_name}`. The field is ignored (both PUT & + # PATCH) when empty. + class FutureReservationParams + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # @!attribute [rw] key + # @return [::String] + # @!attribute [rw] value + # @return [::String] + class ResourceManagerTagsEntry + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + end + # @!attribute [rw] instance_properties # @return [::Google::Cloud::Compute::V1::AllocationSpecificSKUAllocationReservedInstanceProperties] # Properties of the SKU instances being reserved. @@ -21895,6 +22722,36 @@ class GetHealthRegionBackendServiceRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionCompositeHealthChecks.GetHealth. See the method description for details. + # @!attribute [rw] composite_health_check + # @return [::String] + # Name of the CompositeHealthCheck resource to get health for. + # @!attribute [rw] project + # @return [::String] + # Name of the project scoping this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. + class GetHealthRegionCompositeHealthCheckRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for RegionHealthSources.GetHealth. See the method description for details. + # @!attribute [rw] health_source + # @return [::String] + # Name of the HealthSource resource to get health for. + # @!attribute [rw] project + # @return [::String] + # Name of the project scoping this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. + class GetHealthRegionHealthSourceRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for TargetPools.GetHealth. See the method description for details. # @!attribute [rw] instance_reference_resource # @return [::Google::Cloud::Compute::V1::InstanceReference] @@ -22021,6 +22878,24 @@ class GetIamPolicyInstanceTemplateRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for InstantSnapshotGroups.GetIamPolicy. See the method description for details. + # @!attribute [rw] options_requested_policy_version + # @return [::Integer] + # Requested IAM Policy version. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class GetIamPolicyInstantSnapshotGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for InstantSnapshots.GetIamPolicy. See the method description for details. # @!attribute [rw] options_requested_policy_version # @return [::Integer] @@ -22168,6 +23043,24 @@ class GetIamPolicyNodeTemplateRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionBackendBuckets.GetIamPolicy. See the method description for details. + # @!attribute [rw] options_requested_policy_version + # @return [::Integer] + # Requested IAM Policy version. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + class GetIamPolicyRegionBackendBucketRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionBackendServices.GetIamPolicy. See the method description for details. # @!attribute [rw] options_requested_policy_version # @return [::Integer] @@ -22204,6 +23097,24 @@ class GetIamPolicyRegionDiskRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionInstantSnapshotGroups.GetIamPolicy. See the method description for details. + # @!attribute [rw] options_requested_policy_version + # @return [::Integer] + # Requested IAM Policy version. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + class GetIamPolicyRegionInstantSnapshotGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionInstantSnapshots.GetIamPolicy. See the method description for details. # @!attribute [rw] options_requested_policy_version # @return [::Integer] @@ -22240,6 +23151,24 @@ class GetIamPolicyRegionNetworkFirewallPolicyRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionSnapshots.GetIamPolicy. See the method description for details. + # @!attribute [rw] options_requested_policy_version + # @return [::Integer] + # Requested IAM Policy version. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + class GetIamPolicyRegionSnapshotRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for ReservationBlocks.GetIamPolicy. See the method description for details. # @!attribute [rw] options_requested_policy_version # @return [::Integer] @@ -22506,6 +23435,21 @@ class GetInstanceTemplateRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for InstantSnapshotGroups.Get. See the method description for details. + # @!attribute [rw] instant_snapshot_group + # @return [::String] + # Name of the InstantSnapshotGroup resource to return. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class GetInstantSnapshotGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for InstantSnapshots.Get. See the method description for details. # @!attribute [rw] instant_snapshot # @return [::String] @@ -23047,6 +23991,21 @@ class GetRegionAutoscalerRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionBackendBuckets.Get. See the method description for details. + # @!attribute [rw] backend_bucket + # @return [::String] + # Name of the BackendBucket resource to return. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. + class GetRegionBackendBucketRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionBackendServices.Get. See the method description for details. # @!attribute [rw] backend_service # @return [::String] @@ -23198,6 +24157,27 @@ class GetRegionInstanceGroupManagerRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionInstanceGroupManagerResizeRequests.Get. See the method description for details. + # @!attribute [rw] instance_group_manager + # @return [::String] + # The name of the managed instance group. + # Name should conform to RFC1035 or be a resource ID. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region + # scoping this request. Name should conform to RFC1035. + # @!attribute [rw] resize_request + # @return [::String] + # The name of the resize request. + # Name should conform to RFC1035 or be a resource ID. + class GetRegionInstanceGroupManagerResizeRequestRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionInstanceGroups.Get. See the method description for details. # @!attribute [rw] instance_group # @return [::String] @@ -23228,6 +24208,21 @@ class GetRegionInstanceTemplateRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionInstantSnapshotGroups.Get. See the method description for details. + # @!attribute [rw] instant_snapshot_group + # @return [::String] + # Name of the InstantSnapshotGroup resource to return. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. + class GetRegionInstantSnapshotGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionInstantSnapshots.Get. See the method description for details. # @!attribute [rw] instant_snapshot # @return [::String] @@ -23332,6 +24327,33 @@ class GetRegionSecurityPolicyRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionSnapshots.Get. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region for this request. + # @!attribute [rw] snapshot + # @return [::String] + # Name of the Snapshot resource to return. + class GetRegionSnapshotRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for RegionSnapshotSettings.Get. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region for this request. + class GetRegionSnapshotSettingRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionSslCertificates.Get. See the method description for details. # @!attribute [rw] project # @return [::String] @@ -24342,6 +25364,21 @@ class GetZoneRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for ZoneVmExtensionPolicies.Get. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] vm_extension_policy + # @return [::String] + # Name of the VM extension policy resource to return. + # @!attribute [rw] zone + # @return [::String] + # Name of the zone for this request. + class GetZoneVmExtensionPolicyRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # @!attribute [rw] description # @return [::String] # An optional destination address description if intended to be different @@ -24563,6 +25600,7 @@ class GuestAttributesValue # - TDX_CAPABLE # - IDPF # - SNP_SVSM_CAPABLE + # - CCA_CAPABLE # # # For more information, see @@ -24587,6 +25625,7 @@ class GuestOsFeature # - TDX_CAPABLE # - IDPF # - SNP_SVSM_CAPABLE + # - CCA_CAPABLE # # # For more information, see @@ -25709,6 +26748,34 @@ class ItemsEntry end end + # Response message for RegionHealthSources.GetHealth + # @!attribute [rw] health_state + # @return [::String] + # Health state of the HealthSource. + # Check the HealthState enum for the list of possible values. + # @!attribute [rw] kind + # @return [::String] + # Output only. [Output Only] Type of resource. Alwayscompute#healthSourceHealth for the health of health sources. + # @!attribute [rw] sources + # @return [::Array<::Google::Cloud::Compute::V1::HealthSourcesGetHealthResponseSourceInfo>] + # Health state details of the sources. + class HealthSourceHealth + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # Health state of the HealthSource. + module HealthState + # A value indicating that the enum field is not set. + UNDEFINED_HEALTH_STATE = 0 + + HEALTHY = 439_801_213 + + UNHEALTHY = 462_118_084 + + UNKNOWN = 433_141_802 + end + end + # @!attribute [rw] id # @return [::String] # [Output Only] Unique identifier for the resource; defined by the server. @@ -25736,6 +26803,41 @@ class HealthSourceList extend ::Google::Protobuf::MessageExts::ClassMethods end + # @!attribute [rw] backends + # @return [::Array<::Google::Cloud::Compute::V1::HealthSourcesGetHealthResponseSourceInfoBackendInfo>] + # Represents an instance group or network endpoint group behind the source + # backend service. Only used if the sourceType of the regionHealthSource + # is BACKEND_SERVICE. + # @!attribute [rw] forwarding_rule + # @return [::String] + # Fully qualified URL of the forwarding rule associated with the source + # resource if it is a L4ILB backend service. + # @!attribute [rw] source + # @return [::String] + # Fully qualified URL of the associated source resource. This is always a + # backend service URL. + class HealthSourcesGetHealthResponseSourceInfo + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # @!attribute [rw] endpoint_count + # @return [::Integer] + # Total number of endpoints when determining the health of the + # regionHealthSource. + # @!attribute [rw] group + # @return [::String] + # Fully qualified URL of an instance group or network endpoint group + # behind the source backend service. + # @!attribute [rw] healthy_endpoint_count + # @return [::Integer] + # Number of endpoints considered healthy when determining health of the + # regionHealthSource. + class HealthSourcesGetHealthResponseSourceInfoBackendInfo + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # @!attribute [rw] health_sources # @return [::Array<::Google::Cloud::Compute::V1::HealthSource>] # A list of HealthSources contained in this scope. @@ -26344,6 +27446,12 @@ class HttpRetryPolicy extend ::Google::Protobuf::MessageExts::ClassMethods end + # @!attribute [rw] cache_policy + # @return [::Google::Cloud::Compute::V1::CachePolicy] + # Specifies the cache policy configuration for matched traffic. Available + # only for Global `EXTERNAL_MANAGED` load balancer schemes. At least one + # property must be specified. This policy cannot be specified if any target + # backend has Identity-Aware Proxy enabled. # @!attribute [rw] cors_policy # @return [::Google::Cloud::Compute::V1::CorsPolicy] # The specification for allowing client-side cross-origin requests. For more @@ -27678,6 +28786,39 @@ class InsertInstanceTemplateRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for InstantSnapshotGroups.Insert. See the method description for details. + # @!attribute [rw] instant_snapshot_group_resource + # @return [::Google::Cloud::Compute::V1::InstantSnapshotGroup] + # The body resource for this request + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] source_consistency_group + # @return [::String] + # begin_interface: MixerMutationRequestBuilder + # @!attribute [rw] zone + # @return [::String] + # Name of the zone for this request. + class InsertInstantSnapshotGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for InstantSnapshots.Insert. See the method description for details. # @!attribute [rw] instant_snapshot_resource # @return [::Google::Cloud::Compute::V1::InstantSnapshot] @@ -28240,6 +29381,36 @@ class InsertRegionAutoscalerRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionBackendBuckets.Insert. See the method description for details. + # @!attribute [rw] backend_bucket_resource + # @return [::Google::Cloud::Compute::V1::BackendBucket] + # The body resource for this request + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region of this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + class InsertRegionBackendBucketRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionBackendServices.Insert. See the method description for details. # @!attribute [rw] backend_service_resource # @return [::Google::Cloud::Compute::V1::BackendService] @@ -28513,6 +29684,41 @@ class InsertRegionInstanceGroupManagerRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionInstanceGroupManagerResizeRequests.Insert. See the method description for details. + # @!attribute [rw] instance_group_manager + # @return [::String] + # Name of the managed instance group to which the resize request is scoped. + # Name should conform to RFC1035 or be a resource ID. + # @!attribute [rw] instance_group_manager_resize_request_resource + # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequest] + # The body resource for this request + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region + # scoping this request. Name should conform to RFC1035. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + class InsertRegionInstanceGroupManagerResizeRequestRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionInstanceTemplates.Insert. See the method description for details. # @!attribute [rw] instance_template_resource # @return [::Google::Cloud::Compute::V1::InstanceTemplate] @@ -28543,6 +29749,39 @@ class InsertRegionInstanceTemplateRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionInstantSnapshotGroups.Insert. See the method description for details. + # @!attribute [rw] instant_snapshot_group_resource + # @return [::Google::Cloud::Compute::V1::InstantSnapshotGroup] + # The body resource for this request + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] source_consistency_group + # @return [::String] + # begin_interface: MixerMutationRequestBuilder + class InsertRegionInstantSnapshotGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionInstantSnapshots.Insert. See the method description for details. # @!attribute [rw] instant_snapshot_resource # @return [::Google::Cloud::Compute::V1::InstantSnapshot] @@ -28698,13 +29937,13 @@ class InsertRegionSecurityPolicyRequest extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionSslCertificates.Insert. See the method description for details. + # A request message for RegionSnapshots.Insert. See the method description for details. # @!attribute [rw] project # @return [::String] # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region scoping this request. + # Name of the region for this request. # @!attribute [rw] request_id # @return [::String] # An optional request ID to identify requests. Specify a unique request ID so @@ -28720,15 +29959,15 @@ class InsertRegionSecurityPolicyRequest # The request ID must be # a valid UUID with the exception that zero UUID is not supported # (00000000-0000-0000-0000-000000000000). - # @!attribute [rw] ssl_certificate_resource - # @return [::Google::Cloud::Compute::V1::SslCertificate] + # @!attribute [rw] snapshot_resource + # @return [::Google::Cloud::Compute::V1::Snapshot] # The body resource for this request - class InsertRegionSslCertificateRequest + class InsertRegionSnapshotRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionSslPolicies.Insert. See the method description for details. + # A request message for RegionSslCertificates.Insert. See the method description for details. # @!attribute [rw] project # @return [::String] # Project ID for this request. @@ -28750,15 +29989,45 @@ class InsertRegionSslCertificateRequest # The request ID must be # a valid UUID with the exception that zero UUID is not supported # (00000000-0000-0000-0000-000000000000). - # @!attribute [rw] ssl_policy_resource - # @return [::Google::Cloud::Compute::V1::SslPolicy] + # @!attribute [rw] ssl_certificate_resource + # @return [::Google::Cloud::Compute::V1::SslCertificate] # The body resource for this request - class InsertRegionSslPolicyRequest + class InsertRegionSslCertificateRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionTargetHttpProxies.Insert. See the method description for details. + # A request message for RegionSslPolicies.Insert. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] ssl_policy_resource + # @return [::Google::Cloud::Compute::V1::SslPolicy] + # The body resource for this request + class InsertRegionSslPolicyRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for RegionTargetHttpProxies.Insert. See the method description for details. # @!attribute [rw] project # @return [::String] # Project ID for this request. @@ -29530,6 +30799,36 @@ class InsertWireGroupRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for ZoneVmExtensionPolicies.Insert. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] vm_extension_policy_resource + # @return [::Google::Cloud::Compute::V1::VmExtensionPolicy] + # The body resource for this request + # @!attribute [rw] zone + # @return [::String] + # Name of the zone for this request. + class InsertZoneVmExtensionPolicyRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # Represents an Instance resource. # # An instance is a virtual machine that is hosted on Google Cloud Platform. @@ -30170,11 +31469,11 @@ class InstanceGroupList # [a-z](([-a-z0-9]\\{0,57})|([-a-z0-9]\\{0,51}-#\\{1,10}(\\[[0-9]\\{1,10}\\])?)) # @!attribute [rw] creation_timestamp # @return [::String] - # Output only. [Output Only] The creation timestamp for this managed instance group inRFC3339 + # Output only. The creation timestamp for this managed instance group inRFC3339 # text format. # @!attribute [rw] current_actions # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerActionsSummary] - # Output only. [Output Only] The list of instance actions and the number of instances + # Output only. The list of instance actions and the number of instances # in this managed instance group that are scheduled for each of those # actions. # @!attribute [rw] description @@ -30195,7 +31494,7 @@ class InstanceGroupList # retrieve an InstanceGroupManager. # @!attribute [rw] id # @return [::Integer] - # Output only. [Output Only] A unique identifier for this resource type. The server + # Output only. A unique identifier for this resource type. The server # generates this identifier. # @!attribute [rw] instance_flexibility_policy # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerInstanceFlexibilityPolicy] @@ -30205,7 +31504,7 @@ class InstanceGroupList # template configuration. # @!attribute [rw] instance_group # @return [::String] - # Output only. [Output Only] The URL of the Instance Group resource. + # Output only. The URL of the Instance Group resource. # @!attribute [rw] instance_lifecycle_policy # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerInstanceLifecyclePolicy] # The repair policy for this managed instance group. @@ -30217,7 +31516,7 @@ class InstanceGroupList # group do not change unless you run recreateInstances, runapplyUpdatesToInstances, or set the group'supdatePolicy.type to PROACTIVE. # @!attribute [rw] kind # @return [::String] - # Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManager for managed instance groups. + # Output only. The resource type, which is alwayscompute#instanceGroupManager for managed instance groups. # @!attribute [rw] list_managed_instances_results # @return [::String] # Pagination behavior of the listManagedInstances API method for @@ -30240,13 +31539,13 @@ class InstanceGroupList # Resource policies for this managed instance group. # @!attribute [rw] satisfies_pzi # @return [::Boolean] - # Output only. [Output Only] Reserved for future use. + # Output only. Reserved for future use. # @!attribute [rw] satisfies_pzs # @return [::Boolean] - # Output only. [Output Only] Reserved for future use. + # Output only. Reserved for future use. # @!attribute [rw] self_link # @return [::String] - # Output only. [Output Only] The URL for this managed instance group. The server defines + # Output only. The URL for this managed instance group. The server defines # this URL. # @!attribute [rw] standby_policy # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerStandbyPolicy] @@ -30256,7 +31555,7 @@ class InstanceGroupList # Stateful configuration for this Instanced Group Manager # @!attribute [rw] status # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerStatus] - # Output only. [Output Only] The status of this managed instance group. + # Output only. The status of this managed instance group. # @!attribute [rw] target_pools # @return [::Array<::String>] # The URLs for all TargetPool resources to which instances in theinstanceGroup field are added. The target pools automatically @@ -30307,7 +31606,7 @@ class InstanceGroupList # updates. # @!attribute [rw] zone # @return [::String] - # Output only. [Output Only] The URL of azone + # Output only. The URL of azone # where the managed instance group is located (for zonal resources). class InstanceGroupManager include ::Google::Protobuf::MessageExts @@ -30333,12 +31632,12 @@ module ListManagedInstancesResults # @!attribute [rw] abandoning # @return [::Integer] - # Output only. [Output Only] The total number of instances in the managed instance group + # Output only. The total number of instances in the managed instance group # that are scheduled to be abandoned. Abandoning an instance removes it # from the managed instance group without deleting it. # @!attribute [rw] creating # @return [::Integer] - # Output only. [Output Only] The number of instances in the managed instance group that + # Output only. The number of instances in the managed instance group that # are scheduled to be created or are currently being created. If the group # fails to create any of these instances, it tries again until it creates # the instance successfully. @@ -30347,54 +31646,54 @@ module ListManagedInstancesResults # instead, the creatingWithoutRetries field will be populated. # @!attribute [rw] creating_without_retries # @return [::Integer] - # Output only. [Output Only] The number of instances that the managed instance group + # Output only. The number of instances that the managed instance group # will attempt to create. The group attempts to create each instance # only once. If the group fails to create any of these instances, it # decreases the group's targetSize value accordingly. # @!attribute [rw] deleting # @return [::Integer] - # Output only. [Output Only] The number of instances in the managed instance group that + # Output only. The number of instances in the managed instance group that # are scheduled to be deleted or are currently being deleted. # @!attribute [rw] none # @return [::Integer] - # Output only. [Output Only] The number of instances in the managed instance group that + # Output only. The number of instances in the managed instance group that # are running and have no scheduled actions. # @!attribute [rw] recreating # @return [::Integer] - # Output only. [Output Only] The number of instances in the managed instance group that + # Output only. The number of instances in the managed instance group that # are scheduled to be recreated or are currently being being recreated. # Recreating an instance deletes the existing root persistent disk # and creates a new disk from the image that is defined in the # instance template. # @!attribute [rw] refreshing # @return [::Integer] - # Output only. [Output Only] The number of instances in the managed instance group that + # Output only. The number of instances in the managed instance group that # are being reconfigured with properties that do not require a restart # or a recreate action. For example, setting or removing target # pools for the instance. # @!attribute [rw] restarting # @return [::Integer] - # Output only. [Output Only] The number of instances in the managed instance group that + # Output only. The number of instances in the managed instance group that # are scheduled to be restarted or are currently being restarted. # @!attribute [rw] resuming # @return [::Integer] - # Output only. [Output Only] The number of instances in the managed instance group that + # Output only. The number of instances in the managed instance group that # are scheduled to be resumed or are currently being resumed. # @!attribute [rw] starting # @return [::Integer] - # Output only. [Output Only] The number of instances in the managed instance group that + # Output only. The number of instances in the managed instance group that # are scheduled to be started or are currently being started. # @!attribute [rw] stopping # @return [::Integer] - # Output only. [Output Only] The number of instances in the managed instance group that + # Output only. The number of instances in the managed instance group that # are scheduled to be stopped or are currently being stopped. # @!attribute [rw] suspending # @return [::Integer] - # Output only. [Output Only] The number of instances in the managed instance group that + # Output only. The number of instances in the managed instance group that # are scheduled to be suspended or are currently being suspended. # @!attribute [rw] verifying # @return [::Integer] - # Output only. [Output Only] The number of instances in the managed instance group that + # Output only. The number of instances in the managed instance group that # are being verified. See the managedInstances[].currentAction # property in the listManagedInstances method documentation. class InstanceGroupManagerActionsSummary @@ -30653,23 +31952,27 @@ class InstanceGroupManagerList # InstanceGroupManager. # @!attribute [rw] creation_timestamp # @return [::String] - # Output only. [Output Only] The creation timestamp for this resize request inRFC3339 + # Output only. The creation timestamp for this resize request inRFC3339 # text format. # @!attribute [rw] description # @return [::String] # An optional description of this resource. # @!attribute [rw] id # @return [::Integer] - # Output only. [Output Only] A unique identifier for this resource type. The server - # generates this identifier. + # Output only. A unique identifier for this resource type. The server generates this + # identifier. # @!attribute [rw] kind # @return [::String] - # Output only. [Output Only] The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for - # resize requests. + # Output only. The resource type, which is alwayscompute#instanceGroupManagerResizeRequest for resize requests. # @!attribute [rw] name # @return [::String] # The name of this resize request. The name must be 1-63 characters # long, and comply withRFC1035. + # @!attribute [rw] region + # @return [::String] + # Output only. The URL of a region + # where the resize request is located. Populated only for regional resize + # requests. # @!attribute [rw] requested_run_duration # @return [::Google::Cloud::Compute::V1::Duration] # Requested run duration for instances that will be created by this request. @@ -30681,28 +31984,27 @@ class InstanceGroupManagerList # together with 'instances'. # @!attribute [rw] self_link # @return [::String] - # Output only. [Output Only] The URL for this resize request. The server defines - # this URL. + # Output only. The URL for this resize request. The server defines this URL. # @!attribute [rw] self_link_with_id # @return [::String] - # Output only. [Output Only] Server-defined URL for this resource with the resource id. + # Output only. Server-defined URL for this resource with the resource id. # @!attribute [rw] state # @return [::String] - # Output only. [Output only] Current state of the request. + # Output only. Current state of the request. # Check the State enum for the list of possible values. # @!attribute [rw] status # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequestStatus] - # Output only. [Output only] Status of the request. + # Output only. Status of the request. # @!attribute [rw] zone # @return [::String] - # Output only. [Output Only] The URL of azone + # Output only. The URL of a zone # where the resize request is located. Populated only for zonal resize # requests. class InstanceGroupManagerResizeRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods - # Output only. [Output only] Current state of the request. + # Output only. Current state of the request. module State # A value indicating that the enum field is not set. UNDEFINED_STATE = 0 @@ -30732,21 +32034,20 @@ module State # @!attribute [rw] error # @return [::Google::Cloud::Compute::V1::Error] - # Output only. [Output only] Fatal errors encountered during the queueing or - # provisioning phases of the ResizeRequest that caused the transition to - # the FAILED state. Contrary to the last_attempt errors, this field is - # final and errors are never removed from here, as the ResizeRequest is not - # going to retry. + # Output only. Fatal errors encountered during the queueing or provisioning phases of + # the ResizeRequest that caused the transition to the FAILED state. + # Contrary to the last_attempt errors, this field is final and errors are + # never removed from here, as the ResizeRequest is not going to retry. # @!attribute [rw] last_attempt # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequestStatusLastAttempt] - # Output only. [Output only] Information about the last attempt to fulfill the request. - # The value is temporary since the ResizeRequest can retry, as long as it's - # still active and the last attempt value can either be cleared or replaced - # with a different error. Since ResizeRequest retries infrequently, the - # value may be stale and no longer show an active problem. The value is - # cleared when ResizeRequest transitions to the final state (becomes - # inactive). If the final state is FAILED the error describing it will be - # storred in the "error" field only. + # Output only. Information about the last attempt to fulfill the request. The value is + # temporary since the ResizeRequest can retry, as long as it's still active + # and the last attempt value can either be cleared or replaced with a + # different error. Since ResizeRequest retries infrequently, the value may + # be stale and no longer show an active problem. The value is cleared when + # ResizeRequest transitions to the final state (becomes inactive). If the + # final state is FAILED the error describing it will be stored in the + # "error" field only. class InstanceGroupManagerResizeRequestStatus include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods @@ -30839,21 +32140,26 @@ module Mode # @!attribute [rw] all_instances_config # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerStatusAllInstancesConfig] - # Output only. [Output only] Status of all-instances configuration on the group. + # Output only. Status of all-instances configuration on the group. # @!attribute [rw] applied_accelerator_topologies # @return [::Array<::Google::Cloud::Compute::V1::InstanceGroupManagerStatusAcceleratorTopology>] - # Output only. [Output Only] The accelerator topology applied to this MIG. + # Output only. The accelerator topology applied to this MIG. # Currently only one accelerator topology is supported. # @!attribute [rw] autoscaler # @return [::String] - # Output only. [Output Only] The URL of theAutoscaler + # Output only. The URL of theAutoscaler # that targets this instance group manager. # @!attribute [rw] bulk_instance_operation # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerStatusBulkInstanceOperation] - # Output only. [Output Only] The status of bulk instance operation. + # Output only. The status of bulk instance operation. + # @!attribute [rw] current_instance_statuses + # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerStatusInstanceStatusSummary] + # Output only. The list of instance statuses and the number of instances + # in this managed instance group that have the status. Currently only shown + # for TPU MIGs # @!attribute [rw] is_stable # @return [::Boolean] - # Output only. [Output Only] A bit indicating whether the managed instance group is in a + # Output only. A bit indicating whether the managed instance group is in a # stable state. A stable state means that: none of the instances in the # managed instance group is currently undergoing any type of change (for # example, creation, restart, or deletion); no future changes are scheduled @@ -30861,10 +32167,10 @@ module Mode # group itself is not being modified. # @!attribute [rw] stateful # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerStatusStateful] - # Output only. [Output Only] Stateful status of the given Instance Group Manager. + # Output only. Stateful status of the given Instance Group Manager. # @!attribute [rw] version_target # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerStatusVersionTarget] - # Output only. [Output Only] A status of consistency of Instances' versions with their + # Output only. A status of consistency of Instances' versions with their # target version specified by version field on Instance Group # Manager. class InstanceGroupManagerStatus @@ -30874,21 +32180,21 @@ class InstanceGroupManagerStatus # @!attribute [rw] accelerator_topology # @return [::String] - # Output only. [Output Only] Topology in the format of: "16x16", "4x4x4", etc. + # Output only. Topology in the format of: "16x16", "4x4x4", etc. # The value is the same as configured in the WorkloadPolicy. # @!attribute [rw] state # @return [::String] - # Output only. [Output Only] The state of the accelerator topology. + # Output only. The state of the accelerator topology. # Check the State enum for the list of possible values. # @!attribute [rw] state_details # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails] - # Output only. [Output Only] The result of the latest accelerator topology state + # Output only. The result of the latest accelerator topology state # check. class InstanceGroupManagerStatusAcceleratorTopology include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods - # Output only. [Output Only] The state of the accelerator topology. + # Output only. The state of the accelerator topology. module State # A value indicating that the enum field is not set. UNDEFINED_STATE = 0 @@ -30916,10 +32222,10 @@ module State # @!attribute [rw] error # @return [::Google::Cloud::Compute::V1::Error] - # Output only. [Output Only] Encountered errors. + # Output only. Encountered errors. # @!attribute [rw] timestamp # @return [::String] - # Output only. [Output Only] Timestamp is shown only if there is an error. The field + # Output only. Timestamp is shown only if there is an error. The field # has // RFC3339 // # text format. class InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetails @@ -30929,11 +32235,11 @@ class InstanceGroupManagerStatusAcceleratorTopologyAcceleratorTopologyStateDetai # @!attribute [rw] current_revision # @return [::String] - # Output only. [Output Only] Current all-instances configuration revision. + # Output only. Current all-instances configuration revision. # This value is in RFC3339 text format. # @!attribute [rw] effective # @return [::Boolean] - # Output only. [Output Only] A bit indicating whether this configuration has + # Output only. A bit indicating whether this configuration has # been applied to all managed instances in the group. class InstanceGroupManagerStatusAllInstancesConfig include ::Google::Protobuf::MessageExts @@ -30944,10 +32250,10 @@ class InstanceGroupManagerStatusAllInstancesConfig # targetSizePolicy.mode is set to BULK. # @!attribute [rw] in_progress # @return [::Boolean] - # Output only. [Output Only] Informs whether bulk instance operation is in progress. + # Output only. Informs whether bulk instance operation is in progress. # @!attribute [rw] last_progress_check # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck] - # Output only. [Output Only] Information from the last progress check of bulk instance + # Output only. Information from the last progress check of bulk instance # operation. class InstanceGroupManagerStatusBulkInstanceOperation include ::Google::Protobuf::MessageExts @@ -30956,19 +32262,86 @@ class InstanceGroupManagerStatusBulkInstanceOperation # @!attribute [rw] error # @return [::Google::Cloud::Compute::V1::Error] - # Output only. [Output Only] Errors encountered during bulk instance operation. + # Output only. Errors encountered during bulk instance operation. # @!attribute [rw] timestamp # @return [::String] - # Output only. [Output Only] Timestamp of the last progress check of bulk instance + # Output only. Timestamp of the last progress check of bulk instance # operation. Timestamp is in RFC3339 text format. class InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end + # The list of instance statuses and the number of instances in this managed + # instance group that have the status. For more information about how to + # interpret each status check the instance lifecycle documentation. + # Currently only shown for TPU MIGs. + # @!attribute [rw] deprovisioning + # @return [::Integer] + # Output only. The number of instances in the managed instance group + # that have DEPROVISIONING status. + # @!attribute [rw] non_existent + # @return [::Integer] + # Output only. The number of instances that have not been created yet or + # have been deleted. Includes only instances that would be shown in the + # listManagedInstances method and not all instances that have been + # deleted in the lifetime of the MIG. + # Does not include FlexStart instances that are waiting for the resources + # availability, they are considered as 'pending'. + # @!attribute [rw] pending + # @return [::Integer] + # Output only. The number of instances in the managed instance group + # that have PENDING status, that is FlexStart instances that are waiting + # for resources. Instances that do not exist because of the other reasons + # are counted as 'non_existent'. + # @!attribute [rw] pending_stop + # @return [::Integer] + # Output only. The number of instances in the managed instance group + # that have PENDING_STOP status. + # @!attribute [rw] provisioning + # @return [::Integer] + # Output only. The number of instances in the managed instance group + # that have PROVISIONING status. + # @!attribute [rw] repairing + # @return [::Integer] + # Output only. The number of instances in the managed instance group + # that have REPAIRING status. + # @!attribute [rw] running + # @return [::Integer] + # Output only. The number of instances in the managed instance group + # that have RUNNING status. + # @!attribute [rw] staging + # @return [::Integer] + # Output only. The number of instances in the managed instance group + # that have STAGING status. + # @!attribute [rw] stopped + # @return [::Integer] + # Output only. The number of instances in the managed instance group + # that have STOPPED status. + # @!attribute [rw] stopping + # @return [::Integer] + # Output only. The number of instances in the managed instance group + # that have STOPPING status. + # @!attribute [rw] suspended + # @return [::Integer] + # Output only. The number of instances in the managed instance group + # that have SUSPENDED status. + # @!attribute [rw] suspending + # @return [::Integer] + # Output only. The number of instances in the managed instance group + # that have SUSPENDING status. + # @!attribute [rw] terminated + # @return [::Integer] + # Output only. The number of instances in the managed instance group + # that have TERMINATED status. + class InstanceGroupManagerStatusInstanceStatusSummary + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # @!attribute [rw] has_stateful_config # @return [::Boolean] - # Output only. [Output Only] A bit indicating whether the managed instance group + # Output only. A bit indicating whether the managed instance group # has stateful configuration, that is, if you have configured any items # in a stateful policy or in per-instance configs. # The group might report that it has no stateful configuration even when @@ -30976,7 +32349,7 @@ class InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck # if you have deleted all PICs but not yet applied those deletions. # @!attribute [rw] per_instance_configs # @return [::Google::Cloud::Compute::V1::InstanceGroupManagerStatusStatefulPerInstanceConfigs] - # Output only. [Output Only] Status of per-instance configurations on the instances. + # Output only. Status of per-instance configurations on the instances. class InstanceGroupManagerStatusStateful include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods @@ -30994,7 +32367,7 @@ class InstanceGroupManagerStatusStatefulPerInstanceConfigs # @!attribute [rw] is_reached # @return [::Boolean] - # Output only. [Output Only] A bit indicating whether version target has been reached + # Output only. A bit indicating whether version target has been reached # in this managed instance group, i.e. all instances are in their target # version. Instances' target version are specified byversion field on Instance Group Manager. class InstanceGroupManagerStatusVersionTarget @@ -32707,6 +34080,17 @@ class InstancesStartWithEncryptionKeyRequest # Output only. [Output Only] The ID value of the disk used to create this InstantSnapshot. # This value may be used to determine whether the InstantSnapshot # was taken from the current or a previous instance of a given disk name. + # @!attribute [rw] source_instant_snapshot_group + # @return [::String] + # Output only. [Output Only] URL of the source instant snapshot this instant snapshot is + # part of. Note that the source instant snapshot group must be in the same + # zone/region as the instant snapshot to be created. This can be a full or + # valid partial URL. + # @!attribute [rw] source_instant_snapshot_group_id + # @return [::String] + # Output only. [Output Only] The ID value of the source instant snapshot group this + # InstantSnapshot is part of. This value may be used to determine whether the + # InstantSnapshot was created as part of an InstantSnapshotGroup creation. # @!attribute [rw] status # @return [::String] # Output only. [Output Only] The status of the instantSnapshot. This can beCREATING, DELETING, FAILED, orREADY. @@ -32808,6 +34192,117 @@ class ItemsEntry end end + # Represents an InstantSnapshotGroup resource. + # + # An instant snapshot group is a set of instant snapshots that represents a + # point in time state of a consistency group. + # @!attribute [rw] creation_timestamp + # @return [::String] + # Output only. [Output Only] Creation timestamp inRFC3339 + # text format. + # @!attribute [rw] description + # @return [::String] + # Optional. An optional description of this resource. Provide this property when you + # create the resource. + # @!attribute [rw] id + # @return [::Integer] + # Output only. [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # @!attribute [rw] kind + # @return [::String] + # Output only. [Output Only] Type of the resource. Alwayscompute#instantSnapshotGroup for InstantSnapshotGroup + # resources. + # @!attribute [rw] name + # @return [::String] + # Identifier. Name of the resource; provided by the client when the resource is created. + # The name must be 1-63 characters long, and comply withRFC1035. + # Specifically, the name must be 1-63 characters long and match the regular + # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first + # character must be a lowercase letter, and all following characters must be + # a dash, lowercase letter, or digit, except the last character, which cannot + # be a dash. + # @!attribute [rw] region + # @return [::String] + # Output only. [Output Only] URL of the region where the instant snapshot group resides. + # You must specify this field as part of the HTTP request URL. It is + # not settable as a field in the request body. + # @!attribute [rw] resource_status + # @return [::Google::Cloud::Compute::V1::InstantSnapshotGroupResourceStatus] + # @!attribute [rw] self_link + # @return [::String] + # Output only. [Output Only] Server-defined URL for the resource. + # @!attribute [rw] self_link_with_id + # @return [::String] + # Output only. [Output Only] Server-defined URL for this resource's resource id. + # @!attribute [rw] source_consistency_group + # @return [::String] + # @!attribute [rw] status + # @return [::String] + # Output only. [Output Only] + # Check the Status enum for the list of possible values. + # @!attribute [rw] zone + # @return [::String] + # Output only. [Output Only] URL of the zone where the instant snapshot group resides. + # You must specify this field as part of the HTTP request URL. It is + # not settable as a field in the request body. + class InstantSnapshotGroup + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # Output only. [Output Only] + module Status + # A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0 + + CREATING = 455_564_985 + + DELETING = 528_602_024 + + FAILED = 455_706_685 + + INVALID = 530_283_991 + + READY = 77_848_963 + + UNKNOWN = 433_141_802 + end + end + + # @!attribute [rw] source_instant_snapshot_group + # @return [::String] + # The source instant snapshot group used to create disks. You can provide + # this as a partial or full URL to the resource. For example, the following + # are valid values: + # + # + # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/instantSnapshotGroups/instantSnapshotGroup + # - projects/project/zones/zone/instantSnapshotGroups/instantSnapshotGroup + # - zones/zone/instantSnapshotGroups/instantSnapshotGroup + class InstantSnapshotGroupParameters + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # @!attribute [rw] consistency_membership_resolution_time + # @return [::String] + # Output only. [Output Only] + # @!attribute [rw] source_info + # @return [::Google::Cloud::Compute::V1::InstantSnapshotGroupSourceInfo] + # Output only. [Output Only] + class InstantSnapshotGroupResourceStatus + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # @!attribute [rw] consistency_group + # @return [::String] + # @!attribute [rw] consistency_group_id + # @return [::String] + class InstantSnapshotGroupSourceInfo + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # Contains a list of InstantSnapshot resources. # @!attribute [rw] id # @return [::String] @@ -37058,9 +38553,1320 @@ class ListAutoscalersRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + class ListAvailableFeaturesRegionSslPoliciesRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for SslPolicies.ListAvailableFeatures. See the method description for details. + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + class ListAvailableFeaturesSslPoliciesRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for BackendBuckets.List. See the method description for details. + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + class ListBackendBucketsRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for BackendServices.List. See the method description for details. + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + class ListBackendServicesRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for Routers.ListBgpRoutes. See the method description for details. + # @!attribute [rw] address_family + # @return [::String] + # (Required) limit results to this address family (either IPv4 or IPv6) + # Check the AddressFamily enum for the list of possible values. + # @!attribute [rw] destination_prefix + # @return [::String] + # Limit results to destinations that are subnets of this CIDR range + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] peer + # @return [::String] + # (Required) limit results to the BGP peer with the given name. + # Name should conform to RFC1035. + # @!attribute [rw] policy_applied + # @return [::Boolean] + # When true, the method returns post-policy routes. Otherwise, it returns + # pre-policy routes. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @!attribute [rw] route_type + # @return [::String] + # (Required) limit results to this type of route (either LEARNED or + # ADVERTISED) + # Check the RouteType enum for the list of possible values. + # @!attribute [rw] router + # @return [::String] + # Name or id of the resource for this request. + # Name should conform to RFC1035. + class ListBgpRoutesRoutersRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # (Required) limit results to this address family (either IPv4 or IPv6) + module AddressFamily + # A value indicating that the enum field is not set. + UNDEFINED_ADDRESS_FAMILY = 0 + + IPV4 = 2_254_341 + + IPV6 = 2_254_343 + + UNSPECIFIED_IP_VERSION = 72_938_440 + end + + # (Required) limit results to this type of route (either LEARNED or + # ADVERTISED) + module RouteType + # A value indicating that the enum field is not set. + UNDEFINED_ROUTE_TYPE = 0 + + ADVERTISED = 20_302_109 + + LEARNED = 231_892_419 + + UNSPECIFIED_ROUTE_TYPE = 248_064_440 + end + end + + # A request message for CrossSiteNetworks.List. See the method description for details. + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + class ListCrossSiteNetworksRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for DiskTypes.List. See the method description for details. + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class ListDiskTypesRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for Disks.List. See the method description for details. + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class ListDisksRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for StoragePools.ListDisks. See the method description for details. + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @!attribute [rw] storage_pool + # @return [::String] + # Name of the storage pool to list disks of. + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class ListDisksStoragePoolsRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for InstanceGroupManagers.ListErrors. See the method description for details. + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] instance_group_manager + # @return [::String] + # The name of the managed instance group. + # It must be a string that meets the requirements in RFC1035, or an + # unsigned long integer: must match regexp pattern: + # (?:[a-z](?:[-a-z0-9]\\{0,61}[a-z0-9])?)|1-9\\{0,19}. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + # @!attribute [rw] zone + # @return [::String] + # The name of thezone where the managed + # instance group is located. + # It should conform to RFC1035. + class ListErrorsInstanceGroupManagersRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for RegionInstanceGroupManagers.ListErrors. See the method description for details. + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] instance_group_manager + # @return [::String] + # The name of the managed instance group. + # It must be a string that meets the requirements in RFC1035, or an + # unsigned long integer: must match regexp pattern: + # (?:[a-z](?:[-a-z0-9]\\{0,61}[a-z0-9])?)|1-9\\{0,19}. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. + # This should conform to RFC1035. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + class ListErrorsRegionInstanceGroupManagersRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for ExternalVpnGateways.List. See the method description for details. + # @!attribute [rw] filter + # @return [::String] + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + class ListExternalVpnGatewaysRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for FirewallPolicies.List. See the method description for details. + # @!attribute [rw] filter # @return [::String] - # Name of the region scoping this request. + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] parent_id + # @return [::String] + # Parent ID for this request. The ID can be either be "folders/[FOLDER_ID]" + # if the parent is a folder or "organizations/[ORGANIZATION_ID]" if the + # parent is an organization. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -37069,12 +39875,12 @@ class ListAutoscalersRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListAvailableFeaturesRegionSslPoliciesRequest + class ListFirewallPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for SslPolicies.ListAvailableFeatures. See the method description for details. + # A request message for Firewalls.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -37171,12 +39977,12 @@ class ListAvailableFeaturesRegionSslPoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListAvailableFeaturesSslPoliciesRequest + class ListFirewallsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for BackendBuckets.List. See the method description for details. + # A request message for ForwardingRules.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -37265,6 +40071,9 @@ class ListAvailableFeaturesSslPoliciesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -37273,12 +40082,12 @@ class ListAvailableFeaturesSslPoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListBackendBucketsRequest + class ListForwardingRulesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for BackendServices.List. See the method description for details. + # A request message for FutureReservations.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -37375,19 +40184,15 @@ class ListBackendBucketsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListBackendServicesRequest + # @!attribute [rw] zone + # @return [::String] + # Name of the zone for this request. Name should conform to RFC1035. + class ListFutureReservationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Routers.ListBgpRoutes. See the method description for details. - # @!attribute [rw] address_family - # @return [::String] - # (Required) limit results to this address family (either IPv4 or IPv6) - # Check the AddressFamily enum for the list of possible values. - # @!attribute [rw] destination_prefix - # @return [::String] - # Limit results to destinations that are subnets of this CIDR range + # A request message for GlobalAddresses.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -37473,20 +40278,9 @@ class ListBackendServicesRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. - # @!attribute [rw] peer - # @return [::String] - # (Required) limit results to the BGP peer with the given name. - # Name should conform to RFC1035. - # @!attribute [rw] policy_applied - # @return [::Boolean] - # When true, the method returns post-policy routes. Otherwise, it returns - # pre-policy routes. # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -37495,46 +40289,114 @@ class ListBackendServicesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] route_type + class ListGlobalAddressesRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for GlobalForwardingRules.List. See the method description for details. + # @!attribute [rw] filter # @return [::String] - # (Required) limit results to this type of route (either LEARNED or - # ADVERTISED) - # Check the RouteType enum for the list of possible values. - # @!attribute [rw] router + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by # @return [::String] - # Name or id of the resource for this request. - # Name should conform to RFC1035. - class ListBgpRoutesRoutersRequest + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + class ListGlobalForwardingRulesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods - - # (Required) limit results to this address family (either IPv4 or IPv6) - module AddressFamily - # A value indicating that the enum field is not set. - UNDEFINED_ADDRESS_FAMILY = 0 - - IPV4 = 2_254_341 - - IPV6 = 2_254_343 - - UNSPECIFIED_IP_VERSION = 72_938_440 - end - - # (Required) limit results to this type of route (either LEARNED or - # ADVERTISED) - module RouteType - # A value indicating that the enum field is not set. - UNDEFINED_ROUTE_TYPE = 0 - - ADVERTISED = 20_302_109 - - LEARNED = 231_892_419 - - UNSPECIFIED_ROUTE_TYPE = 248_064_440 - end end - # A request message for CrossSiteNetworks.List. See the method description for details. + # A request message for GlobalNetworkEndpointGroups.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -37631,12 +40493,12 @@ module RouteType # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListCrossSiteNetworksRequest + class ListGlobalNetworkEndpointGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for DiskTypes.List. See the method description for details. + # A request message for GlobalOperations.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -37733,15 +40595,12 @@ class ListCrossSiteNetworksRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of the zone for this request. - class ListDiskTypesRequest + class ListGlobalOperationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Disks.List. See the method description for details. + # A request message for GlobalOrganizationOperations.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -37827,9 +40686,9 @@ class ListDiskTypesRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. - # @!attribute [rw] project + # @!attribute [rw] parent_id # @return [::String] - # Project ID for this request. + # Parent ID for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -37838,15 +40697,12 @@ class ListDiskTypesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of the zone for this request. - class ListDisksRequest + class ListGlobalOrganizationOperationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for StoragePools.ListDisks. See the method description for details. + # A request message for GlobalPublicDelegatedPrefixes.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -37943,18 +40799,12 @@ class ListDisksRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] storage_pool - # @return [::String] - # Name of the storage pool to list disks of. - # @!attribute [rw] zone - # @return [::String] - # The name of the zone for this request. - class ListDisksStoragePoolsRequest + class ListGlobalPublicDelegatedPrefixesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InstanceGroupManagers.ListErrors. See the method description for details. + # A request message for HealthChecks.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -38015,12 +40865,6 @@ class ListDisksStoragePoolsRequest # # You cannot combine constraints on multiple fields using regular # expressions. - # @!attribute [rw] instance_group_manager - # @return [::String] - # The name of the managed instance group. - # It must be a string that meets the requirements in RFC1035, or an - # unsigned long integer: must match regexp pattern: - # (?:[a-z](?:[-a-z0-9]\\{0,61}[a-z0-9])?)|1-9\\{0,19}. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -38057,17 +40901,12 @@ class ListDisksStoragePoolsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of thezone where the managed - # instance group is located. - # It should conform to RFC1035. - class ListErrorsInstanceGroupManagersRequest + class ListHealthChecksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionInstanceGroupManagers.ListErrors. See the method description for details. + # A request message for Images.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -38128,12 +40967,6 @@ class ListErrorsInstanceGroupManagersRequest # # You cannot combine constraints on multiple fields using regular # expressions. - # @!attribute [rw] instance_group_manager - # @return [::String] - # The name of the managed instance group. - # It must be a string that meets the requirements in RFC1035, or an - # unsigned long integer: must match regexp pattern: - # (?:[a-z](?:[-a-z0-9]\\{0,61}[a-z0-9])?)|1-9\\{0,19}. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -38162,10 +40995,6 @@ class ListErrorsInstanceGroupManagersRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # Name of the region scoping this request. - # This should conform to RFC1035. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -38174,12 +41003,12 @@ class ListErrorsInstanceGroupManagersRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListErrorsRegionInstanceGroupManagersRequest + class ListImagesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for ExternalVpnGateways.List. See the method description for details. + # A request message for InstanceGroupManagerResizeRequests.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -38240,6 +41069,9 @@ class ListErrorsRegionInstanceGroupManagersRequest # # You cannot combine constraints on multiple fields using regular # expressions. + # @!attribute [rw] instance_group_manager + # @return [::String] + # The name of the managed instance group. The name should conform to RFC1035. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -38276,12 +41108,16 @@ class ListErrorsRegionInstanceGroupManagersRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListExternalVpnGatewaysRequest + # @!attribute [rw] zone + # @return [::String] + # The name of thezone where the managed + # instance group is located. The name should conform to RFC1035. + class ListInstanceGroupManagerResizeRequestsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for FirewallPolicies.List. See the method description for details. + # A request message for InstanceGroupManagers.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -38367,11 +41203,9 @@ class ListExternalVpnGatewaysRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. - # @!attribute [rw] parent_id + # @!attribute [rw] project # @return [::String] - # Parent ID for this request. The ID can be either be "folders/[FOLDER_ID]" - # if the parent is a folder or "organizations/[ORGANIZATION_ID]" if the - # parent is an organization. + # Project ID for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -38380,12 +41214,16 @@ class ListExternalVpnGatewaysRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListFirewallPoliciesRequest + # @!attribute [rw] zone + # @return [::String] + # The name of thezone where the managed + # instance group is located. + class ListInstanceGroupManagersRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Firewalls.List. See the method description for details. + # A request message for InstanceGroups.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -38482,12 +41320,16 @@ class ListFirewallPoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListFirewallsRequest + # @!attribute [rw] zone + # @return [::String] + # The name of thezone + # where the instance group is located. + class ListInstanceGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for ForwardingRules.List. See the method description for details. + # A request message for InstanceTemplates.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -38576,9 +41418,6 @@ class ListFirewallsRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -38587,12 +41426,12 @@ class ListFirewallsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListForwardingRulesRequest + class ListInstanceTemplatesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for FutureReservations.List. See the method description for details. + # A request message for InstanceGroups.ListInstances. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -38653,6 +41492,13 @@ class ListForwardingRulesRequest # # You cannot combine constraints on multiple fields using regular # expressions. + # @!attribute [rw] instance_group + # @return [::String] + # The name of the instance group from which you want to generate a list + # of included instances. + # @!attribute [rw] instance_groups_list_instances_request_resource + # @return [::Google::Cloud::Compute::V1::InstanceGroupsListInstancesRequest] + # The body resource for this request # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -38691,13 +41537,14 @@ class ListForwardingRulesRequest # with an error code. # @!attribute [rw] zone # @return [::String] - # Name of the zone for this request. Name should conform to RFC1035. - class ListFutureReservationsRequest + # The name of the zone + # where the instance group is located. + class ListInstancesInstanceGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for GlobalAddresses.List. See the method description for details. + # A request message for RegionInstanceGroups.ListInstances. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -38758,6 +41605,10 @@ class ListFutureReservationsRequest # # You cannot combine constraints on multiple fields using regular # expressions. + # @!attribute [rw] instance_group + # @return [::String] + # Name of the regional instance group for which we want to list the + # instances. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -38786,6 +41637,12 @@ class ListFutureReservationsRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. + # @!attribute [rw] region_instance_groups_list_instances_request_resource + # @return [::Google::Cloud::Compute::V1::RegionInstanceGroupsListInstancesRequest] + # The body resource for this request # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -38794,12 +41651,12 @@ class ListFutureReservationsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListGlobalAddressesRequest + class ListInstancesRegionInstanceGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for GlobalForwardingRules.List. See the method description for details. + # A request message for Instances.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -38896,114 +41753,49 @@ class ListGlobalAddressesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListGlobalForwardingRulesRequest + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class ListInstancesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for GlobalNetworkEndpointGroups.List. See the method description for details. - # @!attribute [rw] filter + # Contains a list of InstantSnapshotGroup resources. + # @!attribute [rw] etag # @return [::String] - # A filter expression that filters resources listed in the response. Most - # Compute resources support two types of filter expressions: - # expressions that support regular expressions and expressions that follow - # API improvement proposal AIP-160. - # These two types of filter expressions cannot be mixed in one request. - # - # If you want to use AIP-160, your expression must specify the field name, an - # operator, and the value that you want to use for filtering. The value - # must be a string, a number, or a boolean. The operator - # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. - # - # For example, if you are filtering Compute Engine instances, you can - # exclude instances named `example-instance` by specifying - # `name != example-instance`. - # - # The `:*` comparison can be used to test whether a key has been defined. - # For example, to find all objects with `owner` label use: - # ``` - # labels.owner:* - # ``` - # - # You can also filter nested fields. For example, you could specify - # `scheduling.automaticRestart = false` to include instances only - # if they are not scheduled for automatic restarts. You can use filtering - # on nested fields to filter based onresource labels. - # - # To filter on multiple expressions, provide each separate expression within - # parentheses. For example: - # ``` - # (scheduling.automaticRestart = true) - # (cpuPlatform = "Intel Skylake") - # ``` - # By default, each expression is an `AND` expression. However, you - # can include `AND` and `OR` expressions explicitly. - # For example: - # ``` - # (cpuPlatform = "Intel Skylake") OR - # (cpuPlatform = "Intel Broadwell") AND - # (scheduling.automaticRestart = true) - # ``` - # - # If you want to use a regular expression, use the `eq` (equal) or `ne` - # (not equal) operator against a single un-parenthesized expression with or - # without quotes or against multiple parenthesized expressions. Examples: - # - # `fieldname eq unquoted literal` - # `fieldname eq 'single quoted literal'` - # `fieldname eq "double quoted literal"` - # `(fieldname1 eq literal) (fieldname2 ne "literal")` - # - # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - # The literal value must match the entire field. - # - # For example, to filter for instances that do not end with name "instance", - # you would use `name ne .*instance`. - # - # You cannot combine constraints on multiple fields using regular - # expressions. - # @!attribute [rw] max_results - # @return [::Integer] - # The maximum number of results per page that should be returned. - # If the number of available results is larger than `maxResults`, - # Compute Engine returns a `nextPageToken` that can be used to get - # the next page of results in subsequent list requests. Acceptable values are - # `0` to `500`, inclusive. (Default: `500`) - # @!attribute [rw] order_by + # @!attribute [rw] id # @return [::String] - # Sorts list results by a certain order. By default, results - # are returned in alphanumerical order based on the resource name. - # - # You can also sort results in descending order based on the creation - # timestamp using `orderBy="creationTimestamp desc"`. This sorts - # results based on the `creationTimestamp` field in - # reverse chronological order (newest result first). Use this to sort - # resources like operations so that the newest operation is returned first. - # - # Currently, only sorting by `name` or - # `creationTimestamp desc` is supported. - # @!attribute [rw] page_token + # [Output Only] Unique identifier for the resource; defined by the server. + # @!attribute [rw] items + # @return [::Array<::Google::Cloud::Compute::V1::InstantSnapshotGroup>] + # A list of InstantSnapshotGroup resources. + # @!attribute [rw] kind # @return [::String] - # Specifies a page token to use. Set `pageToken` to the - # `nextPageToken` returned by a previous list request to get - # the next page of results. - # @!attribute [rw] project + # Output only. Type of resource. + # @!attribute [rw] next_page_token # @return [::String] - # Project ID for this request. - # @!attribute [rw] return_partial_success - # @return [::Boolean] - # Opt-in for partial success behavior which provides partial results in case - # of failure. The default value is false. - # - # For example, when partial success behavior is enabled, aggregatedList for a - # single zone scope either returns all resources in the zone or no resources, - # with an error code. - class ListGlobalNetworkEndpointGroupsRequest + # [Output Only] This token allows you to get the next page of results for + # list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + # the query parameter pageToken in the next list request. + # Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # @!attribute [rw] self_link + # @return [::String] + # Output only. [Output Only] Server-defined URL for this resource. + # @!attribute [rw] unreachables + # @return [::Array<::String>] + # Output only. [Output Only] Unreachable resources. + # end_interface: MixerListResponseWithEtagBuilder + # @!attribute [rw] warning + # @return [::Google::Cloud::Compute::V1::Warning] + # [Output Only] Informational warning message. + class ListInstantSnapshotGroups include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for GlobalOperations.List. See the method description for details. + # A request message for InstantSnapshotGroups.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -39100,114 +41892,15 @@ class ListGlobalNetworkEndpointGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListGlobalOperationsRequest + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class ListInstantSnapshotGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for GlobalOrganizationOperations.List. See the method description for details. - # @!attribute [rw] filter - # @return [::String] - # A filter expression that filters resources listed in the response. Most - # Compute resources support two types of filter expressions: - # expressions that support regular expressions and expressions that follow - # API improvement proposal AIP-160. - # These two types of filter expressions cannot be mixed in one request. - # - # If you want to use AIP-160, your expression must specify the field name, an - # operator, and the value that you want to use for filtering. The value - # must be a string, a number, or a boolean. The operator - # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. - # - # For example, if you are filtering Compute Engine instances, you can - # exclude instances named `example-instance` by specifying - # `name != example-instance`. - # - # The `:*` comparison can be used to test whether a key has been defined. - # For example, to find all objects with `owner` label use: - # ``` - # labels.owner:* - # ``` - # - # You can also filter nested fields. For example, you could specify - # `scheduling.automaticRestart = false` to include instances only - # if they are not scheduled for automatic restarts. You can use filtering - # on nested fields to filter based onresource labels. - # - # To filter on multiple expressions, provide each separate expression within - # parentheses. For example: - # ``` - # (scheduling.automaticRestart = true) - # (cpuPlatform = "Intel Skylake") - # ``` - # By default, each expression is an `AND` expression. However, you - # can include `AND` and `OR` expressions explicitly. - # For example: - # ``` - # (cpuPlatform = "Intel Skylake") OR - # (cpuPlatform = "Intel Broadwell") AND - # (scheduling.automaticRestart = true) - # ``` - # - # If you want to use a regular expression, use the `eq` (equal) or `ne` - # (not equal) operator against a single un-parenthesized expression with or - # without quotes or against multiple parenthesized expressions. Examples: - # - # `fieldname eq unquoted literal` - # `fieldname eq 'single quoted literal'` - # `fieldname eq "double quoted literal"` - # `(fieldname1 eq literal) (fieldname2 ne "literal")` - # - # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - # The literal value must match the entire field. - # - # For example, to filter for instances that do not end with name "instance", - # you would use `name ne .*instance`. - # - # You cannot combine constraints on multiple fields using regular - # expressions. - # @!attribute [rw] max_results - # @return [::Integer] - # The maximum number of results per page that should be returned. - # If the number of available results is larger than `maxResults`, - # Compute Engine returns a `nextPageToken` that can be used to get - # the next page of results in subsequent list requests. Acceptable values are - # `0` to `500`, inclusive. (Default: `500`) - # @!attribute [rw] order_by - # @return [::String] - # Sorts list results by a certain order. By default, results - # are returned in alphanumerical order based on the resource name. - # - # You can also sort results in descending order based on the creation - # timestamp using `orderBy="creationTimestamp desc"`. This sorts - # results based on the `creationTimestamp` field in - # reverse chronological order (newest result first). Use this to sort - # resources like operations so that the newest operation is returned first. - # - # Currently, only sorting by `name` or - # `creationTimestamp desc` is supported. - # @!attribute [rw] page_token - # @return [::String] - # Specifies a page token to use. Set `pageToken` to the - # `nextPageToken` returned by a previous list request to get - # the next page of results. - # @!attribute [rw] parent_id - # @return [::String] - # Parent ID for this request. - # @!attribute [rw] return_partial_success - # @return [::Boolean] - # Opt-in for partial success behavior which provides partial results in case - # of failure. The default value is false. - # - # For example, when partial success behavior is enabled, aggregatedList for a - # single zone scope either returns all resources in the zone or no resources, - # with an error code. - class ListGlobalOrganizationOperationsRequest - include ::Google::Protobuf::MessageExts - extend ::Google::Protobuf::MessageExts::ClassMethods - end - - # A request message for GlobalPublicDelegatedPrefixes.List. See the method description for details. + # A request message for InstantSnapshots.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -39304,12 +41997,15 @@ class ListGlobalOrganizationOperationsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListGlobalPublicDelegatedPrefixesRequest + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class ListInstantSnapshotsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for HealthChecks.List. See the method description for details. + # A request message for InterconnectAttachmentGroups.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -39406,12 +42102,12 @@ class ListGlobalPublicDelegatedPrefixesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListHealthChecksRequest + class ListInterconnectAttachmentGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Images.List. See the method description for details. + # A request message for InterconnectAttachments.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -39500,6 +42196,9 @@ class ListHealthChecksRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -39508,12 +42207,12 @@ class ListHealthChecksRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListImagesRequest + class ListInterconnectAttachmentsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InstanceGroupManagerResizeRequests.List. See the method description for details. + # A request message for InterconnectGroups.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -39574,9 +42273,6 @@ class ListImagesRequest # # You cannot combine constraints on multiple fields using regular # expressions. - # @!attribute [rw] instance_group_manager - # @return [::String] - # The name of the managed instance group. The name should conform to RFC1035. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -39613,16 +42309,12 @@ class ListImagesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of thezone where the managed - # instance group is located. The name should conform to RFC1035. - class ListInstanceGroupManagerResizeRequestsRequest + class ListInterconnectGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InstanceGroupManagers.List. See the method description for details. + # A request message for InterconnectLocations.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -39719,16 +42411,12 @@ class ListInstanceGroupManagerResizeRequestsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of thezone where the managed - # instance group is located. - class ListInstanceGroupManagersRequest + class ListInterconnectLocationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InstanceGroups.List. See the method description for details. + # A request message for InterconnectRemoteLocations.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -39825,16 +42513,12 @@ class ListInstanceGroupManagersRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of thezone - # where the instance group is located. - class ListInstanceGroupsRequest + class ListInterconnectRemoteLocationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InstanceTemplates.List. See the method description for details. + # A request message for Interconnects.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -39931,12 +42615,12 @@ class ListInstanceGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListInstanceTemplatesRequest + class ListInterconnectsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InstanceGroups.ListInstances. See the method description for details. + # A request message for Licenses.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -39997,13 +42681,6 @@ class ListInstanceTemplatesRequest # # You cannot combine constraints on multiple fields using regular # expressions. - # @!attribute [rw] instance_group - # @return [::String] - # The name of the instance group from which you want to generate a list - # of included instances. - # @!attribute [rw] instance_groups_list_instances_request_resource - # @return [::Google::Cloud::Compute::V1::InstanceGroupsListInstancesRequest] - # The body resource for this request # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -40040,16 +42717,12 @@ class ListInstanceTemplatesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of the zone - # where the instance group is located. - class ListInstancesInstanceGroupsRequest + class ListLicensesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionInstanceGroups.ListInstances. See the method description for details. + # A request message for MachineImages.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -40110,10 +42783,6 @@ class ListInstancesInstanceGroupsRequest # # You cannot combine constraints on multiple fields using regular # expressions. - # @!attribute [rw] instance_group - # @return [::String] - # Name of the regional instance group for which we want to list the - # instances. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -40142,12 +42811,6 @@ class ListInstancesInstanceGroupsRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # Name of the region scoping this request. - # @!attribute [rw] region_instance_groups_list_instances_request_resource - # @return [::Google::Cloud::Compute::V1::RegionInstanceGroupsListInstancesRequest] - # The body resource for this request # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -40156,12 +42819,12 @@ class ListInstancesInstanceGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListInstancesRegionInstanceGroupsRequest + class ListMachineImagesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Instances.List. See the method description for details. + # A request message for MachineTypes.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -40261,12 +42924,12 @@ class ListInstancesRegionInstanceGroupsRequest # @!attribute [rw] zone # @return [::String] # The name of the zone for this request. - class ListInstancesRequest + class ListMachineTypesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InstantSnapshots.List. See the method description for details. + # A request message for InstanceGroupManagers.ListManagedInstances. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -40327,6 +42990,9 @@ class ListInstancesRequest # # You cannot combine constraints on multiple fields using regular # expressions. + # @!attribute [rw] instance_group_manager + # @return [::String] + # The name of the managed instance group. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -40365,13 +43031,14 @@ class ListInstancesRequest # with an error code. # @!attribute [rw] zone # @return [::String] - # The name of the zone for this request. - class ListInstantSnapshotsRequest + # The name of thezone where the managed + # instance group is located. + class ListManagedInstancesInstanceGroupManagersRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InterconnectAttachmentGroups.List. See the method description for details. + # A request message for RegionInstanceGroupManagers.ListManagedInstances. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -40432,6 +43099,9 @@ class ListInstantSnapshotsRequest # # You cannot combine constraints on multiple fields using regular # expressions. + # @!attribute [rw] instance_group_manager + # @return [::String] + # The name of the managed instance group. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -40460,6 +43130,9 @@ class ListInstantSnapshotsRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -40468,12 +43141,12 @@ class ListInstantSnapshotsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListInterconnectAttachmentGroupsRequest + class ListManagedInstancesRegionInstanceGroupManagersRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InterconnectAttachments.List. See the method description for details. + # A request message for NetworkAttachments.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -40564,7 +43237,7 @@ class ListInterconnectAttachmentGroupsRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region for this request. + # Name of the region of this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -40573,12 +43246,12 @@ class ListInterconnectAttachmentGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListInterconnectAttachmentsRequest + class ListNetworkAttachmentsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InterconnectGroups.List. See the method description for details. + # A request message for NetworkEndpointGroups.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -40675,12 +43348,16 @@ class ListInterconnectAttachmentsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListInterconnectGroupsRequest + # @!attribute [rw] zone + # @return [::String] + # The name of thezone + # where the network endpoint group is located. It should comply with RFC1035. + class ListNetworkEndpointGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InterconnectLocations.List. See the method description for details. + # A request message for GlobalNetworkEndpointGroups.ListNetworkEndpoints. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -40748,6 +43425,10 @@ class ListInterconnectGroupsRequest # Compute Engine returns a `nextPageToken` that can be used to get # the next page of results in subsequent list requests. Acceptable values are # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] network_endpoint_group + # @return [::String] + # The name of the network endpoint group from which you want to generate a + # list of included network endpoints. It should comply with RFC1035. # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, results @@ -40777,12 +43458,12 @@ class ListInterconnectGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListInterconnectLocationsRequest + class ListNetworkEndpointsGlobalNetworkEndpointGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InterconnectRemoteLocations.List. See the method description for details. + # A request message for NetworkEndpointGroups.ListNetworkEndpoints. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -40850,6 +43531,13 @@ class ListInterconnectLocationsRequest # Compute Engine returns a `nextPageToken` that can be used to get # the next page of results in subsequent list requests. Acceptable values are # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] network_endpoint_group + # @return [::String] + # The name of the network endpoint group from which you want to generate a + # list of included network endpoints. It should comply with RFC1035. + # @!attribute [rw] network_endpoint_groups_list_endpoints_request_resource + # @return [::Google::Cloud::Compute::V1::NetworkEndpointGroupsListEndpointsRequest] + # The body resource for this request # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, results @@ -40879,12 +43567,16 @@ class ListInterconnectLocationsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListInterconnectRemoteLocationsRequest + # @!attribute [rw] zone + # @return [::String] + # The name of the zone where + # the network endpoint group is located. It should comply with RFC1035. + class ListNetworkEndpointsNetworkEndpointGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Interconnects.List. See the method description for details. + # A request message for RegionNetworkEndpointGroups.ListNetworkEndpoints. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -40952,6 +43644,10 @@ class ListInterconnectRemoteLocationsRequest # Compute Engine returns a `nextPageToken` that can be used to get # the next page of results in subsequent list requests. Acceptable values are # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] network_endpoint_group + # @return [::String] + # The name of the network endpoint group from which you want to generate a + # list of included network endpoints. It should comply with RFC1035. # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, results @@ -40973,6 +43669,10 @@ class ListInterconnectRemoteLocationsRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of theregion + # where the network endpoint group is located. It should comply with RFC1035. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -40981,12 +43681,12 @@ class ListInterconnectRemoteLocationsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListInterconnectsRequest + class ListNetworkEndpointsRegionNetworkEndpointGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Licenses.List. See the method description for details. + # A request message for NetworkFirewallPolicies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -41083,12 +43783,12 @@ class ListInterconnectsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListLicensesRequest + class ListNetworkFirewallPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for MachineImages.List. See the method description for details. + # A request message for NetworkProfiles.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -41185,12 +43885,12 @@ class ListLicensesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListMachineImagesRequest + class ListNetworkProfilesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for MachineTypes.List. See the method description for details. + # A request message for Networks.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -41287,15 +43987,12 @@ class ListMachineImagesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of the zone for this request. - class ListMachineTypesRequest + class ListNetworksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for InstanceGroupManagers.ListManagedInstances. See the method description for details. + # A request message for NodeGroups.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -41356,9 +44053,6 @@ class ListMachineTypesRequest # # You cannot combine constraints on multiple fields using regular # expressions. - # @!attribute [rw] instance_group_manager - # @return [::String] - # The name of the managed instance group. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -41397,14 +44091,13 @@ class ListMachineTypesRequest # with an error code. # @!attribute [rw] zone # @return [::String] - # The name of thezone where the managed - # instance group is located. - class ListManagedInstancesInstanceGroupManagersRequest + # The name of the zone for this request. + class ListNodeGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionInstanceGroupManagers.ListManagedInstances. See the method description for details. + # A request message for NodeTemplates.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -41465,9 +44158,6 @@ class ListManagedInstancesInstanceGroupManagersRequest # # You cannot combine constraints on multiple fields using regular # expressions. - # @!attribute [rw] instance_group_manager - # @return [::String] - # The name of the managed instance group. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -41498,7 +44188,7 @@ class ListManagedInstancesInstanceGroupManagersRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region scoping this request. + # The name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -41507,12 +44197,12 @@ class ListManagedInstancesInstanceGroupManagersRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListManagedInstancesRegionInstanceGroupManagersRequest + class ListNodeTemplatesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NetworkAttachments.List. See the method description for details. + # A request message for NodeTypes.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -41601,9 +44291,6 @@ class ListManagedInstancesRegionInstanceGroupManagersRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # Name of the region of this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -41612,12 +44299,15 @@ class ListManagedInstancesRegionInstanceGroupManagersRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListNetworkAttachmentsRequest + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class ListNodeTypesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NetworkEndpointGroups.List. See the method description for details. + # A request message for NodeGroups.ListNodes. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -41685,6 +44375,9 @@ class ListNetworkAttachmentsRequest # Compute Engine returns a `nextPageToken` that can be used to get # the next page of results in subsequent list requests. Acceptable values are # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] node_group + # @return [::String] + # Name of the NodeGroup resource whose nodes you want to list. # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, results @@ -41716,14 +44409,13 @@ class ListNetworkAttachmentsRequest # with an error code. # @!attribute [rw] zone # @return [::String] - # The name of thezone - # where the network endpoint group is located. It should comply with RFC1035. - class ListNetworkEndpointGroupsRequest + # The name of the zone for this request. + class ListNodesNodeGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for GlobalNetworkEndpointGroups.ListNetworkEndpoints. See the method description for details. + # A request message for OrganizationSecurityPolicies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -41791,10 +44483,6 @@ class ListNetworkEndpointGroupsRequest # Compute Engine returns a `nextPageToken` that can be used to get # the next page of results in subsequent list requests. Acceptable values are # `0` to `500`, inclusive. (Default: `500`) - # @!attribute [rw] network_endpoint_group - # @return [::String] - # The name of the network endpoint group from which you want to generate a - # list of included network endpoints. It should comply with RFC1035. # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, results @@ -41813,9 +44501,9 @@ class ListNetworkEndpointGroupsRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. - # @!attribute [rw] project + # @!attribute [rw] parent_id # @return [::String] - # Project ID for this request. + # Parent ID for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -41824,12 +44512,12 @@ class ListNetworkEndpointGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListNetworkEndpointsGlobalNetworkEndpointGroupsRequest + class ListOrganizationSecurityPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NetworkEndpointGroups.ListNetworkEndpoints. See the method description for details. + # A request message for PacketMirrorings.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -41897,13 +44585,6 @@ class ListNetworkEndpointsGlobalNetworkEndpointGroupsRequest # Compute Engine returns a `nextPageToken` that can be used to get # the next page of results in subsequent list requests. Acceptable values are # `0` to `500`, inclusive. (Default: `500`) - # @!attribute [rw] network_endpoint_group - # @return [::String] - # The name of the network endpoint group from which you want to generate a - # list of included network endpoints. It should comply with RFC1035. - # @!attribute [rw] network_endpoint_groups_list_endpoints_request_resource - # @return [::Google::Cloud::Compute::V1::NetworkEndpointGroupsListEndpointsRequest] - # The body resource for this request # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, results @@ -41925,6 +44606,9 @@ class ListNetworkEndpointsGlobalNetworkEndpointGroupsRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -41933,16 +44617,16 @@ class ListNetworkEndpointsGlobalNetworkEndpointGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of the zone where - # the network endpoint group is located. It should comply with RFC1035. - class ListNetworkEndpointsNetworkEndpointGroupsRequest + class ListPacketMirroringsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionNetworkEndpointGroups.ListNetworkEndpoints. See the method description for details. + # A request message for Networks.ListPeeringRoutes. See the method description for details. + # @!attribute [rw] direction + # @return [::String] + # The direction of the exchanged routes. + # Check the Direction enum for the list of possible values. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -42010,10 +44694,9 @@ class ListNetworkEndpointsNetworkEndpointGroupsRequest # Compute Engine returns a `nextPageToken` that can be used to get # the next page of results in subsequent list requests. Acceptable values are # `0` to `500`, inclusive. (Default: `500`) - # @!attribute [rw] network_endpoint_group + # @!attribute [rw] network # @return [::String] - # The name of the network endpoint group from which you want to generate a - # list of included network endpoints. It should comply with RFC1035. + # Name of the network for this request. # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, results @@ -42032,13 +44715,16 @@ class ListNetworkEndpointsNetworkEndpointGroupsRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. + # @!attribute [rw] peering_name + # @return [::String] + # The response will show routes exchanged over the given peering connection. # @!attribute [rw] project # @return [::String] # Project ID for this request. # @!attribute [rw] region # @return [::String] - # The name of theregion - # where the network endpoint group is located. It should comply with RFC1035. + # The region of the request. The response will include all subnet routes, + # static routes and dynamic routes in the region. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -42047,12 +44733,24 @@ class ListNetworkEndpointsNetworkEndpointGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListNetworkEndpointsRegionNetworkEndpointGroupsRequest + class ListPeeringRoutesNetworksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods + + # The direction of the exchanged routes. + module Direction + # A value indicating that the enum field is not set. + UNDEFINED_DIRECTION = 0 + + # For routes exported from peer network. + INCOMING = 338_552_870 + + # For routes exported from local network. + OUTGOING = 307_438_444 + end end - # A request message for NetworkFirewallPolicies.List. See the method description for details. + # A request message for InstanceGroupManagers.ListPerInstanceConfigs. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -42113,6 +44811,9 @@ class ListNetworkEndpointsRegionNetworkEndpointGroupsRequest # # You cannot combine constraints on multiple fields using regular # expressions. + # @!attribute [rw] instance_group_manager + # @return [::String] + # The name of the managed instance group. It should conform to RFC1035. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -42149,12 +44850,17 @@ class ListNetworkEndpointsRegionNetworkEndpointGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListNetworkFirewallPoliciesRequest + # @!attribute [rw] zone + # @return [::String] + # The name of thezone + # where the managed instance group is located. + # It should conform to RFC1035. + class ListPerInstanceConfigsInstanceGroupManagersRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NetworkProfiles.List. See the method description for details. + # A request message for RegionInstanceGroupManagers.ListPerInstanceConfigs. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -42215,6 +44921,9 @@ class ListNetworkFirewallPoliciesRequest # # You cannot combine constraints on multiple fields using regular # expressions. + # @!attribute [rw] instance_group_manager + # @return [::String] + # The name of the managed instance group. It should conform to RFC1035. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -42243,6 +44952,9 @@ class ListNetworkFirewallPoliciesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request, should conform to RFC1035. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -42251,12 +44963,12 @@ class ListNetworkFirewallPoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListNetworkProfilesRequest + class ListPerInstanceConfigsRegionInstanceGroupManagersRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Networks.List. See the method description for details. + # A request message for OrganizationSecurityPolicies.ListPreconfiguredExpressionSets. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -42342,9 +45054,9 @@ class ListNetworkProfilesRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. - # @!attribute [rw] project + # @!attribute [rw] parent_id # @return [::String] - # Project ID for this request. + # Parent ID for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -42353,12 +45065,12 @@ class ListNetworkProfilesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListNetworksRequest + class ListPreconfiguredExpressionSetsOrganizationSecurityPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NodeGroups.List. See the method description for details. + # A request message for SecurityPolicies.ListPreconfiguredExpressionSets. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -42455,15 +45167,12 @@ class ListNetworksRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of the zone for this request. - class ListNodeGroupsRequest + class ListPreconfiguredExpressionSetsSecurityPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NodeTemplates.List. See the method description for details. + # A request message for PreviewFeatures.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -42552,9 +45261,6 @@ class ListNodeGroupsRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # The name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -42563,12 +45269,12 @@ class ListNodeGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListNodeTemplatesRequest + class ListPreviewFeaturesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NodeTypes.List. See the method description for details. + # A request message for PublicAdvertisedPrefixes.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -42665,15 +45371,12 @@ class ListNodeTemplatesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of the zone for this request. - class ListNodeTypesRequest + class ListPublicAdvertisedPrefixesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for NodeGroups.ListNodes. See the method description for details. + # A request message for PublicDelegatedPrefixes.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -42741,9 +45444,6 @@ class ListNodeTypesRequest # Compute Engine returns a `nextPageToken` that can be used to get # the next page of results in subsequent list requests. Acceptable values are # `0` to `500`, inclusive. (Default: `500`) - # @!attribute [rw] node_group - # @return [::String] - # Name of the NodeGroup resource whose nodes you want to list. # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, results @@ -42765,6 +45465,9 @@ class ListNodeTypesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region of this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -42773,15 +45476,12 @@ class ListNodeTypesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of the zone for this request. - class ListNodesNodeGroupsRequest + class ListPublicDelegatedPrefixesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for OrganizationSecurityPolicies.List. See the method description for details. + # A request message for Instances.ListReferrers. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -42842,6 +45542,10 @@ class ListNodesNodeGroupsRequest # # You cannot combine constraints on multiple fields using regular # expressions. + # @!attribute [rw] instance + # @return [::String] + # Name of the target instance scoping this request, or '-' if the + # request should span over all instances in the container. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -42867,9 +45571,9 @@ class ListNodesNodeGroupsRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. - # @!attribute [rw] parent_id + # @!attribute [rw] project # @return [::String] - # Parent ID for this request. + # Project ID for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -42878,12 +45582,15 @@ class ListNodesNodeGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListOrganizationSecurityPoliciesRequest + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class ListReferrersInstancesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for PacketMirrorings.List. See the method description for details. + # A request message for RegionAutoscalers.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -42974,7 +45681,7 @@ class ListOrganizationSecurityPoliciesRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region for this request. + # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -42983,16 +45690,12 @@ class ListOrganizationSecurityPoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListPacketMirroringsRequest + class ListRegionAutoscalersRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Networks.ListPeeringRoutes. See the method description for details. - # @!attribute [rw] direction - # @return [::String] - # The direction of the exchanged routes. - # Check the Direction enum for the list of possible values. + # A request message for RegionBackendBuckets.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -43060,9 +45763,6 @@ class ListPacketMirroringsRequest # Compute Engine returns a `nextPageToken` that can be used to get # the next page of results in subsequent list requests. Acceptable values are # `0` to `500`, inclusive. (Default: `500`) - # @!attribute [rw] network - # @return [::String] - # Name of the network for this request. # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, results @@ -43081,16 +45781,12 @@ class ListPacketMirroringsRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. - # @!attribute [rw] peering_name - # @return [::String] - # The response will show routes exchanged over the given peering connection. # @!attribute [rw] project # @return [::String] # Project ID for this request. # @!attribute [rw] region # @return [::String] - # The region of the request. The response will include all subnet routes, - # static routes and dynamic routes in the region. + # Name of the region of this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -43099,24 +45795,12 @@ class ListPacketMirroringsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListPeeringRoutesNetworksRequest + class ListRegionBackendBucketsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods - - # The direction of the exchanged routes. - module Direction - # A value indicating that the enum field is not set. - UNDEFINED_DIRECTION = 0 - - # For routes exported from peer network. - INCOMING = 338_552_870 - - # For routes exported from local network. - OUTGOING = 307_438_444 - end end - # A request message for InstanceGroupManagers.ListPerInstanceConfigs. See the method description for details. + # A request message for RegionBackendServices.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -43177,9 +45861,6 @@ module Direction # # You cannot combine constraints on multiple fields using regular # expressions. - # @!attribute [rw] instance_group_manager - # @return [::String] - # The name of the managed instance group. It should conform to RFC1035. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -43208,6 +45889,9 @@ module Direction # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -43216,17 +45900,12 @@ module Direction # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of thezone - # where the managed instance group is located. - # It should conform to RFC1035. - class ListPerInstanceConfigsInstanceGroupManagersRequest + class ListRegionBackendServicesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionInstanceGroupManagers.ListPerInstanceConfigs. See the method description for details. + # A request message for RegionCommitments.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -43287,9 +45966,6 @@ class ListPerInstanceConfigsInstanceGroupManagersRequest # # You cannot combine constraints on multiple fields using regular # expressions. - # @!attribute [rw] instance_group_manager - # @return [::String] - # The name of the managed instance group. It should conform to RFC1035. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -43320,7 +45996,7 @@ class ListPerInstanceConfigsInstanceGroupManagersRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region scoping this request, should conform to RFC1035. + # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -43329,12 +46005,12 @@ class ListPerInstanceConfigsInstanceGroupManagersRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListPerInstanceConfigsRegionInstanceGroupManagersRequest + class ListRegionCommitmentsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for OrganizationSecurityPolicies.ListPreconfiguredExpressionSets. See the method description for details. + # A request message for RegionCompositeHealthChecks.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -43420,9 +46096,12 @@ class ListPerInstanceConfigsRegionInstanceGroupManagersRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. - # @!attribute [rw] parent_id + # @!attribute [rw] project # @return [::String] - # Parent ID for this request. + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -43431,12 +46110,12 @@ class ListPerInstanceConfigsRegionInstanceGroupManagersRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListPreconfiguredExpressionSetsOrganizationSecurityPoliciesRequest + class ListRegionCompositeHealthChecksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for SecurityPolicies.ListPreconfiguredExpressionSets. See the method description for details. + # A request message for RegionDiskTypes.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -43525,6 +46204,9 @@ class ListPreconfiguredExpressionSetsOrganizationSecurityPoliciesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -43533,12 +46215,12 @@ class ListPreconfiguredExpressionSetsOrganizationSecurityPoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListPreconfiguredExpressionSetsSecurityPoliciesRequest + class ListRegionDiskTypesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for PreviewFeatures.List. See the method description for details. + # A request message for RegionDisks.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -43627,108 +46309,9 @@ class ListPreconfiguredExpressionSetsSecurityPoliciesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] return_partial_success - # @return [::Boolean] - # Opt-in for partial success behavior which provides partial results in case - # of failure. The default value is false. - # - # For example, when partial success behavior is enabled, aggregatedList for a - # single zone scope either returns all resources in the zone or no resources, - # with an error code. - class ListPreviewFeaturesRequest - include ::Google::Protobuf::MessageExts - extend ::Google::Protobuf::MessageExts::ClassMethods - end - - # A request message for PublicAdvertisedPrefixes.List. See the method description for details. - # @!attribute [rw] filter - # @return [::String] - # A filter expression that filters resources listed in the response. Most - # Compute resources support two types of filter expressions: - # expressions that support regular expressions and expressions that follow - # API improvement proposal AIP-160. - # These two types of filter expressions cannot be mixed in one request. - # - # If you want to use AIP-160, your expression must specify the field name, an - # operator, and the value that you want to use for filtering. The value - # must be a string, a number, or a boolean. The operator - # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. - # - # For example, if you are filtering Compute Engine instances, you can - # exclude instances named `example-instance` by specifying - # `name != example-instance`. - # - # The `:*` comparison can be used to test whether a key has been defined. - # For example, to find all objects with `owner` label use: - # ``` - # labels.owner:* - # ``` - # - # You can also filter nested fields. For example, you could specify - # `scheduling.automaticRestart = false` to include instances only - # if they are not scheduled for automatic restarts. You can use filtering - # on nested fields to filter based onresource labels. - # - # To filter on multiple expressions, provide each separate expression within - # parentheses. For example: - # ``` - # (scheduling.automaticRestart = true) - # (cpuPlatform = "Intel Skylake") - # ``` - # By default, each expression is an `AND` expression. However, you - # can include `AND` and `OR` expressions explicitly. - # For example: - # ``` - # (cpuPlatform = "Intel Skylake") OR - # (cpuPlatform = "Intel Broadwell") AND - # (scheduling.automaticRestart = true) - # ``` - # - # If you want to use a regular expression, use the `eq` (equal) or `ne` - # (not equal) operator against a single un-parenthesized expression with or - # without quotes or against multiple parenthesized expressions. Examples: - # - # `fieldname eq unquoted literal` - # `fieldname eq 'single quoted literal'` - # `fieldname eq "double quoted literal"` - # `(fieldname1 eq literal) (fieldname2 ne "literal")` - # - # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - # The literal value must match the entire field. - # - # For example, to filter for instances that do not end with name "instance", - # you would use `name ne .*instance`. - # - # You cannot combine constraints on multiple fields using regular - # expressions. - # @!attribute [rw] max_results - # @return [::Integer] - # The maximum number of results per page that should be returned. - # If the number of available results is larger than `maxResults`, - # Compute Engine returns a `nextPageToken` that can be used to get - # the next page of results in subsequent list requests. Acceptable values are - # `0` to `500`, inclusive. (Default: `500`) - # @!attribute [rw] order_by - # @return [::String] - # Sorts list results by a certain order. By default, results - # are returned in alphanumerical order based on the resource name. - # - # You can also sort results in descending order based on the creation - # timestamp using `orderBy="creationTimestamp desc"`. This sorts - # results based on the `creationTimestamp` field in - # reverse chronological order (newest result first). Use this to sort - # resources like operations so that the newest operation is returned first. - # - # Currently, only sorting by `name` or - # `creationTimestamp desc` is supported. - # @!attribute [rw] page_token - # @return [::String] - # Specifies a page token to use. Set `pageToken` to the - # `nextPageToken` returned by a previous list request to get - # the next page of results. - # @!attribute [rw] project + # @!attribute [rw] region # @return [::String] - # Project ID for this request. + # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -43737,12 +46320,12 @@ class ListPreviewFeaturesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListPublicAdvertisedPrefixesRequest + class ListRegionDisksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for PublicDelegatedPrefixes.List. See the method description for details. + # A request message for RegionHealthAggregationPolicies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -43833,113 +46416,7 @@ class ListPublicAdvertisedPrefixesRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region of this request. - # @!attribute [rw] return_partial_success - # @return [::Boolean] - # Opt-in for partial success behavior which provides partial results in case - # of failure. The default value is false. - # - # For example, when partial success behavior is enabled, aggregatedList for a - # single zone scope either returns all resources in the zone or no resources, - # with an error code. - class ListPublicDelegatedPrefixesRequest - include ::Google::Protobuf::MessageExts - extend ::Google::Protobuf::MessageExts::ClassMethods - end - - # A request message for Instances.ListReferrers. See the method description for details. - # @!attribute [rw] filter - # @return [::String] - # A filter expression that filters resources listed in the response. Most - # Compute resources support two types of filter expressions: - # expressions that support regular expressions and expressions that follow - # API improvement proposal AIP-160. - # These two types of filter expressions cannot be mixed in one request. - # - # If you want to use AIP-160, your expression must specify the field name, an - # operator, and the value that you want to use for filtering. The value - # must be a string, a number, or a boolean. The operator - # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. - # - # For example, if you are filtering Compute Engine instances, you can - # exclude instances named `example-instance` by specifying - # `name != example-instance`. - # - # The `:*` comparison can be used to test whether a key has been defined. - # For example, to find all objects with `owner` label use: - # ``` - # labels.owner:* - # ``` - # - # You can also filter nested fields. For example, you could specify - # `scheduling.automaticRestart = false` to include instances only - # if they are not scheduled for automatic restarts. You can use filtering - # on nested fields to filter based onresource labels. - # - # To filter on multiple expressions, provide each separate expression within - # parentheses. For example: - # ``` - # (scheduling.automaticRestart = true) - # (cpuPlatform = "Intel Skylake") - # ``` - # By default, each expression is an `AND` expression. However, you - # can include `AND` and `OR` expressions explicitly. - # For example: - # ``` - # (cpuPlatform = "Intel Skylake") OR - # (cpuPlatform = "Intel Broadwell") AND - # (scheduling.automaticRestart = true) - # ``` - # - # If you want to use a regular expression, use the `eq` (equal) or `ne` - # (not equal) operator against a single un-parenthesized expression with or - # without quotes or against multiple parenthesized expressions. Examples: - # - # `fieldname eq unquoted literal` - # `fieldname eq 'single quoted literal'` - # `fieldname eq "double quoted literal"` - # `(fieldname1 eq literal) (fieldname2 ne "literal")` - # - # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - # The literal value must match the entire field. - # - # For example, to filter for instances that do not end with name "instance", - # you would use `name ne .*instance`. - # - # You cannot combine constraints on multiple fields using regular - # expressions. - # @!attribute [rw] instance - # @return [::String] - # Name of the target instance scoping this request, or '-' if the - # request should span over all instances in the container. - # @!attribute [rw] max_results - # @return [::Integer] - # The maximum number of results per page that should be returned. - # If the number of available results is larger than `maxResults`, - # Compute Engine returns a `nextPageToken` that can be used to get - # the next page of results in subsequent list requests. Acceptable values are - # `0` to `500`, inclusive. (Default: `500`) - # @!attribute [rw] order_by - # @return [::String] - # Sorts list results by a certain order. By default, results - # are returned in alphanumerical order based on the resource name. - # - # You can also sort results in descending order based on the creation - # timestamp using `orderBy="creationTimestamp desc"`. This sorts - # results based on the `creationTimestamp` field in - # reverse chronological order (newest result first). Use this to sort - # resources like operations so that the newest operation is returned first. - # - # Currently, only sorting by `name` or - # `creationTimestamp desc` is supported. - # @!attribute [rw] page_token - # @return [::String] - # Specifies a page token to use. Set `pageToken` to the - # `nextPageToken` returned by a previous list request to get - # the next page of results. - # @!attribute [rw] project - # @return [::String] - # Project ID for this request. + # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -43948,15 +46425,12 @@ class ListPublicDelegatedPrefixesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of the zone for this request. - class ListReferrersInstancesRequest + class ListRegionHealthAggregationPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionAutoscalers.List. See the method description for details. + # A request message for RegionHealthCheckServices.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -44056,12 +46530,12 @@ class ListReferrersInstancesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionAutoscalersRequest + class ListRegionHealthCheckServicesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionBackendServices.List. See the method description for details. + # A request message for RegionHealthChecks.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -44161,12 +46635,12 @@ class ListRegionAutoscalersRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionBackendServicesRequest + class ListRegionHealthChecksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionCommitments.List. See the method description for details. + # A request message for RegionHealthSources.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -44257,7 +46731,7 @@ class ListRegionBackendServicesRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region for this request. + # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -44266,12 +46740,12 @@ class ListRegionBackendServicesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionCommitmentsRequest + class ListRegionHealthSourcesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionCompositeHealthChecks.List. See the method description for details. + # A request message for RegionInstanceGroupManagerResizeRequests.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -44332,6 +46806,9 @@ class ListRegionCommitmentsRequest # # You cannot combine constraints on multiple fields using regular # expressions. + # @!attribute [rw] instance_group_manager + # @return [::String] + # The name of the managed instance group. The name should conform to RFC1035. # @!attribute [rw] max_results # @return [::Integer] # The maximum number of results per page that should be returned. @@ -44362,7 +46839,8 @@ class ListRegionCommitmentsRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region scoping this request. + # Name of the region + # scoping this request. Name should conform to RFC1035. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -44371,12 +46849,12 @@ class ListRegionCommitmentsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionCompositeHealthChecksRequest + class ListRegionInstanceGroupManagerResizeRequestsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionDiskTypes.List. See the method description for details. + # A request message for RegionInstanceGroupManagers.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -44467,7 +46945,7 @@ class ListRegionCompositeHealthChecksRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # The name of the region for this request. + # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -44476,12 +46954,12 @@ class ListRegionCompositeHealthChecksRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionDiskTypesRequest + class ListRegionInstanceGroupManagersRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionDisks.List. See the method description for details. + # A request message for RegionInstanceGroups.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -44572,7 +47050,7 @@ class ListRegionDiskTypesRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region for this request. + # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -44581,12 +47059,12 @@ class ListRegionDiskTypesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionDisksRequest + class ListRegionInstanceGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionHealthAggregationPolicies.List. See the method description for details. + # A request message for RegionInstanceTemplates.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -44677,7 +47155,7 @@ class ListRegionDisksRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region scoping this request. + # The name of the regions for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -44686,12 +47164,12 @@ class ListRegionDisksRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionHealthAggregationPoliciesRequest + class ListRegionInstanceTemplatesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionHealthCheckServices.List. See the method description for details. + # A request message for RegionInstantSnapshotGroups.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -44782,7 +47260,7 @@ class ListRegionHealthAggregationPoliciesRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region scoping this request. + # The name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -44791,12 +47269,12 @@ class ListRegionHealthAggregationPoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionHealthCheckServicesRequest + class ListRegionInstantSnapshotGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionHealthChecks.List. See the method description for details. + # A request message for RegionInstantSnapshots.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -44887,7 +47365,7 @@ class ListRegionHealthCheckServicesRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region scoping this request. + # The name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -44896,12 +47374,12 @@ class ListRegionHealthCheckServicesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionHealthChecksRequest + class ListRegionInstantSnapshotsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionHealthSources.List. See the method description for details. + # A request message for RegionNetworkEndpointGroups.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -44992,7 +47470,8 @@ class ListRegionHealthChecksRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region scoping this request. + # The name of theregion + # where the network endpoint group is located. It should comply with RFC1035. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -45001,12 +47480,12 @@ class ListRegionHealthChecksRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionHealthSourcesRequest + class ListRegionNetworkEndpointGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionInstanceGroupManagers.List. See the method description for details. + # A request message for RegionNetworkFirewallPolicies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -45106,12 +47585,12 @@ class ListRegionHealthSourcesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionInstanceGroupManagersRequest + class ListRegionNetworkFirewallPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionInstanceGroups.List. See the method description for details. + # A request message for RegionNotificationEndpoints.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -45211,222 +47690,12 @@ class ListRegionInstanceGroupManagersRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionInstanceGroupsRequest - include ::Google::Protobuf::MessageExts - extend ::Google::Protobuf::MessageExts::ClassMethods - end - - # A request message for RegionInstanceTemplates.List. See the method description for details. - # @!attribute [rw] filter - # @return [::String] - # A filter expression that filters resources listed in the response. Most - # Compute resources support two types of filter expressions: - # expressions that support regular expressions and expressions that follow - # API improvement proposal AIP-160. - # These two types of filter expressions cannot be mixed in one request. - # - # If you want to use AIP-160, your expression must specify the field name, an - # operator, and the value that you want to use for filtering. The value - # must be a string, a number, or a boolean. The operator - # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. - # - # For example, if you are filtering Compute Engine instances, you can - # exclude instances named `example-instance` by specifying - # `name != example-instance`. - # - # The `:*` comparison can be used to test whether a key has been defined. - # For example, to find all objects with `owner` label use: - # ``` - # labels.owner:* - # ``` - # - # You can also filter nested fields. For example, you could specify - # `scheduling.automaticRestart = false` to include instances only - # if they are not scheduled for automatic restarts. You can use filtering - # on nested fields to filter based onresource labels. - # - # To filter on multiple expressions, provide each separate expression within - # parentheses. For example: - # ``` - # (scheduling.automaticRestart = true) - # (cpuPlatform = "Intel Skylake") - # ``` - # By default, each expression is an `AND` expression. However, you - # can include `AND` and `OR` expressions explicitly. - # For example: - # ``` - # (cpuPlatform = "Intel Skylake") OR - # (cpuPlatform = "Intel Broadwell") AND - # (scheduling.automaticRestart = true) - # ``` - # - # If you want to use a regular expression, use the `eq` (equal) or `ne` - # (not equal) operator against a single un-parenthesized expression with or - # without quotes or against multiple parenthesized expressions. Examples: - # - # `fieldname eq unquoted literal` - # `fieldname eq 'single quoted literal'` - # `fieldname eq "double quoted literal"` - # `(fieldname1 eq literal) (fieldname2 ne "literal")` - # - # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - # The literal value must match the entire field. - # - # For example, to filter for instances that do not end with name "instance", - # you would use `name ne .*instance`. - # - # You cannot combine constraints on multiple fields using regular - # expressions. - # @!attribute [rw] max_results - # @return [::Integer] - # The maximum number of results per page that should be returned. - # If the number of available results is larger than `maxResults`, - # Compute Engine returns a `nextPageToken` that can be used to get - # the next page of results in subsequent list requests. Acceptable values are - # `0` to `500`, inclusive. (Default: `500`) - # @!attribute [rw] order_by - # @return [::String] - # Sorts list results by a certain order. By default, results - # are returned in alphanumerical order based on the resource name. - # - # You can also sort results in descending order based on the creation - # timestamp using `orderBy="creationTimestamp desc"`. This sorts - # results based on the `creationTimestamp` field in - # reverse chronological order (newest result first). Use this to sort - # resources like operations so that the newest operation is returned first. - # - # Currently, only sorting by `name` or - # `creationTimestamp desc` is supported. - # @!attribute [rw] page_token - # @return [::String] - # Specifies a page token to use. Set `pageToken` to the - # `nextPageToken` returned by a previous list request to get - # the next page of results. - # @!attribute [rw] project - # @return [::String] - # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # The name of the regions for this request. - # @!attribute [rw] return_partial_success - # @return [::Boolean] - # Opt-in for partial success behavior which provides partial results in case - # of failure. The default value is false. - # - # For example, when partial success behavior is enabled, aggregatedList for a - # single zone scope either returns all resources in the zone or no resources, - # with an error code. - class ListRegionInstanceTemplatesRequest - include ::Google::Protobuf::MessageExts - extend ::Google::Protobuf::MessageExts::ClassMethods - end - - # A request message for RegionInstantSnapshots.List. See the method description for details. - # @!attribute [rw] filter - # @return [::String] - # A filter expression that filters resources listed in the response. Most - # Compute resources support two types of filter expressions: - # expressions that support regular expressions and expressions that follow - # API improvement proposal AIP-160. - # These two types of filter expressions cannot be mixed in one request. - # - # If you want to use AIP-160, your expression must specify the field name, an - # operator, and the value that you want to use for filtering. The value - # must be a string, a number, or a boolean. The operator - # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. - # - # For example, if you are filtering Compute Engine instances, you can - # exclude instances named `example-instance` by specifying - # `name != example-instance`. - # - # The `:*` comparison can be used to test whether a key has been defined. - # For example, to find all objects with `owner` label use: - # ``` - # labels.owner:* - # ``` - # - # You can also filter nested fields. For example, you could specify - # `scheduling.automaticRestart = false` to include instances only - # if they are not scheduled for automatic restarts. You can use filtering - # on nested fields to filter based onresource labels. - # - # To filter on multiple expressions, provide each separate expression within - # parentheses. For example: - # ``` - # (scheduling.automaticRestart = true) - # (cpuPlatform = "Intel Skylake") - # ``` - # By default, each expression is an `AND` expression. However, you - # can include `AND` and `OR` expressions explicitly. - # For example: - # ``` - # (cpuPlatform = "Intel Skylake") OR - # (cpuPlatform = "Intel Broadwell") AND - # (scheduling.automaticRestart = true) - # ``` - # - # If you want to use a regular expression, use the `eq` (equal) or `ne` - # (not equal) operator against a single un-parenthesized expression with or - # without quotes or against multiple parenthesized expressions. Examples: - # - # `fieldname eq unquoted literal` - # `fieldname eq 'single quoted literal'` - # `fieldname eq "double quoted literal"` - # `(fieldname1 eq literal) (fieldname2 ne "literal")` - # - # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - # The literal value must match the entire field. - # - # For example, to filter for instances that do not end with name "instance", - # you would use `name ne .*instance`. - # - # You cannot combine constraints on multiple fields using regular - # expressions. - # @!attribute [rw] max_results - # @return [::Integer] - # The maximum number of results per page that should be returned. - # If the number of available results is larger than `maxResults`, - # Compute Engine returns a `nextPageToken` that can be used to get - # the next page of results in subsequent list requests. Acceptable values are - # `0` to `500`, inclusive. (Default: `500`) - # @!attribute [rw] order_by - # @return [::String] - # Sorts list results by a certain order. By default, results - # are returned in alphanumerical order based on the resource name. - # - # You can also sort results in descending order based on the creation - # timestamp using `orderBy="creationTimestamp desc"`. This sorts - # results based on the `creationTimestamp` field in - # reverse chronological order (newest result first). Use this to sort - # resources like operations so that the newest operation is returned first. - # - # Currently, only sorting by `name` or - # `creationTimestamp desc` is supported. - # @!attribute [rw] page_token - # @return [::String] - # Specifies a page token to use. Set `pageToken` to the - # `nextPageToken` returned by a previous list request to get - # the next page of results. - # @!attribute [rw] project - # @return [::String] - # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # The name of the region for this request. - # @!attribute [rw] return_partial_success - # @return [::Boolean] - # Opt-in for partial success behavior which provides partial results in case - # of failure. The default value is false. - # - # For example, when partial success behavior is enabled, aggregatedList for a - # single zone scope either returns all resources in the zone or no resources, - # with an error code. - class ListRegionInstantSnapshotsRequest + class ListRegionNotificationEndpointsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionNetworkEndpointGroups.List. See the method description for details. + # A request message for RegionOperations.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -45517,8 +47786,7 @@ class ListRegionInstantSnapshotsRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # The name of theregion - # where the network endpoint group is located. It should comply with RFC1035. + # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -45527,12 +47795,12 @@ class ListRegionInstantSnapshotsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionNetworkEndpointGroupsRequest + class ListRegionOperationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionNetworkFirewallPolicies.List. See the method description for details. + # A request message for RegionSecurityPolicies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -45632,12 +47900,12 @@ class ListRegionNetworkEndpointGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionNetworkFirewallPoliciesRequest + class ListRegionSecurityPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionNotificationEndpoints.List. See the method description for details. + # A request message for RegionSnapshots.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -45728,7 +47996,7 @@ class ListRegionNetworkFirewallPoliciesRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region scoping this request. + # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -45737,12 +48005,12 @@ class ListRegionNetworkFirewallPoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionNotificationEndpointsRequest + class ListRegionSnapshotsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionOperations.List. See the method description for details. + # A request message for RegionSslCertificates.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -45833,7 +48101,7 @@ class ListRegionNotificationEndpointsRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region for this request. + # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -45842,12 +48110,12 @@ class ListRegionNotificationEndpointsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionOperationsRequest + class ListRegionSslCertificatesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionSecurityPolicies.List. See the method description for details. + # A request message for RegionSslPolicies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -45947,12 +48215,12 @@ class ListRegionOperationsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionSecurityPoliciesRequest + class ListRegionSslPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionSslCertificates.List. See the method description for details. + # A request message for RegionTargetHttpProxies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -46052,12 +48320,12 @@ class ListRegionSecurityPoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionSslCertificatesRequest + class ListRegionTargetHttpProxiesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionSslPolicies.List. See the method description for details. + # A request message for RegionTargetHttpsProxies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -46157,12 +48425,12 @@ class ListRegionSslCertificatesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionSslPoliciesRequest + class ListRegionTargetHttpsProxiesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionTargetHttpProxies.List. See the method description for details. + # A request message for RegionTargetTcpProxies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -46262,12 +48530,12 @@ class ListRegionSslPoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionTargetHttpProxiesRequest + class ListRegionTargetTcpProxiesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionTargetHttpsProxies.List. See the method description for details. + # A request message for RegionUrlMaps.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -46367,12 +48635,12 @@ class ListRegionTargetHttpProxiesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionTargetHttpsProxiesRequest + class ListRegionUrlMapsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionTargetTcpProxies.List. See the method description for details. + # A request message for RegionZones.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -46463,7 +48731,7 @@ class ListRegionTargetHttpsProxiesRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region scoping this request. + # Region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -46472,12 +48740,12 @@ class ListRegionTargetHttpsProxiesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionTargetTcpProxiesRequest + class ListRegionZonesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionUrlMaps.List. See the method description for details. + # A request message for Regions.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -46566,9 +48834,6 @@ class ListRegionTargetTcpProxiesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -46577,12 +48842,12 @@ class ListRegionTargetTcpProxiesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionUrlMapsRequest + class ListRegionsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionZones.List. See the method description for details. + # A request message for ReservationBlocks.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -46671,9 +48936,10 @@ class ListRegionUrlMapsRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region + # @!attribute [rw] reservation # @return [::String] - # Region for this request. + # The name of the reservation. + # Name should conform to RFC1035 or be a resource ID. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -46682,12 +48948,15 @@ class ListRegionUrlMapsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionZonesRequest + # @!attribute [rw] zone + # @return [::String] + # Name of the zone for this request. Zone name should conform to RFC1035. + class ListReservationBlocksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Regions.List. See the method description for details. + # A request message for ReservationSlots.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -46773,9 +49042,13 @@ class ListRegionZonesRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. + # @!attribute [rw] parent_name + # @return [::String] + # The name of the parent reservation and parent block, formatted as + # reservations/\\{reservation_name}/reservationBlocks/\\{reservation_block_name}/reservationSubBlocks/\\{reservation_sub_block_name} # @!attribute [rw] project # @return [::String] - # Project ID for this request. + # The project ID for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -46784,12 +49057,15 @@ class ListRegionZonesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRegionsRequest + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request, formatted as RFC1035. + class ListReservationSlotsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for ReservationBlocks.List. See the method description for details. + # A request message for ReservationSubBlocks.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -46875,13 +49151,13 @@ class ListRegionsRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. + # @!attribute [rw] parent_name + # @return [::String] + # The name of the parent reservation and parent block. In the format of + # reservations/\\{reservation_name}/reservationBlocks/\\{reservation_block_name} # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] reservation - # @return [::String] - # The name of the reservation. - # Name should conform to RFC1035 or be a resource ID. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -46893,12 +49169,12 @@ class ListRegionsRequest # @!attribute [rw] zone # @return [::String] # Name of the zone for this request. Zone name should conform to RFC1035. - class ListReservationBlocksRequest + class ListReservationSubBlocksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for ReservationSlots.List. See the method description for details. + # A request message for Reservations.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -46984,13 +49260,9 @@ class ListReservationBlocksRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. - # @!attribute [rw] parent_name - # @return [::String] - # The name of the parent reservation and parent block, formatted as - # reservations/\\{reservation_name}/reservationBlocks/\\{reservation_block_name}/reservationSubBlocks/\\{reservation_sub_block_name} # @!attribute [rw] project # @return [::String] - # The project ID for this request. + # Project ID for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -47001,13 +49273,13 @@ class ListReservationBlocksRequest # with an error code. # @!attribute [rw] zone # @return [::String] - # The name of the zone for this request, formatted as RFC1035. - class ListReservationSlotsRequest + # Name of the zone for this request. + class ListReservationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for ReservationSubBlocks.List. See the method description for details. + # A request message for ResourcePolicies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -47093,13 +49365,12 @@ class ListReservationSlotsRequest # Specifies a page token to use. Set `pageToken` to the # `nextPageToken` returned by a previous list request to get # the next page of results. - # @!attribute [rw] parent_name - # @return [::String] - # The name of the parent reservation and parent block. In the format of - # reservations/\\{reservation_name}/reservationBlocks/\\{reservation_block_name} # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -47108,15 +49379,12 @@ class ListReservationSlotsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # Name of the zone for this request. Zone name should conform to RFC1035. - class ListReservationSubBlocksRequest + class ListResourcePoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Reservations.List. See the method description for details. + # A request message for Routers.ListRoutePolicies. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -47205,6 +49473,9 @@ class ListReservationSubBlocksRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -47213,15 +49484,16 @@ class ListReservationSubBlocksRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone + # @!attribute [rw] router # @return [::String] - # Name of the zone for this request. - class ListReservationsRequest + # Name or id of the resource for this request. + # Name should conform to RFC1035. + class ListRoutePoliciesRoutersRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for ResourcePolicies.List. See the method description for details. + # A request message for Routers.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -47321,12 +49593,12 @@ class ListReservationsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListResourcePoliciesRequest + class ListRoutersRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Routers.ListRoutePolicies. See the method description for details. + # A request message for Routes.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -47415,9 +49687,6 @@ class ListResourcePoliciesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -47426,16 +49695,114 @@ class ListResourcePoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] router + class ListRoutesRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for SecurityPolicies.List. See the method description for details. + # @!attribute [rw] filter # @return [::String] - # Name or id of the resource for this request. - # Name should conform to RFC1035. - class ListRoutePoliciesRoutersRequest + # A filter expression that filters resources listed in the response. Most + # Compute resources support two types of filter expressions: + # expressions that support regular expressions and expressions that follow + # API improvement proposal AIP-160. + # These two types of filter expressions cannot be mixed in one request. + # + # If you want to use AIP-160, your expression must specify the field name, an + # operator, and the value that you want to use for filtering. The value + # must be a string, a number, or a boolean. The operator + # must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. + # + # For example, if you are filtering Compute Engine instances, you can + # exclude instances named `example-instance` by specifying + # `name != example-instance`. + # + # The `:*` comparison can be used to test whether a key has been defined. + # For example, to find all objects with `owner` label use: + # ``` + # labels.owner:* + # ``` + # + # You can also filter nested fields. For example, you could specify + # `scheduling.automaticRestart = false` to include instances only + # if they are not scheduled for automatic restarts. You can use filtering + # on nested fields to filter based onresource labels. + # + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example: + # ``` + # (scheduling.automaticRestart = true) + # (cpuPlatform = "Intel Skylake") + # ``` + # By default, each expression is an `AND` expression. However, you + # can include `AND` and `OR` expressions explicitly. + # For example: + # ``` + # (cpuPlatform = "Intel Skylake") OR + # (cpuPlatform = "Intel Broadwell") AND + # (scheduling.automaticRestart = true) + # ``` + # + # If you want to use a regular expression, use the `eq` (equal) or `ne` + # (not equal) operator against a single un-parenthesized expression with or + # without quotes or against multiple parenthesized expressions. Examples: + # + # `fieldname eq unquoted literal` + # `fieldname eq 'single quoted literal'` + # `fieldname eq "double quoted literal"` + # `(fieldname1 eq literal) (fieldname2 ne "literal")` + # + # The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + # The literal value must match the entire field. + # + # For example, to filter for instances that do not end with name "instance", + # you would use `name ne .*instance`. + # + # You cannot combine constraints on multiple fields using regular + # expressions. + # @!attribute [rw] max_results + # @return [::Integer] + # The maximum number of results per page that should be returned. + # If the number of available results is larger than `maxResults`, + # Compute Engine returns a `nextPageToken` that can be used to get + # the next page of results in subsequent list requests. Acceptable values are + # `0` to `500`, inclusive. (Default: `500`) + # @!attribute [rw] order_by + # @return [::String] + # Sorts list results by a certain order. By default, results + # are returned in alphanumerical order based on the resource name. + # + # You can also sort results in descending order based on the creation + # timestamp using `orderBy="creationTimestamp desc"`. This sorts + # results based on the `creationTimestamp` field in + # reverse chronological order (newest result first). Use this to sort + # resources like operations so that the newest operation is returned first. + # + # Currently, only sorting by `name` or + # `creationTimestamp desc` is supported. + # @!attribute [rw] page_token + # @return [::String] + # Specifies a page token to use. Set `pageToken` to the + # `nextPageToken` returned by a previous list request to get + # the next page of results. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] return_partial_success + # @return [::Boolean] + # Opt-in for partial success behavior which provides partial results in case + # of failure. The default value is false. + # + # For example, when partial success behavior is enabled, aggregatedList for a + # single zone scope either returns all resources in the zone or no resources, + # with an error code. + class ListSecurityPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Routers.List. See the method description for details. + # A request message for ServiceAttachments.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -47526,7 +49893,7 @@ class ListRoutePoliciesRoutersRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region for this request. + # Name of the region of this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -47535,12 +49902,12 @@ class ListRoutePoliciesRoutersRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRoutersRequest + class ListServiceAttachmentsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Routes.List. See the method description for details. + # A request message for Snapshots.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -47637,12 +50004,12 @@ class ListRoutersRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListRoutesRequest + class ListSnapshotsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for SecurityPolicies.List. See the method description for details. + # A request message for SslCertificates.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -47739,12 +50106,12 @@ class ListRoutesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListSecurityPoliciesRequest + class ListSslCertificatesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for ServiceAttachments.List. See the method description for details. + # A request message for SslPolicies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -47833,9 +50200,6 @@ class ListSecurityPoliciesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # Name of the region of this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -47844,12 +50208,12 @@ class ListSecurityPoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListServiceAttachmentsRequest + class ListSslPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Snapshots.List. See the method description for details. + # A request message for StoragePoolTypes.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -47946,12 +50310,15 @@ class ListServiceAttachmentsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListSnapshotsRequest + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class ListStoragePoolTypesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for SslCertificates.List. See the method description for details. + # A request message for StoragePools.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -48048,12 +50415,15 @@ class ListSnapshotsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListSslCertificatesRequest + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class ListStoragePoolsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for SslPolicies.List. See the method description for details. + # A request message for Subnetworks.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -48142,6 +50512,9 @@ class ListSslCertificatesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -48150,12 +50523,35 @@ class ListSslCertificatesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListSslPoliciesRequest + # @!attribute [rw] views + # @return [::String] + # Defines the extra views returned back in the subnetwork resource. + # Supported values: + # + # - WITH_UTILIZATION: Utilization data is included in the + # response. + # Check the Views enum for the list of possible values. + class ListSubnetworksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods + + # Defines the extra views returned back in the subnetwork resource. + # Supported values: + # + # - WITH_UTILIZATION: Utilization data is included in the + # response. + module Views + # A value indicating that the enum field is not set. + UNDEFINED_VIEWS = 0 + + DEFAULT = 115_302_945 + + # Utilization data is included in the response. + WITH_UTILIZATION = 504_090_633 + end end - # A request message for StoragePoolTypes.List. See the method description for details. + # A request message for TargetGrpcProxies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -48252,15 +50648,12 @@ class ListSslPoliciesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of the zone for this request. - class ListStoragePoolTypesRequest + class ListTargetGrpcProxiesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for StoragePools.List. See the method description for details. + # A request message for TargetHttpProxies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -48357,15 +50750,12 @@ class ListStoragePoolTypesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # The name of the zone for this request. - class ListStoragePoolsRequest + class ListTargetHttpProxiesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Subnetworks.List. See the method description for details. + # A request message for TargetHttpsProxies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -48454,9 +50844,6 @@ class ListStoragePoolsRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -48465,35 +50852,12 @@ class ListStoragePoolsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] views - # @return [::String] - # Defines the extra views returned back in the subnetwork resource. - # Supported values: - # - # - WITH_UTILIZATION: Utilization data is included in the - # response. - # Check the Views enum for the list of possible values. - class ListSubnetworksRequest + class ListTargetHttpsProxiesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods - - # Defines the extra views returned back in the subnetwork resource. - # Supported values: - # - # - WITH_UTILIZATION: Utilization data is included in the - # response. - module Views - # A value indicating that the enum field is not set. - UNDEFINED_VIEWS = 0 - - DEFAULT = 115_302_945 - - # Utilization data is included in the response. - WITH_UTILIZATION = 504_090_633 - end end - # A request message for TargetGrpcProxies.List. See the method description for details. + # A request message for TargetInstances.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -48590,12 +50954,15 @@ module Views # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListTargetGrpcProxiesRequest + # @!attribute [rw] zone + # @return [::String] + # Name of the zone scoping this request. + class ListTargetInstancesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for TargetHttpProxies.List. See the method description for details. + # A request message for TargetPools.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -48684,6 +51051,9 @@ class ListTargetGrpcProxiesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -48692,12 +51062,12 @@ class ListTargetGrpcProxiesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListTargetHttpProxiesRequest + class ListTargetPoolsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for TargetHttpsProxies.List. See the method description for details. + # A request message for TargetSslProxies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -48794,12 +51164,12 @@ class ListTargetHttpProxiesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListTargetHttpsProxiesRequest + class ListTargetSslProxiesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for TargetInstances.List. See the method description for details. + # A request message for TargetTcpProxies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -48896,15 +51266,12 @@ class ListTargetHttpsProxiesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] zone - # @return [::String] - # Name of the zone scoping this request. - class ListTargetInstancesRequest + class ListTargetTcpProxiesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for TargetPools.List. See the method description for details. + # A request message for TargetVpnGateways.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -48995,7 +51362,7 @@ class ListTargetInstancesRequest # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region scoping this request. + # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -49004,12 +51371,12 @@ class ListTargetInstancesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListTargetPoolsRequest + class ListTargetVpnGatewaysRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for TargetSslProxies.List. See the method description for details. + # A request message for UrlMaps.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -49106,12 +51473,12 @@ class ListTargetPoolsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListTargetSslProxiesRequest + class ListUrlMapsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for TargetTcpProxies.List. See the method description for details. + # A request message for BackendBuckets.ListUsable. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -49208,12 +51575,12 @@ class ListTargetSslProxiesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListTargetTcpProxiesRequest + class ListUsableBackendBucketsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for TargetVpnGateways.List. See the method description for details. + # A request message for BackendServices.ListUsable. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -49302,9 +51669,6 @@ class ListTargetTcpProxiesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -49313,12 +51677,12 @@ class ListTargetTcpProxiesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListTargetVpnGatewaysRequest + class ListUsableBackendServicesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for UrlMaps.List. See the method description for details. + # A request message for RegionBackendBuckets.ListUsable. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -49407,6 +51771,10 @@ class ListTargetVpnGatewaysRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. + # It must be a string that meets the requirements in RFC1035. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -49415,12 +51783,12 @@ class ListTargetVpnGatewaysRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListUrlMapsRequest + class ListUsableRegionBackendBucketsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for BackendServices.ListUsable. See the method description for details. + # A request message for RegionBackendServices.ListUsable. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -49509,6 +51877,10 @@ class ListUrlMapsRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. + # It must be a string that meets the requirements in RFC1035. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -49517,12 +51889,12 @@ class ListUrlMapsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListUsableBackendServicesRequest + class ListUsableRegionBackendServicesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionBackendServices.ListUsable. See the method description for details. + # A request message for Subnetworks.ListUsable. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -49611,10 +51983,6 @@ class ListUsableBackendServicesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # Name of the region scoping this request. - # It must be a string that meets the requirements in RFC1035. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -49623,12 +51991,17 @@ class ListUsableBackendServicesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListUsableRegionBackendServicesRequest + # @!attribute [rw] service_project + # @return [::String] + # The project id or project number in which the subnetwork is intended to be + # used. Only applied for Shared VPC. See [Shared VPC + # documentation](https://cloud.google.com/vpc/docs/shared-vpc/) + class ListUsableSubnetworksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Subnetworks.ListUsable. See the method description for details. + # A request message for VpnGateways.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -49717,6 +52090,9 @@ class ListUsableRegionBackendServicesRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -49725,17 +52101,12 @@ class ListUsableRegionBackendServicesRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - # @!attribute [rw] service_project - # @return [::String] - # The project id or project number in which the subnetwork is intended to be - # used. Only applied for Shared VPC. See [Shared VPC - # documentation](https://cloud.google.com/vpc/docs/shared-vpc/) - class ListUsableSubnetworksRequest + class ListVpnGatewaysRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for VpnGateways.List. See the method description for details. + # A request message for VpnTunnels.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -49835,12 +52206,14 @@ class ListUsableSubnetworksRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListVpnGatewaysRequest + class ListVpnTunnelsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for VpnTunnels.List. See the method description for details. + # A request message for WireGroups.List. See the method description for details. + # @!attribute [rw] cross_site_network + # @return [::String] # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -49929,9 +52302,6 @@ class ListVpnGatewaysRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] region - # @return [::String] - # Name of the region for this request. # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -49940,14 +52310,12 @@ class ListVpnGatewaysRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListVpnTunnelsRequest + class ListWireGroupsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for WireGroups.List. See the method description for details. - # @!attribute [rw] cross_site_network - # @return [::String] + # A request message for Projects.ListXpnHosts. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -50036,6 +52404,9 @@ class ListVpnTunnelsRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] projects_list_xpn_hosts_request_resource + # @return [::Google::Cloud::Compute::V1::ProjectsListXpnHostsRequest] + # The body resource for this request # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -50044,12 +52415,12 @@ class ListVpnTunnelsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListWireGroupsRequest + class ListXpnHostsProjectsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Projects.ListXpnHosts. See the method description for details. + # A request message for ZoneOperations.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -50138,9 +52509,6 @@ class ListWireGroupsRequest # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] projects_list_xpn_hosts_request_resource - # @return [::Google::Cloud::Compute::V1::ProjectsListXpnHostsRequest] - # The body resource for this request # @!attribute [rw] return_partial_success # @return [::Boolean] # Opt-in for partial success behavior which provides partial results in case @@ -50149,12 +52517,15 @@ class ListWireGroupsRequest # For example, when partial success behavior is enabled, aggregatedList for a # single zone scope either returns all resources in the zone or no resources, # with an error code. - class ListXpnHostsProjectsRequest + # @!attribute [rw] zone + # @return [::String] + # Name of the zone for request. + class ListZoneOperationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for ZoneOperations.List. See the method description for details. + # A request message for ZoneVmExtensionPolicies.List. See the method description for details. # @!attribute [rw] filter # @return [::String] # A filter expression that filters resources listed in the response. Most @@ -50253,8 +52624,8 @@ class ListXpnHostsProjectsRequest # with an error code. # @!attribute [rw] zone # @return [::String] - # Name of the zone for request. - class ListZoneOperationsRequest + # Name of the zone for this request. + class ListZoneVmExtensionPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end @@ -51767,6 +54138,10 @@ class ItemsEntry # @!attribute [rw] secondary_ip_cidr_ranges # @return [::Array<::String>] # Alias IP ranges from the same subnetwork. + # @!attribute [rw] service_class_id + # @return [::String] + # The service class id of the producer service to which the IP was + # assigned. # @!attribute [rw] status # @return [::String] # The status of a connected endpoint to this network attachment. @@ -52627,6 +55002,12 @@ class ItemsEntry # The networking queue count that's specified by users for the network # interface. Both Rx and Tx queues will be set to this number. It'll be empty # if not specified by the users. + # @!attribute [rw] service_class_id + # @return [::String] + # Optional. Producer Service's Service class Id for the region of this network + # interface. Can only be used with network_attachment. It is not possible to + # use on its own however, network_attachment can be used without + # service_class_id. # @!attribute [rw] stack_type # @return [::String] # The stack type for this network interface. To assign only IPv4 addresses, @@ -56622,6 +59003,40 @@ class PatchRegionAutoscalerRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionBackendBuckets.Patch. See the method description for details. + # @!attribute [rw] backend_bucket + # @return [::String] + # Name of the BackendBucket resource to patch. + # @!attribute [rw] backend_bucket_resource + # @return [::Google::Cloud::Compute::V1::BackendBucket] + # The body resource for this request + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # end_interface: MixerMutationRequestBuilder + class PatchRegionBackendBucketRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionBackendServices.Patch. See the method description for details. # @!attribute [rw] backend_service # @return [::String] @@ -56819,17 +59234,50 @@ class PatchRegionHealthCheckServiceRequest # The request ID must be # a valid UUID with the exception that zero UUID is not supported # (00000000-0000-0000-0000-000000000000). - class PatchRegionHealthSourceRequest + class PatchRegionHealthSourceRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for RegionInstanceGroupManagers.Patch. See the method description for details. + # @!attribute [rw] instance_group_manager + # @return [::String] + # The name of the instance group manager. + # @!attribute [rw] instance_group_manager_resource + # @return [::Google::Cloud::Compute::V1::InstanceGroupManager] + # The body resource for this request + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region scoping this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + class PatchRegionInstanceGroupManagerRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionInstanceGroupManagers.Patch. See the method description for details. - # @!attribute [rw] instance_group_manager + # A request message for RegionNetworkFirewallPolicies.Patch. See the method description for details. + # @!attribute [rw] firewall_policy # @return [::String] - # The name of the instance group manager. - # @!attribute [rw] instance_group_manager_resource - # @return [::Google::Cloud::Compute::V1::InstanceGroupManager] + # Name of the firewall policy to update. + # @!attribute [rw] firewall_policy_resource + # @return [::Google::Cloud::Compute::V1::FirewallPolicy] # The body resource for this request # @!attribute [rw] project # @return [::String] @@ -56852,18 +59300,12 @@ class PatchRegionHealthSourceRequest # The request ID must be # a valid UUID with the exception that zero UUID is not supported # (00000000-0000-0000-0000-000000000000). - class PatchRegionInstanceGroupManagerRequest + class PatchRegionNetworkFirewallPolicyRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionNetworkFirewallPolicies.Patch. See the method description for details. - # @!attribute [rw] firewall_policy - # @return [::String] - # Name of the firewall policy to update. - # @!attribute [rw] firewall_policy_resource - # @return [::Google::Cloud::Compute::V1::FirewallPolicy] - # The body resource for this request + # A request message for RegionSecurityPolicies.Patch. See the method description for details. # @!attribute [rw] project # @return [::String] # Project ID for this request. @@ -56885,18 +59327,27 @@ class PatchRegionInstanceGroupManagerRequest # The request ID must be # a valid UUID with the exception that zero UUID is not supported # (00000000-0000-0000-0000-000000000000). - class PatchRegionNetworkFirewallPolicyRequest + # @!attribute [rw] security_policy + # @return [::String] + # Name of the security policy to update. + # @!attribute [rw] security_policy_resource + # @return [::Google::Cloud::Compute::V1::SecurityPolicy] + # The body resource for this request + # @!attribute [rw] update_mask + # @return [::String] + # Indicates fields to be cleared as part of this request. + class PatchRegionSecurityPolicyRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for RegionSecurityPolicies.Patch. See the method description for details. + # A request message for RegionSnapshotSettings.Patch. See the method description for details. # @!attribute [rw] project # @return [::String] # Project ID for this request. # @!attribute [rw] region # @return [::String] - # Name of the region scoping this request. + # Name of the region for this request. # @!attribute [rw] request_id # @return [::String] # An optional request ID to identify requests. Specify a unique request ID so @@ -56912,16 +59363,13 @@ class PatchRegionNetworkFirewallPolicyRequest # The request ID must be # a valid UUID with the exception that zero UUID is not supported # (00000000-0000-0000-0000-000000000000). - # @!attribute [rw] security_policy - # @return [::String] - # Name of the security policy to update. - # @!attribute [rw] security_policy_resource - # @return [::Google::Cloud::Compute::V1::SecurityPolicy] + # @!attribute [rw] snapshot_settings_resource + # @return [::Google::Cloud::Compute::V1::SnapshotSettings] # The body resource for this request # @!attribute [rw] update_mask # @return [::String] - # Indicates fields to be cleared as part of this request. - class PatchRegionSecurityPolicyRequest + # update_mask indicates fields to be updated as part of this request. + class PatchRegionSnapshotSettingRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end @@ -59976,12 +62424,14 @@ module Code # by the client when the disk image is created. # @!attribute [rw] source # @return [::String] - # The full Google Cloud Storage URL where the raw disk image archive is - # stored. - # The following are valid formats for the URL: + # The full Google Cloud Storage URL or Artifact Registry path where the raw + # disk image archive is stored. + # The following are valid formats: # # - https://storage.googleapis.com/bucket_name/image_archive_name # - https://storage.googleapis.com/bucket_name/folder_name/image_archive_name + # - projects/project/locations/location/repositories/repo/packages/package/versions/version_id + # - projects/project/locations/location/repositories/repo/packages/package/versions/version_id@dirsum_sha256:hex_value # # # @@ -60232,6 +62682,25 @@ class RegionDiskTypeList extend ::Google::Protobuf::MessageExts::ClassMethods end + # @!attribute [rw] kms_key_name + # @return [::String] + # Optional. The new KMS key to replace the current one on the disk. If empty, the disk + # will be re-encrypted using the primary version of the disk's current KMS + # key. + # + # The KMS key can be provided in the following formats: + # + # + # - projects/project_id/locations/location/keyRings/key_ring/cryptoKeys/key + # + # + # Where project is the project ID or + # project number. + class RegionDiskUpdateKmsKeyRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # @!attribute [rw] resource_policies # @return [::Array<::String>] # Resource policies to be added to this disk. @@ -60363,6 +62832,40 @@ class RegionInstanceGroupManagerPatchInstanceConfigReq extend ::Google::Protobuf::MessageExts::ClassMethods end + # @!attribute [rw] etag + # @return [::String] + # @!attribute [rw] id + # @return [::String] + # Output only. [Output Only] Unique identifier for the resource; defined by the server. + # @!attribute [rw] items + # @return [::Array<::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequest>] + # A list of Resize Request resources. + # @!attribute [rw] kind + # @return [::String] + # Output only. [Output Only] Type of the resource. Alwayscompute#regionInstanceGroupManagerResizeRequestList for + # a list of Resize Requests. + # @!attribute [rw] next_page_token + # @return [::String] + # Output only. [Output Only] This token allows you to get the next page of results for + # list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + # the query parameter pageToken in the next list request. + # Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # @!attribute [rw] self_link + # @return [::String] + # Output only. [Output Only] Server-defined URL for this resource. + # @!attribute [rw] unreachables + # @return [::Array<::String>] + # Output only. [Output Only] Unreachable resources. + # end_interface: MixerListResponseWithEtagBuilder + # @!attribute [rw] warning + # @return [::Google::Cloud::Compute::V1::Warning] + # Output only. [Output Only] Informational warning message. + class RegionInstanceGroupManagerResizeRequestsListResponse + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # RegionInstanceGroupManagers.updatePerInstanceConfigs # @!attribute [rw] per_instance_configs # @return [::Array<::Google::Cloud::Compute::V1::PerInstanceConfig>] @@ -60857,6 +63360,21 @@ class RegionSetPolicyRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # @!attribute [rw] kms_key_name + # @return [::String] + # Optional. The new KMS key to replace the current one on the snapshot. If empty, the + # snapshot will be re-encrypted using the primary version of the snapshot's + # current KMS key. + # + # The KMS key can be provided in the following formats: + # + # + # - projects/project_id/locations/region/keyRings/region/cryptoKeys/key + class RegionSnapshotUpdateKmsKeyRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # @!attribute [rw] ssl_certificates # @return [::Array<::String>] # New set of SslCertificate resources to associate @@ -61540,6 +64058,9 @@ class RequestRemovePeeringNetworkRequest # @return [::String] # Output only. [Output Only] Full or partial URL to a parent commitment. This field # displays for reservations that are tied to a commitment. + # @!attribute [rw] confidential_compute_type + # @return [::String] + # Check the ConfidentialComputeType enum for the list of possible values. # @!attribute [rw] creation_timestamp # @return [::String] # Output only. [Output Only] Creation timestamp inRFC3339 @@ -61666,6 +64187,16 @@ class ResourcePoliciesEntry extend ::Google::Protobuf::MessageExts::ClassMethods end + module ConfidentialComputeType + # A value indicating that the enum field is not set. + UNDEFINED_CONFIDENTIAL_COMPUTE_TYPE = 0 + + # Intel Trust Domain Extensions. + CONFIDENTIAL_COMPUTE_TYPE_TDX = 301_241_954 + + CONFIDENTIAL_COMPUTE_TYPE_UNSPECIFIED = 42_227_601 + end + # Specifies the deployment strategy for this reservation. module DeploymentType # A value indicating that the enum field is not set. @@ -68175,6 +70706,24 @@ class SetIamPolicyInstanceTemplateRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for InstantSnapshotGroups.SetIamPolicy. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + # @!attribute [rw] zone_set_policy_request_resource + # @return [::Google::Cloud::Compute::V1::ZoneSetPolicyRequest] + # The body resource for this request + class SetIamPolicyInstantSnapshotGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for InstantSnapshots.SetIamPolicy. See the method description for details. # @!attribute [rw] project # @return [::String] @@ -68322,6 +70871,24 @@ class SetIamPolicyNodeTemplateRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionBackendBuckets.SetIamPolicy. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. + # @!attribute [rw] region_set_policy_request_resource + # @return [::Google::Cloud::Compute::V1::RegionSetPolicyRequest] + # The body resource for this request + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + class SetIamPolicyRegionBackendBucketRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionBackendServices.SetIamPolicy. See the method description for details. # @!attribute [rw] project # @return [::String] @@ -68358,6 +70925,24 @@ class SetIamPolicyRegionDiskRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionInstantSnapshotGroups.SetIamPolicy. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. + # @!attribute [rw] region_set_policy_request_resource + # @return [::Google::Cloud::Compute::V1::RegionSetPolicyRequest] + # The body resource for this request + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + class SetIamPolicyRegionInstantSnapshotGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionInstantSnapshots.SetIamPolicy. See the method description for details. # @!attribute [rw] project # @return [::String] @@ -68394,6 +70979,24 @@ class SetIamPolicyRegionNetworkFirewallPolicyRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionSnapshots.SetIamPolicy. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. + # @!attribute [rw] region_set_policy_request_resource + # @return [::Google::Cloud::Compute::V1::RegionSetPolicyRequest] + # The body resource for this request + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + class SetIamPolicyRegionSnapshotRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for ReservationBlocks.SetIamPolicy. See the method description for details. # @!attribute [rw] parent_resource # @return [::String] @@ -68995,6 +71598,39 @@ class SetLabelsRegionSecurityPolicyRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionSnapshots.SetLabels. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The region for this request. + # @!attribute [rw] region_set_labels_request_resource + # @return [::Google::Cloud::Compute::V1::RegionSetLabelsRequest] + # The body resource for this request + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + class SetLabelsRegionSnapshotRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for SecurityPolicies.SetLabels. See the method description for details. # @!attribute [rw] global_set_labels_request_resource # @return [::Google::Cloud::Compute::V1::GlobalSetLabelsRequest] @@ -70562,6 +73198,10 @@ class SimulateMaintenanceEventNodeGroupRequest # @return [::Google::Cloud::Compute::V1::SnapshotParams] # Input only. [Input Only] Additional params passed with the request, but not persisted # as part of resource payload. + # @!attribute [rw] region + # @return [::String] + # Output only. [Output Only] URL of the region where the snapshot resides. Only applicable + # for regional snapshots. # @!attribute [rw] satisfies_pzi # @return [::Boolean] # Output only. Reserved for future use. @@ -70587,6 +73227,14 @@ class SimulateMaintenanceEventNodeGroupRequest # If you do not provide an encryption key when creating the snapshot, then # the snapshot will be encrypted using an automatically generated key and you # do not need to provide a key to use the snapshot later. + # @!attribute [rw] snapshot_group_id + # @return [::String] + # Output only. [Output Only] The unique ID of the snapshot group that this snapshot + # belongs to. The usage of snapshot group feature is restricted. + # @!attribute [rw] snapshot_group_name + # @return [::String] + # Output only. [Output only] The snapshot group that this snapshot belongs to. The usage + # of snapshot group feature is restricted. # @!attribute [rw] snapshot_type # @return [::String] # Indicates the type of the snapshot. @@ -70734,6 +73382,30 @@ module StorageBytesStatus end end + # @!attribute [rw] replica_zones + # @return [::Array<::String>] + # URLs of the zones where disks should be replicated to. Only applicable + # for regional resources. + # @!attribute [rw] source_snapshot_group + # @return [::String] + # The source snapshot group used to create disks. You can provide this as a + # partial or full URL to the resource. For example, the following are valid + # values: + # + # + # - https://www.googleapis.com/compute/v1/projects/project/global/snapshotGroups/snapshotGroup + # - projects/project/global/snapshotGroups/snapshotGroup + # - global/snapshotGroups/snapshotGroup + # @!attribute [rw] type + # @return [::String] + # URL of the disk type resource describing which disk type to use to create + # disks. Provide this when creating the disk. For example:projects/project/zones/zone/diskTypes/pd-ssd. See Persistent disk + # types. + class SnapshotGroupParameters + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # Contains a list of Snapshot resources. # @!attribute [rw] id # @return [::String] @@ -70786,6 +73458,10 @@ class ResourceManagerTagsEntry end end + # @!attribute [rw] access_location + # @return [::Google::Cloud::Compute::V1::SnapshotSettingsAccessLocation] + # (Regional snapshots use only)Policy of which location is allowed to access + # snapshot. # @!attribute [rw] storage_location # @return [::Google::Cloud::Compute::V1::SnapshotSettingsStorageLocationSettings] # Policy of which storage location is going to be resolved, and additional @@ -70795,6 +73471,52 @@ class SnapshotSettings extend ::Google::Protobuf::MessageExts::ClassMethods end + # @!attribute [rw] locations + # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Compute::V1::SnapshotSettingsAccessLocationAccessLocationPreference}] + # List of regions that can restore a regional + # snapshot from the current region + # @!attribute [rw] policy + # @return [::String] + # Policy of which location is allowed to access snapshot. + # Check the Policy enum for the list of possible values. + class SnapshotSettingsAccessLocation + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # @!attribute [rw] key + # @return [::String] + # @!attribute [rw] value + # @return [::Google::Cloud::Compute::V1::SnapshotSettingsAccessLocationAccessLocationPreference] + class LocationsEntry + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # Policy of which location is allowed to access snapshot. + module Policy + # A value indicating that the enum field is not set. + UNDEFINED_POLICY = 0 + + # Any regions will be able to access the source location. + ALL_REGIONS = 273_143_585 + + POLICY_UNSPECIFIED = 197_974_922 + + # Only allowlisted regions will be able to restore region scoped + # snapshots + SPECIFIC_REGIONS = 454_128_082 + end + end + + # A structure for specifying an allowed target region. + # @!attribute [rw] region + # @return [::String] + # Accessible region name + class SnapshotSettingsAccessLocationAccessLocationPreference + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # @!attribute [rw] locations # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Compute::V1::SnapshotSettingsStorageLocationSettingsStorageLocationPreference}] # When the policy is SPECIFIC_LOCATIONS, snapshots will be stored @@ -70849,6 +73571,21 @@ class SnapshotSettingsStorageLocationSettingsStorageLocationPreference extend ::Google::Protobuf::MessageExts::ClassMethods end + # @!attribute [rw] kms_key_name + # @return [::String] + # Optional. The new KMS key to replace the current one on the snapshot. If empty, the + # snapshot will be re-encrypted using the primary version of the snapshot's + # current KMS key. + # + # The KMS key can be provided in the following formats: + # + # + # - projects/project_id/locations/region/keyRings/key_ring/cryptoKeys/key + class SnapshotUpdateKmsKeyRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # @!attribute [rw] disk_encryption_key # @return [::Google::Cloud::Compute::V1::CustomerEncryptionKey] # Thecustomer-supplied @@ -75540,6 +78277,24 @@ class TestIamPermissionsInstanceTemplateRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for InstantSnapshotGroups.TestIamPermissions. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + # @!attribute [rw] test_permissions_request_resource + # @return [::Google::Cloud::Compute::V1::TestPermissionsRequest] + # The body resource for this request + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class TestIamPermissionsInstantSnapshotGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for InstantSnapshots.TestIamPermissions. See the method description for details. # @!attribute [rw] project # @return [::String] @@ -75756,6 +78511,24 @@ class TestIamPermissionsRegionAutoscalerRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionBackendBuckets.TestIamPermissions. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + # @!attribute [rw] test_permissions_request_resource + # @return [::Google::Cloud::Compute::V1::TestPermissionsRequest] + # The body resource for this request + class TestIamPermissionsRegionBackendBucketRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionBackendServices.TestIamPermissions. See the method description for details. # @!attribute [rw] project # @return [::String] @@ -75900,6 +78673,24 @@ class TestIamPermissionsRegionInstanceGroupRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionInstantSnapshotGroups.TestIamPermissions. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + # @!attribute [rw] test_permissions_request_resource + # @return [::Google::Cloud::Compute::V1::TestPermissionsRequest] + # The body resource for this request + class TestIamPermissionsRegionInstantSnapshotGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for RegionInstantSnapshots.TestIamPermissions. See the method description for details. # @!attribute [rw] project # @return [::String] @@ -75954,6 +78745,24 @@ class TestIamPermissionsRegionNotificationEndpointRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for RegionSnapshots.TestIamPermissions. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # The name of the region for this request. + # @!attribute [rw] resource + # @return [::String] + # Name or id of the resource for this request. + # @!attribute [rw] test_permissions_request_resource + # @return [::Google::Cloud::Compute::V1::TestPermissionsRequest] + # The body resource for this request + class TestIamPermissionsRegionSnapshotRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # A request message for ReservationBlocks.TestIamPermissions. See the method description for details. # @!attribute [rw] parent_resource # @return [::String] @@ -76566,51 +79375,234 @@ class UpdateDiskRequest # @!attribute [rw] zone # @return [::String] # The name of the zone for this request. - class UpdateDisplayDeviceInstanceRequest + class UpdateDisplayDeviceInstanceRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for Firewalls.Update. See the method description for details. + # @!attribute [rw] firewall + # @return [::String] + # Name of the firewall rule to update. + # @!attribute [rw] firewall_resource + # @return [::Google::Cloud::Compute::V1::Firewall] + # The body resource for this request + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + class UpdateFirewallRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for FutureReservations.Update. See the method description for details. + # @!attribute [rw] future_reservation + # @return [::String] + # Name of the reservation to update. Name should conform to RFC1035. + # @!attribute [rw] future_reservation_resource + # @return [::Google::Cloud::Compute::V1::FutureReservation] + # The body resource for this request + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] update_mask + # @return [::String] + # update_mask indicates fields to be updated as part of this request. + # @!attribute [rw] zone + # @return [::String] + # Name of the zone for this request. Name should conform to RFC1035. + class UpdateFutureReservationRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for HealthChecks.Update. See the method description for details. + # @!attribute [rw] health_check + # @return [::String] + # Name of the HealthCheck resource to update. + # @!attribute [rw] health_check_resource + # @return [::Google::Cloud::Compute::V1::HealthCheck] + # The body resource for this request + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + class UpdateHealthCheckRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A request message for Instances.Update. See the method description for details. + # @!attribute [rw] discard_local_ssd + # @return [::Boolean] + # Whether to discard local SSDs from the instance during restart + # default value is false. + # @!attribute [rw] instance + # @return [::String] + # Name of the instance resource to update. + # @!attribute [rw] instance_resource + # @return [::Google::Cloud::Compute::V1::Instance] + # The body resource for this request + # @!attribute [rw] minimal_action + # @return [::String] + # Specifies the action to take when updating an instance even if the + # updated properties do not require it. If not specified, then + # Compute Engine acts based on the minimum action that the updated + # properties require. + # Check the MinimalAction enum for the list of possible values. + # @!attribute [rw] most_disruptive_allowed_action + # @return [::String] + # Specifies the most disruptive action that can be taken on the instance + # as part of the update. Compute Engine returns an error if the + # instance properties require a more disruptive action as part of the + # instance update. Valid options from lowest to highest are + # NO_EFFECT, REFRESH, and RESTART. + # Check the MostDisruptiveAllowedAction enum for the list of possible values. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class UpdateInstanceRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # Specifies the action to take when updating an instance even if the + # updated properties do not require it. If not specified, then + # Compute Engine acts based on the minimum action that the updated + # properties require. + # Additional supported values which may be not listed in the enum directly due to technical reasons: + # INVALID + # NO_EFFECT + # REFRESH + # RESTART + module MinimalAction + # A value indicating that the enum field is not set. + UNDEFINED_MINIMAL_ACTION = 0 + end + + # Specifies the most disruptive action that can be taken on the instance + # as part of the update. Compute Engine returns an error if the + # instance properties require a more disruptive action as part of the + # instance update. Valid options from lowest to highest are + # NO_EFFECT, REFRESH, and RESTART. + # Additional supported values which may be not listed in the enum directly due to technical reasons: + # INVALID + # NO_EFFECT + # REFRESH + # RESTART + module MostDisruptiveAllowedAction + # A value indicating that the enum field is not set. + UNDEFINED_MOST_DISRUPTIVE_ALLOWED_ACTION = 0 + end + end + + # A request message for Disks.UpdateKmsKey. See the method description for details. + # @!attribute [rw] disk + # @return [::String] + # Name of the Disk resource, should conform to RFC1035. + # @!attribute [rw] disk_update_kms_key_request_resource + # @return [::Google::Cloud::Compute::V1::DiskUpdateKmsKeyRequest] + # The body resource for this request + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] zone + # @return [::String] + # The name of the zone for this request. + class UpdateKmsKeyDiskRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Firewalls.Update. See the method description for details. - # @!attribute [rw] firewall + # A request message for RegionDisks.UpdateKmsKey. See the method description for details. + # @!attribute [rw] disk # @return [::String] - # Name of the firewall rule to update. - # @!attribute [rw] firewall_resource - # @return [::Google::Cloud::Compute::V1::Firewall] - # The body resource for this request + # Name of the Disk resource, should conform to RFC1035. # @!attribute [rw] project # @return [::String] # Project ID for this request. - # @!attribute [rw] request_id - # @return [::String] - # An optional request ID to identify requests. Specify a unique request ID so - # that if you must retry your request, the server will know to ignore the - # request if it has already been completed. - # - # For example, consider a situation where you make an initial request and - # the request times out. If you make the request again with the same - # request ID, the server can check if original operation with the same - # request ID was received, and if so, will ignore the second request. This - # prevents clients from accidentally creating duplicate commitments. - # - # The request ID must be - # a valid UUID with the exception that zero UUID is not supported - # (00000000-0000-0000-0000-000000000000). - class UpdateFirewallRequest - include ::Google::Protobuf::MessageExts - extend ::Google::Protobuf::MessageExts::ClassMethods - end - - # A request message for FutureReservations.Update. See the method description for details. - # @!attribute [rw] future_reservation + # @!attribute [rw] region # @return [::String] - # Name of the reservation to update. Name should conform to RFC1035. - # @!attribute [rw] future_reservation_resource - # @return [::Google::Cloud::Compute::V1::FutureReservation] + # The name of the region for this request. + # @!attribute [rw] region_disk_update_kms_key_request_resource + # @return [::Google::Cloud::Compute::V1::RegionDiskUpdateKmsKeyRequest] # The body resource for this request - # @!attribute [rw] project - # @return [::String] - # Project ID for this request. # @!attribute [rw] request_id # @return [::String] # An optional request ID to identify requests. Specify a unique request ID so @@ -76626,27 +79618,21 @@ class UpdateFirewallRequest # The request ID must be # a valid UUID with the exception that zero UUID is not supported # (00000000-0000-0000-0000-000000000000). - # @!attribute [rw] update_mask - # @return [::String] - # update_mask indicates fields to be updated as part of this request. - # @!attribute [rw] zone - # @return [::String] - # Name of the zone for this request. Name should conform to RFC1035. - class UpdateFutureReservationRequest + class UpdateKmsKeyRegionDiskRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for HealthChecks.Update. See the method description for details. - # @!attribute [rw] health_check - # @return [::String] - # Name of the HealthCheck resource to update. - # @!attribute [rw] health_check_resource - # @return [::Google::Cloud::Compute::V1::HealthCheck] - # The body resource for this request + # A request message for RegionSnapshots.UpdateKmsKey. See the method description for details. # @!attribute [rw] project # @return [::String] # Project ID for this request. + # @!attribute [rw] region + # @return [::String] + # Name of the region for this request. + # @!attribute [rw] region_snapshot_update_kms_key_request_resource + # @return [::Google::Cloud::Compute::V1::RegionSnapshotUpdateKmsKeyRequest] + # The body resource for this request # @!attribute [rw] request_id # @return [::String] # An optional request ID to identify requests. Specify a unique request ID so @@ -76662,37 +79648,15 @@ class UpdateFutureReservationRequest # The request ID must be # a valid UUID with the exception that zero UUID is not supported # (00000000-0000-0000-0000-000000000000). - class UpdateHealthCheckRequest + # @!attribute [rw] snapshot + # @return [::String] + # Name of the snapshot resource to update. Should conform to RFC1035. + class UpdateKmsKeyRegionSnapshotRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end - # A request message for Instances.Update. See the method description for details. - # @!attribute [rw] discard_local_ssd - # @return [::Boolean] - # Whether to discard local SSDs from the instance during restart - # default value is false. - # @!attribute [rw] instance - # @return [::String] - # Name of the instance resource to update. - # @!attribute [rw] instance_resource - # @return [::Google::Cloud::Compute::V1::Instance] - # The body resource for this request - # @!attribute [rw] minimal_action - # @return [::String] - # Specifies the action to take when updating an instance even if the - # updated properties do not require it. If not specified, then - # Compute Engine acts based on the minimum action that the updated - # properties require. - # Check the MinimalAction enum for the list of possible values. - # @!attribute [rw] most_disruptive_allowed_action - # @return [::String] - # Specifies the most disruptive action that can be taken on the instance - # as part of the update. Compute Engine returns an error if the - # instance properties require a more disruptive action as part of the - # instance update. Valid options from lowest to highest are - # NO_EFFECT, REFRESH, and RESTART. - # Check the MostDisruptiveAllowedAction enum for the list of possible values. + # A request message for Snapshots.UpdateKmsKey. See the method description for details. # @!attribute [rw] project # @return [::String] # Project ID for this request. @@ -76711,41 +79675,15 @@ class UpdateHealthCheckRequest # The request ID must be # a valid UUID with the exception that zero UUID is not supported # (00000000-0000-0000-0000-000000000000). - # @!attribute [rw] zone + # @!attribute [rw] snapshot # @return [::String] - # The name of the zone for this request. - class UpdateInstanceRequest + # Name of the snapshot resource to update. Should conform to RFC1035. + # @!attribute [rw] snapshot_update_kms_key_request_resource + # @return [::Google::Cloud::Compute::V1::SnapshotUpdateKmsKeyRequest] + # The body resource for this request + class UpdateKmsKeySnapshotRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods - - # Specifies the action to take when updating an instance even if the - # updated properties do not require it. If not specified, then - # Compute Engine acts based on the minimum action that the updated - # properties require. - # Additional supported values which may be not listed in the enum directly due to technical reasons: - # INVALID - # NO_EFFECT - # REFRESH - # RESTART - module MinimalAction - # A value indicating that the enum field is not set. - UNDEFINED_MINIMAL_ACTION = 0 - end - - # Specifies the most disruptive action that can be taken on the instance - # as part of the update. Compute Engine returns an error if the - # instance properties require a more disruptive action as part of the - # instance update. Valid options from lowest to highest are - # NO_EFFECT, REFRESH, and RESTART. - # Additional supported values which may be not listed in the enum directly due to technical reasons: - # INVALID - # NO_EFFECT - # REFRESH - # RESTART - module MostDisruptiveAllowedAction - # A value indicating that the enum field is not set. - UNDEFINED_MOST_DISRUPTIVE_ALLOWED_ACTION = 0 - end end # A request message for Licenses.Update. See the method description for details. @@ -77371,6 +80309,39 @@ class UpdateUrlMapRequest extend ::Google::Protobuf::MessageExts::ClassMethods end + # A request message for ZoneVmExtensionPolicies.Update. See the method description for details. + # @!attribute [rw] project + # @return [::String] + # Project ID for this request. + # @!attribute [rw] request_id + # @return [::String] + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # + # For example, consider a situation where you make an initial request and + # the request times out. If you make the request again with the same + # request ID, the server can check if original operation with the same + # request ID was received, and if so, will ignore the second request. This + # prevents clients from accidentally creating duplicate commitments. + # + # The request ID must be + # a valid UUID with the exception that zero UUID is not supported + # (00000000-0000-0000-0000-000000000000). + # @!attribute [rw] vm_extension_policy + # @return [::String] + # Name of the zone VM extension policy to update. + # @!attribute [rw] vm_extension_policy_resource + # @return [::Google::Cloud::Compute::V1::VmExtensionPolicy] + # The body resource for this request + # @!attribute [rw] zone + # @return [::String] + # Name of the zone for this request. + class UpdateZoneVmExtensionPolicyRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # Represents a URL Map resource. # # Compute Engine has two URL Map resources: @@ -78173,6 +81144,189 @@ class VmEndpointNatMappingsList extend ::Google::Protobuf::MessageExts::ClassMethods end + # Represents a VM extension policy. + # @!attribute [rw] creation_timestamp + # @return [::String] + # Output only. [Output Only] Creation timestamp inRFC3339 + # text format. + # @!attribute [rw] description + # @return [::String] + # An optional description of this resource. + # @!attribute [rw] extension_policies + # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Compute::V1::VmExtensionPolicyExtensionPolicy}] + # Required. A map of extension names (for example, "ops-agent") to their corresponding + # policy configurations. + # @!attribute [rw] global_resource_link + # @return [::String] + # Optional. Output only. [Output Only] Link to the global policy that manages this zone policy, if + # applicable. + # @!attribute [rw] id + # @return [::Integer] + # Output only. [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # @!attribute [rw] instance_selectors + # @return [::Array<::Google::Cloud::Compute::V1::VmExtensionPolicyInstanceSelector>] + # Optional. Selectors to target VMs for this policy. VMs are selected if they match + # *any* of the provided selectors (logical OR). If this list is empty, the + # policy applies to all VMs. + # @!attribute [rw] kind + # @return [::String] + # Output only. [Output Only] Type of the resource. Alwayscompute#vmExtensionPolicy. + # @!attribute [rw] managed_by_global + # @return [::Boolean] + # Optional. Output only. [Output Only] Indicates if this policy is managed by a global policy. + # @!attribute [rw] name + # @return [::String] + # Name of the resource. Provided by the client when the resource is created. + # The name must be 1-63 characters long, and comply withRFC1035. + # Specifically, the name must be 1-63 characters long and match the regular + # expression `[a-z]([-a-z0-9]*[a-z0-9])?` + # which means the first character must be a lowercase letter, and all + # following characters must be a dash, lowercase letter, or digit, except + # the last character, which cannot be a dash. + # @!attribute [rw] priority + # @return [::Integer] + # Optional. Priority of this policy. Used to resolve conflicts when multiple policies + # apply to the same extension. + # The policy priority is an integer from 0 to 65535, inclusive. Lower + # integers indicate higher priorities. If you do not specify a priority when + # creating a rule, it is assigned a priority of 1000. If priorities are + # equal, the policy with the most recent creation timestamp takes precedence. + # @!attribute [rw] self_link + # @return [::String] + # Output only. [Output Only] Server-defined fully-qualified URL for this resource. + # @!attribute [rw] self_link_with_id + # @return [::String] + # Output only. [Output Only] Server-defined URL for this resource's resource id. + # @!attribute [rw] state + # @return [::String] + # Optional. Output only. [Output Only] Current state of the policy: ACTIVE or DELETING. + # Check the State enum for the list of possible values. + # @!attribute [rw] update_timestamp + # @return [::String] + # Output only. [Output Only] Update timestamp inRFC3339 + # text format. + class VmExtensionPolicy + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # @!attribute [rw] key + # @return [::String] + # @!attribute [rw] value + # @return [::Google::Cloud::Compute::V1::VmExtensionPolicyExtensionPolicy] + class ExtensionPoliciesEntry + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # Optional. Output only. [Output Only] Current state of the policy: ACTIVE or DELETING. + module State + # A value indicating that the enum field is not set. + UNDEFINED_STATE = 0 + + # The policy is active and applied to matching VMs. + # Newly created VMs that match the policy will also receive the + # extension policy. + ACTIVE = 314_733_318 + + # The policy is in the process of being deleted. After the extension is + # removed from all matching VMs, the policy will be deleted. + DELETING = 528_602_024 + + # Default value. Do not use. + STATE_UNSPECIFIED = 470_755_401 + end + end + + # Configuration for a specific VM extension. + # @!attribute [rw] pinned_version + # @return [::String] + # Optional. The specific version of the extension to install. If not set, the latest + # version is used. + # @!attribute [rw] string_config + # @return [::String] + # Optional. String-based configuration data for the extension. + class VmExtensionPolicyExtensionPolicy + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # Defines how to select VMs to apply a zone VM extension policy. + # @!attribute [rw] label_selector + # @return [::Google::Cloud::Compute::V1::VmExtensionPolicyLabelSelector] + # Optional. LabelSelector selects VMs based on their labels. + class VmExtensionPolicyInstanceSelector + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # A LabelSelector is applied to a VM only if it matches all the specified + # labels. + # @!attribute [rw] inclusion_labels + # @return [::Google::Protobuf::Map{::String => ::String}] + # Optional. A map of key-value pairs representing VM labels. + # VMs must have all of the labels specified in this map to be selected + # (logical AND). + # + # e.g. If the `inclusion_labels` are \\{("key1", "value1"), ("key2", + # "value2")}, the VM labels must contain both ("key1", "value1") and + # ("key2", "value2") to be selected. If the VM labels are ("key1", + # "value1") and ("something", "else"), it will not be selected. + # + # If the map is empty, it's considered a match. + class VmExtensionPolicyLabelSelector + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # @!attribute [rw] key + # @return [::String] + # @!attribute [rw] value + # @return [::String] + class InclusionLabelsEntry + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + end + + # @!attribute [rw] etag + # @return [::String] + # Output only. [Output Only] Fingerprint of this resource. A hash of the contents stored + # in this object. This field is used in optimistic locking. This field will + # be ignored when inserting a VmExtensionPolicy. An up-to-date + # fingerprint must be provided in order to update the VmExtensionPolicy. + # + # To see the latest value of the fingerprint, make a get() request to + # retrieve a VmExtensionPolicy. + # @!attribute [rw] id + # @return [::String] + # Output only. [Output Only] Unique identifier for the resource; defined by the server. + # @!attribute [rw] items + # @return [::Array<::Google::Cloud::Compute::V1::VmExtensionPolicy>] + # Output only. [Output Only] A list of VM extension policy resources. + # @!attribute [rw] kind + # @return [::String] + # Output only. Type of resource. + # @!attribute [rw] next_page_token + # @return [::String] + # Output only. [Output Only] This token allows you to get the next page of results for + # list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + # the query parameter pageToken in the next list request. + # Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # @!attribute [rw] self_link + # @return [::String] + # Output only. [Output Only] Server-defined URL for this resource. + # @!attribute [rw] unreachables + # @return [::Array<::String>] + # Output only. [Output Only] Unreachable resources. + # @!attribute [rw] warning + # @return [::Google::Cloud::Compute::V1::Warning] + # Output only. [Output Only] Informational warning message. + class VmExtensionPolicyList + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # Represents a HA VPN gateway. # # HA VPN is a high-availability (HA) Cloud VPN solution that lets you securely diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/backend_buckets_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/backend_buckets_rest_test.rb index 5b3b03d8db02..8ff8d63ddcf2 100644 --- a/google-cloud-compute-v1/test/google/cloud/compute/v1/backend_buckets_rest_test.rb +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/backend_buckets_rest_test.rb @@ -135,6 +135,67 @@ def test_add_signed_url_key end end + def test_aggregated_list + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::BackendBucketAggregatedList.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + filter = "hello world" + include_all_scopes = true + max_results = 42 + order_by = "hello world" + page_token = "hello world" + project = "hello world" + return_partial_success = true + service_project_number = 42 + + aggregated_list_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::BackendBuckets::Rest::ServiceStub.stub :transcode_aggregated_list_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, aggregated_list_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::BackendBuckets::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.aggregated_list({ filter: filter, include_all_scopes: include_all_scopes, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, service_project_number: service_project_number }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.aggregated_list filter: filter, include_all_scopes: include_all_scopes, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, service_project_number: service_project_number do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.aggregated_list ::Google::Cloud::Compute::V1::AggregatedListBackendBucketsRequest.new(filter: filter, include_all_scopes: include_all_scopes, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, service_project_number: service_project_number) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.aggregated_list({ filter: filter, include_all_scopes: include_all_scopes, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, service_project_number: service_project_number }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.aggregated_list(::Google::Cloud::Compute::V1::AggregatedListBackendBucketsRequest.new(filter: filter, include_all_scopes: include_all_scopes, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, service_project_number: service_project_number), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, aggregated_list_client_stub.call_count + end + end + end + def test_delete # Create test objects. client_result = ::Google::Cloud::Compute::V1::Operation.new @@ -474,6 +535,65 @@ def test_list end end + def test_list_usable + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::BackendBucketListUsable.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + filter = "hello world" + max_results = 42 + order_by = "hello world" + page_token = "hello world" + project = "hello world" + return_partial_success = true + + list_usable_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::BackendBuckets::Rest::ServiceStub.stub :transcode_list_usable_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, list_usable_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::BackendBuckets::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.list_usable({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.list_usable filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.list_usable ::Google::Cloud::Compute::V1::ListUsableBackendBucketsRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.list_usable({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.list_usable(::Google::Cloud::Compute::V1::ListUsableBackendBucketsRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, list_usable_client_stub.call_count + end + end + end + def test_patch # Create test objects. client_result = ::Google::Cloud::Compute::V1::Operation.new diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/disks_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/disks_rest_test.rb index 43aa3f07c872..8203a97697d0 100644 --- a/google-cloud-compute-v1/test/google/cloud/compute/v1/disks_rest_test.rb +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/disks_rest_test.rb @@ -1179,6 +1179,64 @@ def test_update end end + def test_update_kms_key + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + disk = "hello world" + disk_update_kms_key_request_resource = {} + project = "hello world" + request_id = "hello world" + zone = "hello world" + + update_kms_key_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::Disks::Rest::ServiceStub.stub :transcode_update_kms_key_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, update_kms_key_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::Disks::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.update_kms_key({ disk: disk, disk_update_kms_key_request_resource: disk_update_kms_key_request_resource, project: project, request_id: request_id, zone: zone }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.update_kms_key disk: disk, disk_update_kms_key_request_resource: disk_update_kms_key_request_resource, project: project, request_id: request_id, zone: zone do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.update_kms_key ::Google::Cloud::Compute::V1::UpdateKmsKeyDiskRequest.new(disk: disk, disk_update_kms_key_request_resource: disk_update_kms_key_request_resource, project: project, request_id: request_id, zone: zone) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.update_kms_key({ disk: disk, disk_update_kms_key_request_resource: disk_update_kms_key_request_resource, project: project, request_id: request_id, zone: zone }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.update_kms_key(::Google::Cloud::Compute::V1::UpdateKmsKeyDiskRequest.new(disk: disk, disk_update_kms_key_request_resource: disk_update_kms_key_request_resource, project: project, request_id: request_id, zone: zone), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, update_kms_key_client_stub.call_count + end + end + end + def test_configure credentials_token = :dummy_value diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/instant_snapshot_groups_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/instant_snapshot_groups_rest_test.rb new file mode 100644 index 000000000000..2d877c38305f --- /dev/null +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/instant_snapshot_groups_rest_test.rb @@ -0,0 +1,501 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "helper" +require "gapic/rest" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/instant_snapshot_groups/rest" + + +class ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::ClientTest < Minitest::Test + class ClientStub + attr_accessor :call_count, :requests + + def initialize response, &block + @response = response + @block = block + @call_count = 0 + @requests = [] + end + + def make_get_request uri:, params: {}, options: {}, method_name: nil + make_http_request :get, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_delete_request uri:, params: {}, options: {}, method_name: nil + make_http_request :delete, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_post_request uri:, body: nil, params: {}, options: {}, method_name: nil + make_http_request :post, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_patch_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :patch, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_put_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :put, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_http_request *args, **kwargs + @call_count += 1 + + @requests << @block&.call(*args, **kwargs) + + @response + end + + def endpoint + "endpoint.example.com" + end + + def universe_domain + "example.com" + end + + def stub_logger + nil + end + + def logger + nil + end + end + + def test_delete + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + instant_snapshot_group = "hello world" + project = "hello world" + request_id = "hello world" + zone = "hello world" + + delete_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::ServiceStub.stub :transcode_delete_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, delete_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.delete({ instant_snapshot_group: instant_snapshot_group, project: project, request_id: request_id, zone: zone }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.delete instant_snapshot_group: instant_snapshot_group, project: project, request_id: request_id, zone: zone do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.delete ::Google::Cloud::Compute::V1::DeleteInstantSnapshotGroupRequest.new(instant_snapshot_group: instant_snapshot_group, project: project, request_id: request_id, zone: zone) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.delete({ instant_snapshot_group: instant_snapshot_group, project: project, request_id: request_id, zone: zone }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.delete(::Google::Cloud::Compute::V1::DeleteInstantSnapshotGroupRequest.new(instant_snapshot_group: instant_snapshot_group, project: project, request_id: request_id, zone: zone), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, delete_client_stub.call_count + end + end + end + + def test_get + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::InstantSnapshotGroup.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + instant_snapshot_group = "hello world" + project = "hello world" + zone = "hello world" + + get_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::ServiceStub.stub :transcode_get_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get({ instant_snapshot_group: instant_snapshot_group, project: project, zone: zone }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get instant_snapshot_group: instant_snapshot_group, project: project, zone: zone do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get ::Google::Cloud::Compute::V1::GetInstantSnapshotGroupRequest.new(instant_snapshot_group: instant_snapshot_group, project: project, zone: zone) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get({ instant_snapshot_group: instant_snapshot_group, project: project, zone: zone }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get(::Google::Cloud::Compute::V1::GetInstantSnapshotGroupRequest.new(instant_snapshot_group: instant_snapshot_group, project: project, zone: zone), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_client_stub.call_count + end + end + end + + def test_get_iam_policy + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Policy.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + options_requested_policy_version = 42 + project = "hello world" + resource = "hello world" + zone = "hello world" + + get_iam_policy_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::ServiceStub.stub :transcode_get_iam_policy_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_iam_policy_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get_iam_policy({ options_requested_policy_version: options_requested_policy_version, project: project, resource: resource, zone: zone }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get_iam_policy options_requested_policy_version: options_requested_policy_version, project: project, resource: resource, zone: zone do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get_iam_policy ::Google::Cloud::Compute::V1::GetIamPolicyInstantSnapshotGroupRequest.new(options_requested_policy_version: options_requested_policy_version, project: project, resource: resource, zone: zone) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get_iam_policy({ options_requested_policy_version: options_requested_policy_version, project: project, resource: resource, zone: zone }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get_iam_policy(::Google::Cloud::Compute::V1::GetIamPolicyInstantSnapshotGroupRequest.new(options_requested_policy_version: options_requested_policy_version, project: project, resource: resource, zone: zone), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_iam_policy_client_stub.call_count + end + end + end + + def test_insert + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + instant_snapshot_group_resource = {} + project = "hello world" + request_id = "hello world" + source_consistency_group = "hello world" + zone = "hello world" + + insert_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::ServiceStub.stub :transcode_insert_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, insert_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.insert({ instant_snapshot_group_resource: instant_snapshot_group_resource, project: project, request_id: request_id, source_consistency_group: source_consistency_group, zone: zone }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.insert instant_snapshot_group_resource: instant_snapshot_group_resource, project: project, request_id: request_id, source_consistency_group: source_consistency_group, zone: zone do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.insert ::Google::Cloud::Compute::V1::InsertInstantSnapshotGroupRequest.new(instant_snapshot_group_resource: instant_snapshot_group_resource, project: project, request_id: request_id, source_consistency_group: source_consistency_group, zone: zone) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.insert({ instant_snapshot_group_resource: instant_snapshot_group_resource, project: project, request_id: request_id, source_consistency_group: source_consistency_group, zone: zone }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.insert(::Google::Cloud::Compute::V1::InsertInstantSnapshotGroupRequest.new(instant_snapshot_group_resource: instant_snapshot_group_resource, project: project, request_id: request_id, source_consistency_group: source_consistency_group, zone: zone), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, insert_client_stub.call_count + end + end + end + + def test_list + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::ListInstantSnapshotGroups.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + filter = "hello world" + max_results = 42 + order_by = "hello world" + page_token = "hello world" + project = "hello world" + return_partial_success = true + zone = "hello world" + + list_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::ServiceStub.stub :transcode_list_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, list_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.list({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, zone: zone }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.list filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, zone: zone do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.list ::Google::Cloud::Compute::V1::ListInstantSnapshotGroupsRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, zone: zone) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.list({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, zone: zone }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.list(::Google::Cloud::Compute::V1::ListInstantSnapshotGroupsRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, zone: zone), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, list_client_stub.call_count + end + end + end + + def test_set_iam_policy + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Policy.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + resource = "hello world" + zone = "hello world" + zone_set_policy_request_resource = {} + + set_iam_policy_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::ServiceStub.stub :transcode_set_iam_policy_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, set_iam_policy_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.set_iam_policy({ project: project, resource: resource, zone: zone, zone_set_policy_request_resource: zone_set_policy_request_resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.set_iam_policy project: project, resource: resource, zone: zone, zone_set_policy_request_resource: zone_set_policy_request_resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.set_iam_policy ::Google::Cloud::Compute::V1::SetIamPolicyInstantSnapshotGroupRequest.new(project: project, resource: resource, zone: zone, zone_set_policy_request_resource: zone_set_policy_request_resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.set_iam_policy({ project: project, resource: resource, zone: zone, zone_set_policy_request_resource: zone_set_policy_request_resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.set_iam_policy(::Google::Cloud::Compute::V1::SetIamPolicyInstantSnapshotGroupRequest.new(project: project, resource: resource, zone: zone, zone_set_policy_request_resource: zone_set_policy_request_resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, set_iam_policy_client_stub.call_count + end + end + end + + def test_test_iam_permissions + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::TestPermissionsResponse.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + resource = "hello world" + test_permissions_request_resource = {} + zone = "hello world" + + test_iam_permissions_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::ServiceStub.stub :transcode_test_iam_permissions_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, test_iam_permissions_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.test_iam_permissions({ project: project, resource: resource, test_permissions_request_resource: test_permissions_request_resource, zone: zone }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.test_iam_permissions project: project, resource: resource, test_permissions_request_resource: test_permissions_request_resource, zone: zone do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.test_iam_permissions ::Google::Cloud::Compute::V1::TestIamPermissionsInstantSnapshotGroupRequest.new(project: project, resource: resource, test_permissions_request_resource: test_permissions_request_resource, zone: zone) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.test_iam_permissions({ project: project, resource: resource, test_permissions_request_resource: test_permissions_request_resource, zone: zone }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.test_iam_permissions(::Google::Cloud::Compute::V1::TestIamPermissionsInstantSnapshotGroupRequest.new(project: project, resource: resource, test_permissions_request_resource: test_permissions_request_resource, zone: zone), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, test_iam_permissions_client_stub.call_count + end + end + end + + def test_configure + credentials_token = :dummy_value + + client = block_config = config = nil + dummy_stub = ClientStub.new nil + Gapic::Rest::ClientStub.stub :new, dummy_stub do + client = ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = credentials_token + end + end + + config = client.configure do |c| + block_config = c + end + + assert_same block_config, config + assert_kind_of ::Google::Cloud::Compute::V1::InstantSnapshotGroups::Rest::Client::Configuration, config + end +end diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/region_backend_buckets_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_backend_buckets_rest_test.rb new file mode 100644 index 000000000000..91f52fcef066 --- /dev/null +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_backend_buckets_rest_test.rb @@ -0,0 +1,618 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "helper" +require "gapic/rest" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/region_backend_buckets/rest" + + +class ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::ClientTest < Minitest::Test + class ClientStub + attr_accessor :call_count, :requests + + def initialize response, &block + @response = response + @block = block + @call_count = 0 + @requests = [] + end + + def make_get_request uri:, params: {}, options: {}, method_name: nil + make_http_request :get, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_delete_request uri:, params: {}, options: {}, method_name: nil + make_http_request :delete, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_post_request uri:, body: nil, params: {}, options: {}, method_name: nil + make_http_request :post, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_patch_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :patch, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_put_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :put, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_http_request *args, **kwargs + @call_count += 1 + + @requests << @block&.call(*args, **kwargs) + + @response + end + + def endpoint + "endpoint.example.com" + end + + def universe_domain + "example.com" + end + + def stub_logger + nil + end + + def logger + nil + end + end + + def test_delete + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + backend_bucket = "hello world" + project = "hello world" + region = "hello world" + request_id = "hello world" + + delete_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::ServiceStub.stub :transcode_delete_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, delete_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.delete({ backend_bucket: backend_bucket, project: project, region: region, request_id: request_id }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.delete backend_bucket: backend_bucket, project: project, region: region, request_id: request_id do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.delete ::Google::Cloud::Compute::V1::DeleteRegionBackendBucketRequest.new(backend_bucket: backend_bucket, project: project, region: region, request_id: request_id) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.delete({ backend_bucket: backend_bucket, project: project, region: region, request_id: request_id }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.delete(::Google::Cloud::Compute::V1::DeleteRegionBackendBucketRequest.new(backend_bucket: backend_bucket, project: project, region: region, request_id: request_id), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, delete_client_stub.call_count + end + end + end + + def test_get + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::BackendBucket.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + backend_bucket = "hello world" + project = "hello world" + region = "hello world" + + get_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::ServiceStub.stub :transcode_get_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get({ backend_bucket: backend_bucket, project: project, region: region }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get backend_bucket: backend_bucket, project: project, region: region do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get ::Google::Cloud::Compute::V1::GetRegionBackendBucketRequest.new(backend_bucket: backend_bucket, project: project, region: region) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get({ backend_bucket: backend_bucket, project: project, region: region }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get(::Google::Cloud::Compute::V1::GetRegionBackendBucketRequest.new(backend_bucket: backend_bucket, project: project, region: region), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_client_stub.call_count + end + end + end + + def test_get_iam_policy + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Policy.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + options_requested_policy_version = 42 + project = "hello world" + region = "hello world" + resource = "hello world" + + get_iam_policy_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::ServiceStub.stub :transcode_get_iam_policy_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_iam_policy_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get_iam_policy({ options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get_iam_policy options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get_iam_policy ::Google::Cloud::Compute::V1::GetIamPolicyRegionBackendBucketRequest.new(options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get_iam_policy({ options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get_iam_policy(::Google::Cloud::Compute::V1::GetIamPolicyRegionBackendBucketRequest.new(options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_iam_policy_client_stub.call_count + end + end + end + + def test_insert + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + backend_bucket_resource = {} + project = "hello world" + region = "hello world" + request_id = "hello world" + + insert_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::ServiceStub.stub :transcode_insert_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, insert_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.insert({ backend_bucket_resource: backend_bucket_resource, project: project, region: region, request_id: request_id }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.insert backend_bucket_resource: backend_bucket_resource, project: project, region: region, request_id: request_id do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.insert ::Google::Cloud::Compute::V1::InsertRegionBackendBucketRequest.new(backend_bucket_resource: backend_bucket_resource, project: project, region: region, request_id: request_id) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.insert({ backend_bucket_resource: backend_bucket_resource, project: project, region: region, request_id: request_id }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.insert(::Google::Cloud::Compute::V1::InsertRegionBackendBucketRequest.new(backend_bucket_resource: backend_bucket_resource, project: project, region: region, request_id: request_id), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, insert_client_stub.call_count + end + end + end + + def test_list + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::BackendBucketList.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + filter = "hello world" + max_results = 42 + order_by = "hello world" + page_token = "hello world" + project = "hello world" + region = "hello world" + return_partial_success = true + + list_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::ServiceStub.stub :transcode_list_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, list_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.list({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.list filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.list ::Google::Cloud::Compute::V1::ListRegionBackendBucketsRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.list({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.list(::Google::Cloud::Compute::V1::ListRegionBackendBucketsRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, list_client_stub.call_count + end + end + end + + def test_list_usable + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::BackendBucketListUsable.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + filter = "hello world" + max_results = 42 + order_by = "hello world" + page_token = "hello world" + project = "hello world" + region = "hello world" + return_partial_success = true + + list_usable_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::ServiceStub.stub :transcode_list_usable_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, list_usable_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.list_usable({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.list_usable filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.list_usable ::Google::Cloud::Compute::V1::ListUsableRegionBackendBucketsRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.list_usable({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.list_usable(::Google::Cloud::Compute::V1::ListUsableRegionBackendBucketsRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, list_usable_client_stub.call_count + end + end + end + + def test_patch + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + backend_bucket = "hello world" + backend_bucket_resource = {} + project = "hello world" + region = "hello world" + request_id = "hello world" + + patch_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::ServiceStub.stub :transcode_patch_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, patch_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.patch({ backend_bucket: backend_bucket, backend_bucket_resource: backend_bucket_resource, project: project, region: region, request_id: request_id }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.patch backend_bucket: backend_bucket, backend_bucket_resource: backend_bucket_resource, project: project, region: region, request_id: request_id do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.patch ::Google::Cloud::Compute::V1::PatchRegionBackendBucketRequest.new(backend_bucket: backend_bucket, backend_bucket_resource: backend_bucket_resource, project: project, region: region, request_id: request_id) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.patch({ backend_bucket: backend_bucket, backend_bucket_resource: backend_bucket_resource, project: project, region: region, request_id: request_id }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.patch(::Google::Cloud::Compute::V1::PatchRegionBackendBucketRequest.new(backend_bucket: backend_bucket, backend_bucket_resource: backend_bucket_resource, project: project, region: region, request_id: request_id), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, patch_client_stub.call_count + end + end + end + + def test_set_iam_policy + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Policy.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + region_set_policy_request_resource = {} + resource = "hello world" + + set_iam_policy_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::ServiceStub.stub :transcode_set_iam_policy_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, set_iam_policy_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.set_iam_policy({ project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.set_iam_policy project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.set_iam_policy ::Google::Cloud::Compute::V1::SetIamPolicyRegionBackendBucketRequest.new(project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.set_iam_policy({ project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.set_iam_policy(::Google::Cloud::Compute::V1::SetIamPolicyRegionBackendBucketRequest.new(project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, set_iam_policy_client_stub.call_count + end + end + end + + def test_test_iam_permissions + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::TestPermissionsResponse.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + resource = "hello world" + test_permissions_request_resource = {} + + test_iam_permissions_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::ServiceStub.stub :transcode_test_iam_permissions_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, test_iam_permissions_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.test_iam_permissions({ project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.test_iam_permissions project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.test_iam_permissions ::Google::Cloud::Compute::V1::TestIamPermissionsRegionBackendBucketRequest.new(project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.test_iam_permissions({ project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.test_iam_permissions(::Google::Cloud::Compute::V1::TestIamPermissionsRegionBackendBucketRequest.new(project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, test_iam_permissions_client_stub.call_count + end + end + end + + def test_configure + credentials_token = :dummy_value + + client = block_config = config = nil + dummy_stub = ClientStub.new nil + Gapic::Rest::ClientStub.stub :new, dummy_stub do + client = ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client.new do |config| + config.credentials = credentials_token + end + end + + config = client.configure do |c| + block_config = c + end + + assert_same block_config, config + assert_kind_of ::Google::Cloud::Compute::V1::RegionBackendBuckets::Rest::Client::Configuration, config + end +end diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/region_composite_health_checks_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_composite_health_checks_rest_test.rb index bf204e7b17af..ea970adcfda7 100644 --- a/google-cloud-compute-v1/test/google/cloud/compute/v1/region_composite_health_checks_rest_test.rb +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_composite_health_checks_rest_test.rb @@ -252,6 +252,62 @@ def test_get end end + def test_get_health + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::CompositeHealthCheckHealth.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + composite_health_check = "hello world" + project = "hello world" + region = "hello world" + + get_health_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionCompositeHealthChecks::Rest::ServiceStub.stub :transcode_get_health_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_health_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionCompositeHealthChecks::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get_health({ composite_health_check: composite_health_check, project: project, region: region }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get_health composite_health_check: composite_health_check, project: project, region: region do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get_health ::Google::Cloud::Compute::V1::GetHealthRegionCompositeHealthCheckRequest.new(composite_health_check: composite_health_check, project: project, region: region) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get_health({ composite_health_check: composite_health_check, project: project, region: region }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get_health(::Google::Cloud::Compute::V1::GetHealthRegionCompositeHealthCheckRequest.new(composite_health_check: composite_health_check, project: project, region: region), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_health_client_stub.call_count + end + end + end + def test_insert # Create test objects. client_result = ::Google::Cloud::Compute::V1::Operation.new diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/region_disks_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_disks_rest_test.rb index 9612d37e587b..8952472861aa 100644 --- a/google-cloud-compute-v1/test/google/cloud/compute/v1/region_disks_rest_test.rb +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_disks_rest_test.rb @@ -1059,6 +1059,64 @@ def test_update end end + def test_update_kms_key + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + disk = "hello world" + project = "hello world" + region = "hello world" + region_disk_update_kms_key_request_resource = {} + request_id = "hello world" + + update_kms_key_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionDisks::Rest::ServiceStub.stub :transcode_update_kms_key_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, update_kms_key_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionDisks::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.update_kms_key({ disk: disk, project: project, region: region, region_disk_update_kms_key_request_resource: region_disk_update_kms_key_request_resource, request_id: request_id }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.update_kms_key disk: disk, project: project, region: region, region_disk_update_kms_key_request_resource: region_disk_update_kms_key_request_resource, request_id: request_id do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.update_kms_key ::Google::Cloud::Compute::V1::UpdateKmsKeyRegionDiskRequest.new(disk: disk, project: project, region: region, region_disk_update_kms_key_request_resource: region_disk_update_kms_key_request_resource, request_id: request_id) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.update_kms_key({ disk: disk, project: project, region: region, region_disk_update_kms_key_request_resource: region_disk_update_kms_key_request_resource, request_id: request_id }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.update_kms_key(::Google::Cloud::Compute::V1::UpdateKmsKeyRegionDiskRequest.new(disk: disk, project: project, region: region, region_disk_update_kms_key_request_resource: region_disk_update_kms_key_request_resource, request_id: request_id), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, update_kms_key_client_stub.call_count + end + end + end + def test_configure credentials_token = :dummy_value diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/region_health_sources_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_health_sources_rest_test.rb index 636680a6ab98..ff15417555bc 100644 --- a/google-cloud-compute-v1/test/google/cloud/compute/v1/region_health_sources_rest_test.rb +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_health_sources_rest_test.rb @@ -252,6 +252,62 @@ def test_get end end + def test_get_health + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::HealthSourceHealth.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + health_source = "hello world" + project = "hello world" + region = "hello world" + + get_health_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionHealthSources::Rest::ServiceStub.stub :transcode_get_health_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_health_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionHealthSources::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get_health({ health_source: health_source, project: project, region: region }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get_health health_source: health_source, project: project, region: region do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get_health ::Google::Cloud::Compute::V1::GetHealthRegionHealthSourceRequest.new(health_source: health_source, project: project, region: region) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get_health({ health_source: health_source, project: project, region: region }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get_health(::Google::Cloud::Compute::V1::GetHealthRegionHealthSourceRequest.new(health_source: health_source, project: project, region: region), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_health_client_stub.call_count + end + end + end + def test_insert # Create test objects. client_result = ::Google::Cloud::Compute::V1::Operation.new diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/region_instance_group_manager_resize_requests_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_instance_group_manager_resize_requests_rest_test.rb new file mode 100644 index 000000000000..698601a06df2 --- /dev/null +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_instance_group_manager_resize_requests_rest_test.rb @@ -0,0 +1,391 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "helper" +require "gapic/rest" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/region_instance_group_manager_resize_requests/rest" + + +class ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::ClientTest < Minitest::Test + class ClientStub + attr_accessor :call_count, :requests + + def initialize response, &block + @response = response + @block = block + @call_count = 0 + @requests = [] + end + + def make_get_request uri:, params: {}, options: {}, method_name: nil + make_http_request :get, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_delete_request uri:, params: {}, options: {}, method_name: nil + make_http_request :delete, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_post_request uri:, body: nil, params: {}, options: {}, method_name: nil + make_http_request :post, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_patch_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :patch, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_put_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :put, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_http_request *args, **kwargs + @call_count += 1 + + @requests << @block&.call(*args, **kwargs) + + @response + end + + def endpoint + "endpoint.example.com" + end + + def universe_domain + "example.com" + end + + def stub_logger + nil + end + + def logger + nil + end + end + + def test_cancel + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + instance_group_manager = "hello world" + project = "hello world" + region = "hello world" + request_id = "hello world" + resize_request = "hello world" + + cancel_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::ServiceStub.stub :transcode_cancel_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, cancel_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.cancel({ instance_group_manager: instance_group_manager, project: project, region: region, request_id: request_id, resize_request: resize_request }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.cancel instance_group_manager: instance_group_manager, project: project, region: region, request_id: request_id, resize_request: resize_request do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.cancel ::Google::Cloud::Compute::V1::CancelRegionInstanceGroupManagerResizeRequestRequest.new(instance_group_manager: instance_group_manager, project: project, region: region, request_id: request_id, resize_request: resize_request) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.cancel({ instance_group_manager: instance_group_manager, project: project, region: region, request_id: request_id, resize_request: resize_request }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.cancel(::Google::Cloud::Compute::V1::CancelRegionInstanceGroupManagerResizeRequestRequest.new(instance_group_manager: instance_group_manager, project: project, region: region, request_id: request_id, resize_request: resize_request), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, cancel_client_stub.call_count + end + end + end + + def test_delete + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + instance_group_manager = "hello world" + project = "hello world" + region = "hello world" + request_id = "hello world" + resize_request = "hello world" + + delete_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::ServiceStub.stub :transcode_delete_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, delete_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.delete({ instance_group_manager: instance_group_manager, project: project, region: region, request_id: request_id, resize_request: resize_request }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.delete instance_group_manager: instance_group_manager, project: project, region: region, request_id: request_id, resize_request: resize_request do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.delete ::Google::Cloud::Compute::V1::DeleteRegionInstanceGroupManagerResizeRequestRequest.new(instance_group_manager: instance_group_manager, project: project, region: region, request_id: request_id, resize_request: resize_request) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.delete({ instance_group_manager: instance_group_manager, project: project, region: region, request_id: request_id, resize_request: resize_request }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.delete(::Google::Cloud::Compute::V1::DeleteRegionInstanceGroupManagerResizeRequestRequest.new(instance_group_manager: instance_group_manager, project: project, region: region, request_id: request_id, resize_request: resize_request), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, delete_client_stub.call_count + end + end + end + + def test_get + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::InstanceGroupManagerResizeRequest.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + instance_group_manager = "hello world" + project = "hello world" + region = "hello world" + resize_request = "hello world" + + get_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::ServiceStub.stub :transcode_get_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get({ instance_group_manager: instance_group_manager, project: project, region: region, resize_request: resize_request }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get instance_group_manager: instance_group_manager, project: project, region: region, resize_request: resize_request do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get ::Google::Cloud::Compute::V1::GetRegionInstanceGroupManagerResizeRequestRequest.new(instance_group_manager: instance_group_manager, project: project, region: region, resize_request: resize_request) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get({ instance_group_manager: instance_group_manager, project: project, region: region, resize_request: resize_request }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get(::Google::Cloud::Compute::V1::GetRegionInstanceGroupManagerResizeRequestRequest.new(instance_group_manager: instance_group_manager, project: project, region: region, resize_request: resize_request), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_client_stub.call_count + end + end + end + + def test_insert + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + instance_group_manager = "hello world" + instance_group_manager_resize_request_resource = {} + project = "hello world" + region = "hello world" + request_id = "hello world" + + insert_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::ServiceStub.stub :transcode_insert_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, insert_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.insert({ instance_group_manager: instance_group_manager, instance_group_manager_resize_request_resource: instance_group_manager_resize_request_resource, project: project, region: region, request_id: request_id }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.insert instance_group_manager: instance_group_manager, instance_group_manager_resize_request_resource: instance_group_manager_resize_request_resource, project: project, region: region, request_id: request_id do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.insert ::Google::Cloud::Compute::V1::InsertRegionInstanceGroupManagerResizeRequestRequest.new(instance_group_manager: instance_group_manager, instance_group_manager_resize_request_resource: instance_group_manager_resize_request_resource, project: project, region: region, request_id: request_id) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.insert({ instance_group_manager: instance_group_manager, instance_group_manager_resize_request_resource: instance_group_manager_resize_request_resource, project: project, region: region, request_id: request_id }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.insert(::Google::Cloud::Compute::V1::InsertRegionInstanceGroupManagerResizeRequestRequest.new(instance_group_manager: instance_group_manager, instance_group_manager_resize_request_resource: instance_group_manager_resize_request_resource, project: project, region: region, request_id: request_id), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, insert_client_stub.call_count + end + end + end + + def test_list + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequestsListResponse.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + filter = "hello world" + instance_group_manager = "hello world" + max_results = 42 + order_by = "hello world" + page_token = "hello world" + project = "hello world" + region = "hello world" + return_partial_success = true + + list_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::ServiceStub.stub :transcode_list_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, list_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.list({ filter: filter, instance_group_manager: instance_group_manager, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.list filter: filter, instance_group_manager: instance_group_manager, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.list ::Google::Cloud::Compute::V1::ListRegionInstanceGroupManagerResizeRequestsRequest.new(filter: filter, instance_group_manager: instance_group_manager, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.list({ filter: filter, instance_group_manager: instance_group_manager, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.list(::Google::Cloud::Compute::V1::ListRegionInstanceGroupManagerResizeRequestsRequest.new(filter: filter, instance_group_manager: instance_group_manager, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, list_client_stub.call_count + end + end + end + + def test_configure + credentials_token = :dummy_value + + client = block_config = config = nil + dummy_stub = ClientStub.new nil + Gapic::Rest::ClientStub.stub :new, dummy_stub do + client = ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client.new do |config| + config.credentials = credentials_token + end + end + + config = client.configure do |c| + block_config = c + end + + assert_same block_config, config + assert_kind_of ::Google::Cloud::Compute::V1::RegionInstanceGroupManagerResizeRequests::Rest::Client::Configuration, config + end +end diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/region_instant_snapshot_groups_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_instant_snapshot_groups_rest_test.rb new file mode 100644 index 000000000000..f35ed4a10438 --- /dev/null +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_instant_snapshot_groups_rest_test.rb @@ -0,0 +1,501 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "helper" +require "gapic/rest" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/region_instant_snapshot_groups/rest" + + +class ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::ClientTest < Minitest::Test + class ClientStub + attr_accessor :call_count, :requests + + def initialize response, &block + @response = response + @block = block + @call_count = 0 + @requests = [] + end + + def make_get_request uri:, params: {}, options: {}, method_name: nil + make_http_request :get, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_delete_request uri:, params: {}, options: {}, method_name: nil + make_http_request :delete, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_post_request uri:, body: nil, params: {}, options: {}, method_name: nil + make_http_request :post, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_patch_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :patch, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_put_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :put, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_http_request *args, **kwargs + @call_count += 1 + + @requests << @block&.call(*args, **kwargs) + + @response + end + + def endpoint + "endpoint.example.com" + end + + def universe_domain + "example.com" + end + + def stub_logger + nil + end + + def logger + nil + end + end + + def test_delete + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + instant_snapshot_group = "hello world" + project = "hello world" + region = "hello world" + request_id = "hello world" + + delete_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::ServiceStub.stub :transcode_delete_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, delete_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.delete({ instant_snapshot_group: instant_snapshot_group, project: project, region: region, request_id: request_id }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.delete instant_snapshot_group: instant_snapshot_group, project: project, region: region, request_id: request_id do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.delete ::Google::Cloud::Compute::V1::DeleteRegionInstantSnapshotGroupRequest.new(instant_snapshot_group: instant_snapshot_group, project: project, region: region, request_id: request_id) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.delete({ instant_snapshot_group: instant_snapshot_group, project: project, region: region, request_id: request_id }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.delete(::Google::Cloud::Compute::V1::DeleteRegionInstantSnapshotGroupRequest.new(instant_snapshot_group: instant_snapshot_group, project: project, region: region, request_id: request_id), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, delete_client_stub.call_count + end + end + end + + def test_get + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::InstantSnapshotGroup.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + instant_snapshot_group = "hello world" + project = "hello world" + region = "hello world" + + get_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::ServiceStub.stub :transcode_get_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get({ instant_snapshot_group: instant_snapshot_group, project: project, region: region }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get instant_snapshot_group: instant_snapshot_group, project: project, region: region do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get ::Google::Cloud::Compute::V1::GetRegionInstantSnapshotGroupRequest.new(instant_snapshot_group: instant_snapshot_group, project: project, region: region) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get({ instant_snapshot_group: instant_snapshot_group, project: project, region: region }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get(::Google::Cloud::Compute::V1::GetRegionInstantSnapshotGroupRequest.new(instant_snapshot_group: instant_snapshot_group, project: project, region: region), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_client_stub.call_count + end + end + end + + def test_get_iam_policy + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Policy.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + options_requested_policy_version = 42 + project = "hello world" + region = "hello world" + resource = "hello world" + + get_iam_policy_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::ServiceStub.stub :transcode_get_iam_policy_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_iam_policy_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get_iam_policy({ options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get_iam_policy options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get_iam_policy ::Google::Cloud::Compute::V1::GetIamPolicyRegionInstantSnapshotGroupRequest.new(options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get_iam_policy({ options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get_iam_policy(::Google::Cloud::Compute::V1::GetIamPolicyRegionInstantSnapshotGroupRequest.new(options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_iam_policy_client_stub.call_count + end + end + end + + def test_insert + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + instant_snapshot_group_resource = {} + project = "hello world" + region = "hello world" + request_id = "hello world" + source_consistency_group = "hello world" + + insert_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::ServiceStub.stub :transcode_insert_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, insert_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.insert({ instant_snapshot_group_resource: instant_snapshot_group_resource, project: project, region: region, request_id: request_id, source_consistency_group: source_consistency_group }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.insert instant_snapshot_group_resource: instant_snapshot_group_resource, project: project, region: region, request_id: request_id, source_consistency_group: source_consistency_group do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.insert ::Google::Cloud::Compute::V1::InsertRegionInstantSnapshotGroupRequest.new(instant_snapshot_group_resource: instant_snapshot_group_resource, project: project, region: region, request_id: request_id, source_consistency_group: source_consistency_group) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.insert({ instant_snapshot_group_resource: instant_snapshot_group_resource, project: project, region: region, request_id: request_id, source_consistency_group: source_consistency_group }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.insert(::Google::Cloud::Compute::V1::InsertRegionInstantSnapshotGroupRequest.new(instant_snapshot_group_resource: instant_snapshot_group_resource, project: project, region: region, request_id: request_id, source_consistency_group: source_consistency_group), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, insert_client_stub.call_count + end + end + end + + def test_list + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::ListInstantSnapshotGroups.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + filter = "hello world" + max_results = 42 + order_by = "hello world" + page_token = "hello world" + project = "hello world" + region = "hello world" + return_partial_success = true + + list_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::ServiceStub.stub :transcode_list_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, list_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.list({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.list filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.list ::Google::Cloud::Compute::V1::ListRegionInstantSnapshotGroupsRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.list({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.list(::Google::Cloud::Compute::V1::ListRegionInstantSnapshotGroupsRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, list_client_stub.call_count + end + end + end + + def test_set_iam_policy + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Policy.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + region_set_policy_request_resource = {} + resource = "hello world" + + set_iam_policy_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::ServiceStub.stub :transcode_set_iam_policy_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, set_iam_policy_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.set_iam_policy({ project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.set_iam_policy project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.set_iam_policy ::Google::Cloud::Compute::V1::SetIamPolicyRegionInstantSnapshotGroupRequest.new(project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.set_iam_policy({ project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.set_iam_policy(::Google::Cloud::Compute::V1::SetIamPolicyRegionInstantSnapshotGroupRequest.new(project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, set_iam_policy_client_stub.call_count + end + end + end + + def test_test_iam_permissions + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::TestPermissionsResponse.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + resource = "hello world" + test_permissions_request_resource = {} + + test_iam_permissions_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::ServiceStub.stub :transcode_test_iam_permissions_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, test_iam_permissions_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.test_iam_permissions({ project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.test_iam_permissions project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.test_iam_permissions ::Google::Cloud::Compute::V1::TestIamPermissionsRegionInstantSnapshotGroupRequest.new(project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.test_iam_permissions({ project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.test_iam_permissions(::Google::Cloud::Compute::V1::TestIamPermissionsRegionInstantSnapshotGroupRequest.new(project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, test_iam_permissions_client_stub.call_count + end + end + end + + def test_configure + credentials_token = :dummy_value + + client = block_config = config = nil + dummy_stub = ClientStub.new nil + Gapic::Rest::ClientStub.stub :new, dummy_stub do + client = ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client.new do |config| + config.credentials = credentials_token + end + end + + config = client.configure do |c| + block_config = c + end + + assert_same block_config, config + assert_kind_of ::Google::Cloud::Compute::V1::RegionInstantSnapshotGroups::Rest::Client::Configuration, config + end +end diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/region_snapshot_settings_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_snapshot_settings_rest_test.rb new file mode 100644 index 000000000000..72beefc4516f --- /dev/null +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_snapshot_settings_rest_test.rb @@ -0,0 +1,212 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "helper" +require "gapic/rest" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/region_snapshot_settings/rest" + + +class ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::ClientTest < Minitest::Test + class ClientStub + attr_accessor :call_count, :requests + + def initialize response, &block + @response = response + @block = block + @call_count = 0 + @requests = [] + end + + def make_get_request uri:, params: {}, options: {}, method_name: nil + make_http_request :get, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_delete_request uri:, params: {}, options: {}, method_name: nil + make_http_request :delete, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_post_request uri:, body: nil, params: {}, options: {}, method_name: nil + make_http_request :post, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_patch_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :patch, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_put_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :put, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_http_request *args, **kwargs + @call_count += 1 + + @requests << @block&.call(*args, **kwargs) + + @response + end + + def endpoint + "endpoint.example.com" + end + + def universe_domain + "example.com" + end + + def stub_logger + nil + end + + def logger + nil + end + end + + def test_get + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::SnapshotSettings.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + + get_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::ServiceStub.stub :transcode_get_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get({ project: project, region: region }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get project: project, region: region do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get ::Google::Cloud::Compute::V1::GetRegionSnapshotSettingRequest.new(project: project, region: region) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get({ project: project, region: region }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get(::Google::Cloud::Compute::V1::GetRegionSnapshotSettingRequest.new(project: project, region: region), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_client_stub.call_count + end + end + end + + def test_patch + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + request_id = "hello world" + snapshot_settings_resource = {} + update_mask = "hello world" + + patch_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::ServiceStub.stub :transcode_patch_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, patch_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.patch({ project: project, region: region, request_id: request_id, snapshot_settings_resource: snapshot_settings_resource, update_mask: update_mask }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.patch project: project, region: region, request_id: request_id, snapshot_settings_resource: snapshot_settings_resource, update_mask: update_mask do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.patch ::Google::Cloud::Compute::V1::PatchRegionSnapshotSettingRequest.new(project: project, region: region, request_id: request_id, snapshot_settings_resource: snapshot_settings_resource, update_mask: update_mask) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.patch({ project: project, region: region, request_id: request_id, snapshot_settings_resource: snapshot_settings_resource, update_mask: update_mask }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.patch(::Google::Cloud::Compute::V1::PatchRegionSnapshotSettingRequest.new(project: project, region: region, request_id: request_id, snapshot_settings_resource: snapshot_settings_resource, update_mask: update_mask), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, patch_client_stub.call_count + end + end + end + + def test_configure + credentials_token = :dummy_value + + client = block_config = config = nil + dummy_stub = ClientStub.new nil + Gapic::Rest::ClientStub.stub :new, dummy_stub do + client = ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client.new do |config| + config.credentials = credentials_token + end + end + + config = client.configure do |c| + block_config = c + end + + assert_same block_config, config + assert_kind_of ::Google::Cloud::Compute::V1::RegionSnapshotSettings::Rest::Client::Configuration, config + end +end diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/region_snapshots_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_snapshots_rest_test.rb new file mode 100644 index 000000000000..42e36235d6cd --- /dev/null +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/region_snapshots_rest_test.rb @@ -0,0 +1,616 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "helper" +require "gapic/rest" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/region_snapshots/rest" + + +class ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::ClientTest < Minitest::Test + class ClientStub + attr_accessor :call_count, :requests + + def initialize response, &block + @response = response + @block = block + @call_count = 0 + @requests = [] + end + + def make_get_request uri:, params: {}, options: {}, method_name: nil + make_http_request :get, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_delete_request uri:, params: {}, options: {}, method_name: nil + make_http_request :delete, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_post_request uri:, body: nil, params: {}, options: {}, method_name: nil + make_http_request :post, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_patch_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :patch, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_put_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :put, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_http_request *args, **kwargs + @call_count += 1 + + @requests << @block&.call(*args, **kwargs) + + @response + end + + def endpoint + "endpoint.example.com" + end + + def universe_domain + "example.com" + end + + def stub_logger + nil + end + + def logger + nil + end + end + + def test_delete + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + request_id = "hello world" + snapshot = "hello world" + + delete_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::ServiceStub.stub :transcode_delete_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, delete_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.delete({ project: project, region: region, request_id: request_id, snapshot: snapshot }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.delete project: project, region: region, request_id: request_id, snapshot: snapshot do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.delete ::Google::Cloud::Compute::V1::DeleteRegionSnapshotRequest.new(project: project, region: region, request_id: request_id, snapshot: snapshot) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.delete({ project: project, region: region, request_id: request_id, snapshot: snapshot }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.delete(::Google::Cloud::Compute::V1::DeleteRegionSnapshotRequest.new(project: project, region: region, request_id: request_id, snapshot: snapshot), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, delete_client_stub.call_count + end + end + end + + def test_get + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Snapshot.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + snapshot = "hello world" + + get_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::ServiceStub.stub :transcode_get_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get({ project: project, region: region, snapshot: snapshot }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get project: project, region: region, snapshot: snapshot do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get ::Google::Cloud::Compute::V1::GetRegionSnapshotRequest.new(project: project, region: region, snapshot: snapshot) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get({ project: project, region: region, snapshot: snapshot }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get(::Google::Cloud::Compute::V1::GetRegionSnapshotRequest.new(project: project, region: region, snapshot: snapshot), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_client_stub.call_count + end + end + end + + def test_get_iam_policy + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Policy.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + options_requested_policy_version = 42 + project = "hello world" + region = "hello world" + resource = "hello world" + + get_iam_policy_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::ServiceStub.stub :transcode_get_iam_policy_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_iam_policy_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get_iam_policy({ options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get_iam_policy options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get_iam_policy ::Google::Cloud::Compute::V1::GetIamPolicyRegionSnapshotRequest.new(options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get_iam_policy({ options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get_iam_policy(::Google::Cloud::Compute::V1::GetIamPolicyRegionSnapshotRequest.new(options_requested_policy_version: options_requested_policy_version, project: project, region: region, resource: resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_iam_policy_client_stub.call_count + end + end + end + + def test_insert + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + request_id = "hello world" + snapshot_resource = {} + + insert_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::ServiceStub.stub :transcode_insert_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, insert_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.insert({ project: project, region: region, request_id: request_id, snapshot_resource: snapshot_resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.insert project: project, region: region, request_id: request_id, snapshot_resource: snapshot_resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.insert ::Google::Cloud::Compute::V1::InsertRegionSnapshotRequest.new(project: project, region: region, request_id: request_id, snapshot_resource: snapshot_resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.insert({ project: project, region: region, request_id: request_id, snapshot_resource: snapshot_resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.insert(::Google::Cloud::Compute::V1::InsertRegionSnapshotRequest.new(project: project, region: region, request_id: request_id, snapshot_resource: snapshot_resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, insert_client_stub.call_count + end + end + end + + def test_list + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::SnapshotList.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + filter = "hello world" + max_results = 42 + order_by = "hello world" + page_token = "hello world" + project = "hello world" + region = "hello world" + return_partial_success = true + + list_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::ServiceStub.stub :transcode_list_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, list_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.list({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.list filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.list ::Google::Cloud::Compute::V1::ListRegionSnapshotsRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.list({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.list(::Google::Cloud::Compute::V1::ListRegionSnapshotsRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, region: region, return_partial_success: return_partial_success), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, list_client_stub.call_count + end + end + end + + def test_set_iam_policy + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Policy.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + region_set_policy_request_resource = {} + resource = "hello world" + + set_iam_policy_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::ServiceStub.stub :transcode_set_iam_policy_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, set_iam_policy_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.set_iam_policy({ project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.set_iam_policy project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.set_iam_policy ::Google::Cloud::Compute::V1::SetIamPolicyRegionSnapshotRequest.new(project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.set_iam_policy({ project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.set_iam_policy(::Google::Cloud::Compute::V1::SetIamPolicyRegionSnapshotRequest.new(project: project, region: region, region_set_policy_request_resource: region_set_policy_request_resource, resource: resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, set_iam_policy_client_stub.call_count + end + end + end + + def test_set_labels + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + region_set_labels_request_resource = {} + request_id = "hello world" + resource = "hello world" + + set_labels_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::ServiceStub.stub :transcode_set_labels_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, set_labels_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.set_labels({ project: project, region: region, region_set_labels_request_resource: region_set_labels_request_resource, request_id: request_id, resource: resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.set_labels project: project, region: region, region_set_labels_request_resource: region_set_labels_request_resource, request_id: request_id, resource: resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.set_labels ::Google::Cloud::Compute::V1::SetLabelsRegionSnapshotRequest.new(project: project, region: region, region_set_labels_request_resource: region_set_labels_request_resource, request_id: request_id, resource: resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.set_labels({ project: project, region: region, region_set_labels_request_resource: region_set_labels_request_resource, request_id: request_id, resource: resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.set_labels(::Google::Cloud::Compute::V1::SetLabelsRegionSnapshotRequest.new(project: project, region: region, region_set_labels_request_resource: region_set_labels_request_resource, request_id: request_id, resource: resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, set_labels_client_stub.call_count + end + end + end + + def test_test_iam_permissions + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::TestPermissionsResponse.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + resource = "hello world" + test_permissions_request_resource = {} + + test_iam_permissions_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::ServiceStub.stub :transcode_test_iam_permissions_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, test_iam_permissions_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.test_iam_permissions({ project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.test_iam_permissions project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.test_iam_permissions ::Google::Cloud::Compute::V1::TestIamPermissionsRegionSnapshotRequest.new(project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.test_iam_permissions({ project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.test_iam_permissions(::Google::Cloud::Compute::V1::TestIamPermissionsRegionSnapshotRequest.new(project: project, region: region, resource: resource, test_permissions_request_resource: test_permissions_request_resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, test_iam_permissions_client_stub.call_count + end + end + end + + def test_update_kms_key + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + region = "hello world" + region_snapshot_update_kms_key_request_resource = {} + request_id = "hello world" + snapshot = "hello world" + + update_kms_key_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::ServiceStub.stub :transcode_update_kms_key_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, update_kms_key_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.update_kms_key({ project: project, region: region, region_snapshot_update_kms_key_request_resource: region_snapshot_update_kms_key_request_resource, request_id: request_id, snapshot: snapshot }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.update_kms_key project: project, region: region, region_snapshot_update_kms_key_request_resource: region_snapshot_update_kms_key_request_resource, request_id: request_id, snapshot: snapshot do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.update_kms_key ::Google::Cloud::Compute::V1::UpdateKmsKeyRegionSnapshotRequest.new(project: project, region: region, region_snapshot_update_kms_key_request_resource: region_snapshot_update_kms_key_request_resource, request_id: request_id, snapshot: snapshot) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.update_kms_key({ project: project, region: region, region_snapshot_update_kms_key_request_resource: region_snapshot_update_kms_key_request_resource, request_id: request_id, snapshot: snapshot }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.update_kms_key(::Google::Cloud::Compute::V1::UpdateKmsKeyRegionSnapshotRequest.new(project: project, region: region, region_snapshot_update_kms_key_request_resource: region_snapshot_update_kms_key_request_resource, request_id: request_id, snapshot: snapshot), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, update_kms_key_client_stub.call_count + end + end + end + + def test_configure + credentials_token = :dummy_value + + client = block_config = config = nil + dummy_stub = ClientStub.new nil + Gapic::Rest::ClientStub.stub :new, dummy_stub do + client = ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client.new do |config| + config.credentials = credentials_token + end + end + + config = client.configure do |c| + block_config = c + end + + assert_same block_config, config + assert_kind_of ::Google::Cloud::Compute::V1::RegionSnapshots::Rest::Client::Configuration, config + end +end diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/snapshots_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/snapshots_rest_test.rb index 2fbc326e0604..c58a8bc11fb9 100644 --- a/google-cloud-compute-v1/test/google/cloud/compute/v1/snapshots_rest_test.rb +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/snapshots_rest_test.rb @@ -528,6 +528,63 @@ def test_test_iam_permissions end end + def test_update_kms_key + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + request_id = "hello world" + snapshot = "hello world" + snapshot_update_kms_key_request_resource = {} + + update_kms_key_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::Snapshots::Rest::ServiceStub.stub :transcode_update_kms_key_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, update_kms_key_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::Snapshots::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.update_kms_key({ project: project, request_id: request_id, snapshot: snapshot, snapshot_update_kms_key_request_resource: snapshot_update_kms_key_request_resource }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.update_kms_key project: project, request_id: request_id, snapshot: snapshot, snapshot_update_kms_key_request_resource: snapshot_update_kms_key_request_resource do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.update_kms_key ::Google::Cloud::Compute::V1::UpdateKmsKeySnapshotRequest.new(project: project, request_id: request_id, snapshot: snapshot, snapshot_update_kms_key_request_resource: snapshot_update_kms_key_request_resource) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.update_kms_key({ project: project, request_id: request_id, snapshot: snapshot, snapshot_update_kms_key_request_resource: snapshot_update_kms_key_request_resource }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.update_kms_key(::Google::Cloud::Compute::V1::UpdateKmsKeySnapshotRequest.new(project: project, request_id: request_id, snapshot: snapshot, snapshot_update_kms_key_request_resource: snapshot_update_kms_key_request_resource), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, update_kms_key_client_stub.call_count + end + end + end + def test_configure credentials_token = :dummy_value diff --git a/google-cloud-compute-v1/test/google/cloud/compute/v1/zone_vm_extension_policies_rest_test.rb b/google-cloud-compute-v1/test/google/cloud/compute/v1/zone_vm_extension_policies_rest_test.rb new file mode 100644 index 000000000000..ebc3e48a237f --- /dev/null +++ b/google-cloud-compute-v1/test/google/cloud/compute/v1/zone_vm_extension_policies_rest_test.rb @@ -0,0 +1,387 @@ +# frozen_string_literal: true + +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# 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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +require "helper" +require "gapic/rest" +require "google/cloud/compute/v1/compute_pb" +require "google/cloud/compute/v1/zone_vm_extension_policies/rest" + + +class ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::ClientTest < Minitest::Test + class ClientStub + attr_accessor :call_count, :requests + + def initialize response, &block + @response = response + @block = block + @call_count = 0 + @requests = [] + end + + def make_get_request uri:, params: {}, options: {}, method_name: nil + make_http_request :get, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_delete_request uri:, params: {}, options: {}, method_name: nil + make_http_request :delete, uri: uri, body: nil, params: params, options: options, method_name: method_name + end + + def make_post_request uri:, body: nil, params: {}, options: {}, method_name: nil + make_http_request :post, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_patch_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :patch, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_put_request uri:, body:, params: {}, options: {}, method_name: nil + make_http_request :put, uri: uri, body: body, params: params, options: options, method_name: method_name + end + + def make_http_request *args, **kwargs + @call_count += 1 + + @requests << @block&.call(*args, **kwargs) + + @response + end + + def endpoint + "endpoint.example.com" + end + + def universe_domain + "example.com" + end + + def stub_logger + nil + end + + def logger + nil + end + end + + def test_delete + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + request_id = "hello world" + vm_extension_policy = "hello world" + zone = "hello world" + + delete_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::ServiceStub.stub :transcode_delete_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, delete_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.delete({ project: project, request_id: request_id, vm_extension_policy: vm_extension_policy, zone: zone }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.delete project: project, request_id: request_id, vm_extension_policy: vm_extension_policy, zone: zone do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.delete ::Google::Cloud::Compute::V1::DeleteZoneVmExtensionPolicyRequest.new(project: project, request_id: request_id, vm_extension_policy: vm_extension_policy, zone: zone) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.delete({ project: project, request_id: request_id, vm_extension_policy: vm_extension_policy, zone: zone }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.delete(::Google::Cloud::Compute::V1::DeleteZoneVmExtensionPolicyRequest.new(project: project, request_id: request_id, vm_extension_policy: vm_extension_policy, zone: zone), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, delete_client_stub.call_count + end + end + end + + def test_get + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::VmExtensionPolicy.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + vm_extension_policy = "hello world" + zone = "hello world" + + get_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::ServiceStub.stub :transcode_get_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get({ project: project, vm_extension_policy: vm_extension_policy, zone: zone }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get project: project, vm_extension_policy: vm_extension_policy, zone: zone do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get ::Google::Cloud::Compute::V1::GetZoneVmExtensionPolicyRequest.new(project: project, vm_extension_policy: vm_extension_policy, zone: zone) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get({ project: project, vm_extension_policy: vm_extension_policy, zone: zone }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get(::Google::Cloud::Compute::V1::GetZoneVmExtensionPolicyRequest.new(project: project, vm_extension_policy: vm_extension_policy, zone: zone), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_client_stub.call_count + end + end + end + + def test_insert + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + request_id = "hello world" + vm_extension_policy_resource = {} + zone = "hello world" + + insert_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::ServiceStub.stub :transcode_insert_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, insert_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.insert({ project: project, request_id: request_id, vm_extension_policy_resource: vm_extension_policy_resource, zone: zone }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.insert project: project, request_id: request_id, vm_extension_policy_resource: vm_extension_policy_resource, zone: zone do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.insert ::Google::Cloud::Compute::V1::InsertZoneVmExtensionPolicyRequest.new(project: project, request_id: request_id, vm_extension_policy_resource: vm_extension_policy_resource, zone: zone) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.insert({ project: project, request_id: request_id, vm_extension_policy_resource: vm_extension_policy_resource, zone: zone }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.insert(::Google::Cloud::Compute::V1::InsertZoneVmExtensionPolicyRequest.new(project: project, request_id: request_id, vm_extension_policy_resource: vm_extension_policy_resource, zone: zone), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, insert_client_stub.call_count + end + end + end + + def test_list + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::VmExtensionPolicyList.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + filter = "hello world" + max_results = 42 + order_by = "hello world" + page_token = "hello world" + project = "hello world" + return_partial_success = true + zone = "hello world" + + list_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::ServiceStub.stub :transcode_list_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, list_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.list({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, zone: zone }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.list filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, zone: zone do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.list ::Google::Cloud::Compute::V1::ListZoneVmExtensionPoliciesRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, zone: zone) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.list({ filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, zone: zone }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.list(::Google::Cloud::Compute::V1::ListZoneVmExtensionPoliciesRequest.new(filter: filter, max_results: max_results, order_by: order_by, page_token: page_token, project: project, return_partial_success: return_partial_success, zone: zone), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, list_client_stub.call_count + end + end + end + + def test_update + # Create test objects. + client_result = ::Google::Cloud::Compute::V1::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + project = "hello world" + request_id = "hello world" + vm_extension_policy = "hello world" + vm_extension_policy_resource = {} + zone = "hello world" + + update_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::ServiceStub.stub :transcode_update_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, update_client_stub do + # Create client + client = ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.update({ project: project, request_id: request_id, vm_extension_policy: vm_extension_policy, vm_extension_policy_resource: vm_extension_policy_resource, zone: zone }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.update project: project, request_id: request_id, vm_extension_policy: vm_extension_policy, vm_extension_policy_resource: vm_extension_policy_resource, zone: zone do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.update ::Google::Cloud::Compute::V1::UpdateZoneVmExtensionPolicyRequest.new(project: project, request_id: request_id, vm_extension_policy: vm_extension_policy, vm_extension_policy_resource: vm_extension_policy_resource, zone: zone) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.update({ project: project, request_id: request_id, vm_extension_policy: vm_extension_policy, vm_extension_policy_resource: vm_extension_policy_resource, zone: zone }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.update(::Google::Cloud::Compute::V1::UpdateZoneVmExtensionPolicyRequest.new(project: project, request_id: request_id, vm_extension_policy: vm_extension_policy, vm_extension_policy_resource: vm_extension_policy_resource, zone: zone), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, update_client_stub.call_count + end + end + end + + def test_configure + credentials_token = :dummy_value + + client = block_config = config = nil + dummy_stub = ClientStub.new nil + Gapic::Rest::ClientStub.stub :new, dummy_stub do + client = ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client.new do |config| + config.credentials = credentials_token + end + end + + config = client.configure do |c| + block_config = c + end + + assert_same block_config, config + assert_kind_of ::Google::Cloud::Compute::V1::ZoneVmExtensionPolicies::Rest::Client::Configuration, config + end +end