1// Copyright 2021 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// Code generated by protoc-gen-go. DO NOT EDIT.
16// versions:
17// 	protoc-gen-go v1.26.0
18// 	protoc        v3.12.2
19// source: google/cloud/asset/v1p7beta1/assets.proto
20
21package asset
22
23import (
24	reflect "reflect"
25	sync "sync"
26
27	_ "google.golang.org/genproto/googleapis/api/annotations"
28	v11 "google.golang.org/genproto/googleapis/cloud/orgpolicy/v1"
29	_ "google.golang.org/genproto/googleapis/cloud/osconfig/v1"
30	v1 "google.golang.org/genproto/googleapis/iam/v1"
31	v12 "google.golang.org/genproto/googleapis/identity/accesscontextmanager/v1"
32	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
33	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
34	_ "google.golang.org/protobuf/types/known/anypb"
35	structpb "google.golang.org/protobuf/types/known/structpb"
36	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
37)
38
39const (
40	// Verify that this generated code is sufficiently up-to-date.
41	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
42	// Verify that runtime/protoimpl is sufficiently up-to-date.
43	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
44)
45
46// An asset in Google Cloud. An asset can be any resource in the Google Cloud
47// [resource
48// hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy),
49// a resource outside the Google Cloud resource hierarchy (such as Google
50// Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy).
51// See [Supported asset
52// types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
53// for more information.
54type Asset struct {
55	state         protoimpl.MessageState
56	sizeCache     protoimpl.SizeCache
57	unknownFields protoimpl.UnknownFields
58
59	// The last update timestamp of an asset. update_time is updated when
60	// create/update/delete operation is performed.
61	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
62	// The full name of the asset. Example:
63	// `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`
64	//
65	// See [Resource
66	// names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
67	// for more information.
68	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
69	// The type of the asset. Example: `compute.googleapis.com/Disk`
70	//
71	// See [Supported asset
72	// types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
73	// for more information.
74	AssetType string `protobuf:"bytes,2,opt,name=asset_type,json=assetType,proto3" json:"asset_type,omitempty"`
75	// A representation of the resource.
76	Resource *Resource `protobuf:"bytes,3,opt,name=resource,proto3" json:"resource,omitempty"`
77	// A representation of the Cloud IAM policy set on a Google Cloud resource.
78	// There can be a maximum of one Cloud IAM policy set on any given resource.
79	// In addition, Cloud IAM policies inherit their granted access scope from any
80	// policies set on parent resources in the resource hierarchy. Therefore, the
81	// effectively policy is the union of both the policy set on this resource
82	// and each policy set on all of the resource's ancestry resource levels in
83	// the hierarchy. See
84	// [this topic](https://cloud.google.com/iam/docs/policies#inheritance) for
85	// more information.
86	IamPolicy *v1.Policy `protobuf:"bytes,4,opt,name=iam_policy,json=iamPolicy,proto3" json:"iam_policy,omitempty"`
87	// A representation of an [organization
88	// policy](https://cloud.google.com/resource-manager/docs/organization-policy/overview#organization_policy).
89	// There can be more than one organization policy with different constraints
90	// set on a given resource.
91	OrgPolicy []*v11.Policy `protobuf:"bytes,6,rep,name=org_policy,json=orgPolicy,proto3" json:"org_policy,omitempty"`
92	// A representation of an [access
93	// policy](https://cloud.google.com/access-context-manager/docs/overview#access-policies).
94	//
95	// Types that are assignable to AccessContextPolicy:
96	//	*Asset_AccessPolicy
97	//	*Asset_AccessLevel
98	//	*Asset_ServicePerimeter
99	AccessContextPolicy isAsset_AccessContextPolicy `protobuf_oneof:"access_context_policy"`
100	// The related assets of the asset of one relationship type.
101	// One asset only represents one type of relationship.
102	RelatedAssets *RelatedAssets `protobuf:"bytes,13,opt,name=related_assets,json=relatedAssets,proto3" json:"related_assets,omitempty"`
103	// The ancestry path of an asset in Google Cloud [resource
104	// hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy),
105	// represented as a list of relative resource names. An ancestry path starts
106	// with the closest ancestor in the hierarchy and ends at root. If the asset
107	// is a project, folder, or organization, the ancestry path starts from the
108	// asset itself.
109	//
110	// Example: `["projects/123456789", "folders/5432", "organizations/1234"]`
111	Ancestors []string `protobuf:"bytes,10,rep,name=ancestors,proto3" json:"ancestors,omitempty"`
112}
113
114func (x *Asset) Reset() {
115	*x = Asset{}
116	if protoimpl.UnsafeEnabled {
117		mi := &file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[0]
118		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
119		ms.StoreMessageInfo(mi)
120	}
121}
122
123func (x *Asset) String() string {
124	return protoimpl.X.MessageStringOf(x)
125}
126
127func (*Asset) ProtoMessage() {}
128
129func (x *Asset) ProtoReflect() protoreflect.Message {
130	mi := &file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[0]
131	if protoimpl.UnsafeEnabled && x != nil {
132		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
133		if ms.LoadMessageInfo() == nil {
134			ms.StoreMessageInfo(mi)
135		}
136		return ms
137	}
138	return mi.MessageOf(x)
139}
140
141// Deprecated: Use Asset.ProtoReflect.Descriptor instead.
142func (*Asset) Descriptor() ([]byte, []int) {
143	return file_google_cloud_asset_v1p7beta1_assets_proto_rawDescGZIP(), []int{0}
144}
145
146func (x *Asset) GetUpdateTime() *timestamppb.Timestamp {
147	if x != nil {
148		return x.UpdateTime
149	}
150	return nil
151}
152
153func (x *Asset) GetName() string {
154	if x != nil {
155		return x.Name
156	}
157	return ""
158}
159
160func (x *Asset) GetAssetType() string {
161	if x != nil {
162		return x.AssetType
163	}
164	return ""
165}
166
167func (x *Asset) GetResource() *Resource {
168	if x != nil {
169		return x.Resource
170	}
171	return nil
172}
173
174func (x *Asset) GetIamPolicy() *v1.Policy {
175	if x != nil {
176		return x.IamPolicy
177	}
178	return nil
179}
180
181func (x *Asset) GetOrgPolicy() []*v11.Policy {
182	if x != nil {
183		return x.OrgPolicy
184	}
185	return nil
186}
187
188func (m *Asset) GetAccessContextPolicy() isAsset_AccessContextPolicy {
189	if m != nil {
190		return m.AccessContextPolicy
191	}
192	return nil
193}
194
195func (x *Asset) GetAccessPolicy() *v12.AccessPolicy {
196	if x, ok := x.GetAccessContextPolicy().(*Asset_AccessPolicy); ok {
197		return x.AccessPolicy
198	}
199	return nil
200}
201
202func (x *Asset) GetAccessLevel() *v12.AccessLevel {
203	if x, ok := x.GetAccessContextPolicy().(*Asset_AccessLevel); ok {
204		return x.AccessLevel
205	}
206	return nil
207}
208
209func (x *Asset) GetServicePerimeter() *v12.ServicePerimeter {
210	if x, ok := x.GetAccessContextPolicy().(*Asset_ServicePerimeter); ok {
211		return x.ServicePerimeter
212	}
213	return nil
214}
215
216func (x *Asset) GetRelatedAssets() *RelatedAssets {
217	if x != nil {
218		return x.RelatedAssets
219	}
220	return nil
221}
222
223func (x *Asset) GetAncestors() []string {
224	if x != nil {
225		return x.Ancestors
226	}
227	return nil
228}
229
230type isAsset_AccessContextPolicy interface {
231	isAsset_AccessContextPolicy()
232}
233
234type Asset_AccessPolicy struct {
235	// Please also refer to the [access policy user
236	// guide](https://cloud.google.com/access-context-manager/docs/overview#access-policies).
237	AccessPolicy *v12.AccessPolicy `protobuf:"bytes,7,opt,name=access_policy,json=accessPolicy,proto3,oneof"`
238}
239
240type Asset_AccessLevel struct {
241	// Please also refer to the [access level user
242	// guide](https://cloud.google.com/access-context-manager/docs/overview#access-levels).
243	AccessLevel *v12.AccessLevel `protobuf:"bytes,8,opt,name=access_level,json=accessLevel,proto3,oneof"`
244}
245
246type Asset_ServicePerimeter struct {
247	// Please also refer to the [service perimeter user
248	// guide](https://cloud.google.com/vpc-service-controls/docs/overview).
249	ServicePerimeter *v12.ServicePerimeter `protobuf:"bytes,9,opt,name=service_perimeter,json=servicePerimeter,proto3,oneof"`
250}
251
252func (*Asset_AccessPolicy) isAsset_AccessContextPolicy() {}
253
254func (*Asset_AccessLevel) isAsset_AccessContextPolicy() {}
255
256func (*Asset_ServicePerimeter) isAsset_AccessContextPolicy() {}
257
258// A representation of a Google Cloud resource.
259type Resource struct {
260	state         protoimpl.MessageState
261	sizeCache     protoimpl.SizeCache
262	unknownFields protoimpl.UnknownFields
263
264	// The API version. Example: `v1`
265	Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
266	// The URL of the discovery document containing the resource's JSON schema.
267	// Example:
268	// `https://www.googleapis.com/discovery/v1/apis/compute/v1/rest`
269	//
270	// This value is unspecified for resources that do not have an API based on a
271	// discovery document, such as Cloud Bigtable.
272	DiscoveryDocumentUri string `protobuf:"bytes,2,opt,name=discovery_document_uri,json=discoveryDocumentUri,proto3" json:"discovery_document_uri,omitempty"`
273	// The JSON schema name listed in the discovery document. Example:
274	// `Project`
275	//
276	// This value is unspecified for resources that do not have an API based on a
277	// discovery document, such as Cloud Bigtable.
278	DiscoveryName string `protobuf:"bytes,3,opt,name=discovery_name,json=discoveryName,proto3" json:"discovery_name,omitempty"`
279	// The REST URL for accessing the resource. An HTTP `GET` request using this
280	// URL returns the resource itself. Example:
281	// `https://cloudresourcemanager.googleapis.com/v1/projects/my-project-123`
282	//
283	// This value is unspecified for resources without a REST API.
284	ResourceUrl string `protobuf:"bytes,4,opt,name=resource_url,json=resourceUrl,proto3" json:"resource_url,omitempty"`
285	// The full name of the immediate parent of this resource. See
286	// [Resource
287	// Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
288	// for more information.
289	//
290	// For Google Cloud assets, this value is the parent resource defined in the
291	// [Cloud IAM policy
292	// hierarchy](https://cloud.google.com/iam/docs/overview#policy_hierarchy).
293	// Example:
294	// `//cloudresourcemanager.googleapis.com/projects/my_project_123`
295	//
296	// For third-party assets, this field may be set differently.
297	Parent string `protobuf:"bytes,5,opt,name=parent,proto3" json:"parent,omitempty"`
298	// The content of the resource, in which some sensitive fields are removed
299	// and may not be present.
300	Data *structpb.Struct `protobuf:"bytes,6,opt,name=data,proto3" json:"data,omitempty"`
301	// The location of the resource in Google Cloud, such as its zone and region.
302	// For more information, see https://cloud.google.com/about/locations/.
303	Location string `protobuf:"bytes,8,opt,name=location,proto3" json:"location,omitempty"`
304}
305
306func (x *Resource) Reset() {
307	*x = Resource{}
308	if protoimpl.UnsafeEnabled {
309		mi := &file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[1]
310		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
311		ms.StoreMessageInfo(mi)
312	}
313}
314
315func (x *Resource) String() string {
316	return protoimpl.X.MessageStringOf(x)
317}
318
319func (*Resource) ProtoMessage() {}
320
321func (x *Resource) ProtoReflect() protoreflect.Message {
322	mi := &file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[1]
323	if protoimpl.UnsafeEnabled && x != nil {
324		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
325		if ms.LoadMessageInfo() == nil {
326			ms.StoreMessageInfo(mi)
327		}
328		return ms
329	}
330	return mi.MessageOf(x)
331}
332
333// Deprecated: Use Resource.ProtoReflect.Descriptor instead.
334func (*Resource) Descriptor() ([]byte, []int) {
335	return file_google_cloud_asset_v1p7beta1_assets_proto_rawDescGZIP(), []int{1}
336}
337
338func (x *Resource) GetVersion() string {
339	if x != nil {
340		return x.Version
341	}
342	return ""
343}
344
345func (x *Resource) GetDiscoveryDocumentUri() string {
346	if x != nil {
347		return x.DiscoveryDocumentUri
348	}
349	return ""
350}
351
352func (x *Resource) GetDiscoveryName() string {
353	if x != nil {
354		return x.DiscoveryName
355	}
356	return ""
357}
358
359func (x *Resource) GetResourceUrl() string {
360	if x != nil {
361		return x.ResourceUrl
362	}
363	return ""
364}
365
366func (x *Resource) GetParent() string {
367	if x != nil {
368		return x.Parent
369	}
370	return ""
371}
372
373func (x *Resource) GetData() *structpb.Struct {
374	if x != nil {
375		return x.Data
376	}
377	return nil
378}
379
380func (x *Resource) GetLocation() string {
381	if x != nil {
382		return x.Location
383	}
384	return ""
385}
386
387// The detailed related assets with the `relationship_type`.
388type RelatedAssets struct {
389	state         protoimpl.MessageState
390	sizeCache     protoimpl.SizeCache
391	unknownFields protoimpl.UnknownFields
392
393	// The detailed relation attributes.
394	RelationshipAttributes *RelationshipAttributes `protobuf:"bytes,1,opt,name=relationship_attributes,json=relationshipAttributes,proto3" json:"relationship_attributes,omitempty"`
395	// The peer resources of the relationship.
396	Assets []*RelatedAsset `protobuf:"bytes,2,rep,name=assets,proto3" json:"assets,omitempty"`
397}
398
399func (x *RelatedAssets) Reset() {
400	*x = RelatedAssets{}
401	if protoimpl.UnsafeEnabled {
402		mi := &file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[2]
403		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
404		ms.StoreMessageInfo(mi)
405	}
406}
407
408func (x *RelatedAssets) String() string {
409	return protoimpl.X.MessageStringOf(x)
410}
411
412func (*RelatedAssets) ProtoMessage() {}
413
414func (x *RelatedAssets) ProtoReflect() protoreflect.Message {
415	mi := &file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[2]
416	if protoimpl.UnsafeEnabled && x != nil {
417		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
418		if ms.LoadMessageInfo() == nil {
419			ms.StoreMessageInfo(mi)
420		}
421		return ms
422	}
423	return mi.MessageOf(x)
424}
425
426// Deprecated: Use RelatedAssets.ProtoReflect.Descriptor instead.
427func (*RelatedAssets) Descriptor() ([]byte, []int) {
428	return file_google_cloud_asset_v1p7beta1_assets_proto_rawDescGZIP(), []int{2}
429}
430
431func (x *RelatedAssets) GetRelationshipAttributes() *RelationshipAttributes {
432	if x != nil {
433		return x.RelationshipAttributes
434	}
435	return nil
436}
437
438func (x *RelatedAssets) GetAssets() []*RelatedAsset {
439	if x != nil {
440		return x.Assets
441	}
442	return nil
443}
444
445// The relationship attributes which include  `type`, `source_resource_type`,
446// `target_resource_type` and `action`.
447type RelationshipAttributes struct {
448	state         protoimpl.MessageState
449	sizeCache     protoimpl.SizeCache
450	unknownFields protoimpl.UnknownFields
451
452	// The unique identifier of the relationship type. Example:
453	// `INSTANCE_TO_INSTANCEGROUP`
454	Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"`
455	// The source asset type. Example: `compute.googleapis.com/Instance`
456	SourceResourceType string `protobuf:"bytes,1,opt,name=source_resource_type,json=sourceResourceType,proto3" json:"source_resource_type,omitempty"`
457	// The target asset type. Example: `compute.googleapis.com/Disk`
458	TargetResourceType string `protobuf:"bytes,2,opt,name=target_resource_type,json=targetResourceType,proto3" json:"target_resource_type,omitempty"`
459	// The detail of the relationship, e.g. `contains`, `attaches`
460	Action string `protobuf:"bytes,3,opt,name=action,proto3" json:"action,omitempty"`
461}
462
463func (x *RelationshipAttributes) Reset() {
464	*x = RelationshipAttributes{}
465	if protoimpl.UnsafeEnabled {
466		mi := &file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[3]
467		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
468		ms.StoreMessageInfo(mi)
469	}
470}
471
472func (x *RelationshipAttributes) String() string {
473	return protoimpl.X.MessageStringOf(x)
474}
475
476func (*RelationshipAttributes) ProtoMessage() {}
477
478func (x *RelationshipAttributes) ProtoReflect() protoreflect.Message {
479	mi := &file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[3]
480	if protoimpl.UnsafeEnabled && x != nil {
481		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
482		if ms.LoadMessageInfo() == nil {
483			ms.StoreMessageInfo(mi)
484		}
485		return ms
486	}
487	return mi.MessageOf(x)
488}
489
490// Deprecated: Use RelationshipAttributes.ProtoReflect.Descriptor instead.
491func (*RelationshipAttributes) Descriptor() ([]byte, []int) {
492	return file_google_cloud_asset_v1p7beta1_assets_proto_rawDescGZIP(), []int{3}
493}
494
495func (x *RelationshipAttributes) GetType() string {
496	if x != nil {
497		return x.Type
498	}
499	return ""
500}
501
502func (x *RelationshipAttributes) GetSourceResourceType() string {
503	if x != nil {
504		return x.SourceResourceType
505	}
506	return ""
507}
508
509func (x *RelationshipAttributes) GetTargetResourceType() string {
510	if x != nil {
511		return x.TargetResourceType
512	}
513	return ""
514}
515
516func (x *RelationshipAttributes) GetAction() string {
517	if x != nil {
518		return x.Action
519	}
520	return ""
521}
522
523// An asset identify in Google Cloud which contains its name, type and
524// ancestors. An asset can be any resource in the Google Cloud [resource
525// hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy),
526// a resource outside the Google Cloud resource hierarchy (such as Google
527// Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy).
528// See [Supported asset
529// types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
530// for more information.
531type RelatedAsset struct {
532	state         protoimpl.MessageState
533	sizeCache     protoimpl.SizeCache
534	unknownFields protoimpl.UnknownFields
535
536	// The full name of the asset. Example:
537	// `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`
538	//
539	// See [Resource
540	// names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
541	// for more information.
542	Asset string `protobuf:"bytes,1,opt,name=asset,proto3" json:"asset,omitempty"`
543	// The type of the asset. Example: `compute.googleapis.com/Disk`
544	//
545	// See [Supported asset
546	// types](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
547	// for more information.
548	AssetType string `protobuf:"bytes,2,opt,name=asset_type,json=assetType,proto3" json:"asset_type,omitempty"`
549	// The ancestors of an asset in Google Cloud [resource
550	// hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy),
551	// represented as a list of relative resource names. An ancestry path starts
552	// with the closest ancestor in the hierarchy and ends at root.
553	//
554	// Example: `["projects/123456789", "folders/5432", "organizations/1234"]`
555	Ancestors []string `protobuf:"bytes,3,rep,name=ancestors,proto3" json:"ancestors,omitempty"`
556}
557
558func (x *RelatedAsset) Reset() {
559	*x = RelatedAsset{}
560	if protoimpl.UnsafeEnabled {
561		mi := &file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[4]
562		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
563		ms.StoreMessageInfo(mi)
564	}
565}
566
567func (x *RelatedAsset) String() string {
568	return protoimpl.X.MessageStringOf(x)
569}
570
571func (*RelatedAsset) ProtoMessage() {}
572
573func (x *RelatedAsset) ProtoReflect() protoreflect.Message {
574	mi := &file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[4]
575	if protoimpl.UnsafeEnabled && x != nil {
576		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
577		if ms.LoadMessageInfo() == nil {
578			ms.StoreMessageInfo(mi)
579		}
580		return ms
581	}
582	return mi.MessageOf(x)
583}
584
585// Deprecated: Use RelatedAsset.ProtoReflect.Descriptor instead.
586func (*RelatedAsset) Descriptor() ([]byte, []int) {
587	return file_google_cloud_asset_v1p7beta1_assets_proto_rawDescGZIP(), []int{4}
588}
589
590func (x *RelatedAsset) GetAsset() string {
591	if x != nil {
592		return x.Asset
593	}
594	return ""
595}
596
597func (x *RelatedAsset) GetAssetType() string {
598	if x != nil {
599		return x.AssetType
600	}
601	return ""
602}
603
604func (x *RelatedAsset) GetAncestors() []string {
605	if x != nil {
606		return x.Ancestors
607	}
608	return nil
609}
610
611var File_google_cloud_asset_v1p7beta1_assets_proto protoreflect.FileDescriptor
612
613var file_google_cloud_asset_v1p7beta1_assets_proto_rawDesc = []byte{
614	0x0a, 0x29, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
615	0x73, 0x73, 0x65, 0x74, 0x2f, 0x76, 0x31, 0x70, 0x37, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61,
616	0x73, 0x73, 0x65, 0x74, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1c, 0x67, 0x6f, 0x6f,
617	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x73, 0x73, 0x65, 0x74, 0x2e,
618	0x76, 0x31, 0x70, 0x37, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
619	0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
620	0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
621	0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f,
622	0x74, 0x6f, 0x1a, 0x29, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
623	0x2f, 0x6f, 0x72, 0x67, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x72,
624	0x67, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x67,
625	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x6f, 0x73, 0x63, 0x6f,
626	0x6e, 0x66, 0x69, 0x67, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72,
627	0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
628	0x69, 0x61, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x70, 0x72,
629	0x6f, 0x74, 0x6f, 0x1a, 0x3a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x69, 0x64, 0x65, 0x6e,
630	0x74, 0x69, 0x74, 0x79, 0x2f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x65,
631	0x78, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x63, 0x63,
632	0x65, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
633	0x3b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
634	0x2f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x6d, 0x61,
635	0x6e, 0x61, 0x67, 0x65, 0x72, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f,
636	0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x3f, 0x67, 0x6f,
637	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2f, 0x61, 0x63,
638	0x63, 0x65, 0x73, 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67,
639	0x65, 0x72, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x65,
640	0x72, 0x69, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67,
641	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61,
642	0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
643	0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
644	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70,
645	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
646	0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x8a, 0x06, 0x0a, 0x05, 0x41, 0x73, 0x73, 0x65,
647	0x74, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65,
648	0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
649	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
650	0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x12,
651	0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
652	0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x73, 0x73, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65,
653	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70,
654	0x65, 0x12, 0x42, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20,
655	0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
656	0x75, 0x64, 0x2e, 0x61, 0x73, 0x73, 0x65, 0x74, 0x2e, 0x76, 0x31, 0x70, 0x37, 0x62, 0x65, 0x74,
657	0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x08, 0x72, 0x65, 0x73,
658	0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x69, 0x61, 0x6d, 0x5f, 0x70, 0x6f, 0x6c,
659	0x69, 0x63, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
660	0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
661	0x52, 0x09, 0x69, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x40, 0x0a, 0x0a, 0x6f,
662	0x72, 0x67, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32,
663	0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6f,
664	0x72, 0x67, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69,
665	0x63, 0x79, 0x52, 0x09, 0x6f, 0x72, 0x67, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x5c, 0x0a,
666	0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x07,
667	0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x64,
668	0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x63, 0x6f, 0x6e,
669	0x74, 0x65, 0x78, 0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x41,
670	0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x48, 0x00, 0x52, 0x0c, 0x61,
671	0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x59, 0x0a, 0x0c, 0x61,
672	0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28,
673	0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74,
674	0x69, 0x74, 0x79, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78,
675	0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x63, 0x63, 0x65,
676	0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x48, 0x00, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73,
677	0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x68, 0x0a, 0x11, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
678	0x65, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28,
679	0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x64, 0x65, 0x6e, 0x74,
680	0x69, 0x74, 0x79, 0x2e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78,
681	0x74, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76,
682	0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x10,
683	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x74, 0x65, 0x72,
684	0x12, 0x52, 0x0a, 0x0e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x73, 0x73, 0x65,
685	0x74, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
686	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x73, 0x73, 0x65, 0x74, 0x2e, 0x76, 0x31,
687	0x70, 0x37, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x41,
688	0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x0d, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x41, 0x73,
689	0x73, 0x65, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x74, 0x6f, 0x72,
690	0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x74, 0x6f,
691	0x72, 0x73, 0x3a, 0x27, 0xea, 0x41, 0x24, 0x0a, 0x1f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x61, 0x73,
692	0x73, 0x65, 0x74, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
693	0x6f, 0x6d, 0x2f, 0x41, 0x73, 0x73, 0x65, 0x74, 0x12, 0x01, 0x2a, 0x42, 0x17, 0x0a, 0x15, 0x61,
694	0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x6f,
695	0x6c, 0x69, 0x63, 0x79, 0x22, 0x85, 0x02, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
696	0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01,
697	0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x16, 0x64,
698	0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
699	0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x64, 0x69, 0x73,
700	0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72,
701	0x69, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6e,
702	0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x63, 0x6f,
703	0x76, 0x65, 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x6f,
704	0x75, 0x72, 0x63, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
705	0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x70,
706	0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72,
707	0x65, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28,
708	0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
709	0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61,
710	0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01,
711	0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc2, 0x01, 0x0a,
712	0x0d, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x12, 0x6d,
713	0x0a, 0x17, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x5f, 0x61,
714	0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
715	0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
716	0x73, 0x73, 0x65, 0x74, 0x2e, 0x76, 0x31, 0x70, 0x37, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52,
717	0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x41, 0x74, 0x74, 0x72, 0x69,
718	0x62, 0x75, 0x74, 0x65, 0x73, 0x52, 0x16, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
719	0x68, 0x69, 0x70, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x42, 0x0a,
720	0x06, 0x61, 0x73, 0x73, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e,
721	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x73, 0x73,
722	0x65, 0x74, 0x2e, 0x76, 0x31, 0x70, 0x37, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x6c,
723	0x61, 0x74, 0x65, 0x64, 0x41, 0x73, 0x73, 0x65, 0x74, 0x52, 0x06, 0x61, 0x73, 0x73, 0x65, 0x74,
724	0x73, 0x22, 0xa8, 0x01, 0x0a, 0x16, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68,
725	0x69, 0x70, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04,
726	0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65,
727	0x12, 0x30, 0x0a, 0x14, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75,
728	0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12,
729	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79,
730	0x70, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x73,
731	0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
732	0x52, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
733	0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03,
734	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x87, 0x01, 0x0a,
735	0x0c, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x41, 0x73, 0x73, 0x65, 0x74, 0x12, 0x3a, 0x0a,
736	0x05, 0x61, 0x73, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x41,
737	0x21, 0x0a, 0x1f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x61, 0x73, 0x73, 0x65, 0x74, 0x2e, 0x67, 0x6f,
738	0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x73, 0x73,
739	0x65, 0x74, 0x52, 0x05, 0x61, 0x73, 0x73, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x73, 0x73,
740	0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61,
741	0x73, 0x73, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x6e, 0x63, 0x65,
742	0x73, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x6e, 0x63,
743	0x65, 0x73, 0x74, 0x6f, 0x72, 0x73, 0x42, 0xb4, 0x01, 0x0a, 0x20, 0x63, 0x6f, 0x6d, 0x2e, 0x67,
744	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x73, 0x73, 0x65,
745	0x74, 0x2e, 0x76, 0x31, 0x70, 0x37, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x0a, 0x41, 0x73, 0x73,
746	0x65, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x41, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
747	0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e,
748	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
749	0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x73, 0x73, 0x65, 0x74, 0x2f, 0x76, 0x31, 0x70,
750	0x37, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x61, 0x73, 0x73, 0x65, 0x74, 0xf8, 0x01, 0x01, 0xaa,
751	0x02, 0x1c, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x41,
752	0x73, 0x73, 0x65, 0x74, 0x2e, 0x56, 0x31, 0x50, 0x37, 0x42, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02,
753	0x1c, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x41, 0x73,
754	0x73, 0x65, 0x74, 0x5c, 0x56, 0x31, 0x70, 0x37, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70,
755	0x72, 0x6f, 0x74, 0x6f, 0x33,
756}
757
758var (
759	file_google_cloud_asset_v1p7beta1_assets_proto_rawDescOnce sync.Once
760	file_google_cloud_asset_v1p7beta1_assets_proto_rawDescData = file_google_cloud_asset_v1p7beta1_assets_proto_rawDesc
761)
762
763func file_google_cloud_asset_v1p7beta1_assets_proto_rawDescGZIP() []byte {
764	file_google_cloud_asset_v1p7beta1_assets_proto_rawDescOnce.Do(func() {
765		file_google_cloud_asset_v1p7beta1_assets_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_asset_v1p7beta1_assets_proto_rawDescData)
766	})
767	return file_google_cloud_asset_v1p7beta1_assets_proto_rawDescData
768}
769
770var file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
771var file_google_cloud_asset_v1p7beta1_assets_proto_goTypes = []interface{}{
772	(*Asset)(nil),                  // 0: google.cloud.asset.v1p7beta1.Asset
773	(*Resource)(nil),               // 1: google.cloud.asset.v1p7beta1.Resource
774	(*RelatedAssets)(nil),          // 2: google.cloud.asset.v1p7beta1.RelatedAssets
775	(*RelationshipAttributes)(nil), // 3: google.cloud.asset.v1p7beta1.RelationshipAttributes
776	(*RelatedAsset)(nil),           // 4: google.cloud.asset.v1p7beta1.RelatedAsset
777	(*timestamppb.Timestamp)(nil),  // 5: google.protobuf.Timestamp
778	(*v1.Policy)(nil),              // 6: google.iam.v1.Policy
779	(*v11.Policy)(nil),             // 7: google.cloud.orgpolicy.v1.Policy
780	(*v12.AccessPolicy)(nil),       // 8: google.identity.accesscontextmanager.v1.AccessPolicy
781	(*v12.AccessLevel)(nil),        // 9: google.identity.accesscontextmanager.v1.AccessLevel
782	(*v12.ServicePerimeter)(nil),   // 10: google.identity.accesscontextmanager.v1.ServicePerimeter
783	(*structpb.Struct)(nil),        // 11: google.protobuf.Struct
784}
785var file_google_cloud_asset_v1p7beta1_assets_proto_depIdxs = []int32{
786	5,  // 0: google.cloud.asset.v1p7beta1.Asset.update_time:type_name -> google.protobuf.Timestamp
787	1,  // 1: google.cloud.asset.v1p7beta1.Asset.resource:type_name -> google.cloud.asset.v1p7beta1.Resource
788	6,  // 2: google.cloud.asset.v1p7beta1.Asset.iam_policy:type_name -> google.iam.v1.Policy
789	7,  // 3: google.cloud.asset.v1p7beta1.Asset.org_policy:type_name -> google.cloud.orgpolicy.v1.Policy
790	8,  // 4: google.cloud.asset.v1p7beta1.Asset.access_policy:type_name -> google.identity.accesscontextmanager.v1.AccessPolicy
791	9,  // 5: google.cloud.asset.v1p7beta1.Asset.access_level:type_name -> google.identity.accesscontextmanager.v1.AccessLevel
792	10, // 6: google.cloud.asset.v1p7beta1.Asset.service_perimeter:type_name -> google.identity.accesscontextmanager.v1.ServicePerimeter
793	2,  // 7: google.cloud.asset.v1p7beta1.Asset.related_assets:type_name -> google.cloud.asset.v1p7beta1.RelatedAssets
794	11, // 8: google.cloud.asset.v1p7beta1.Resource.data:type_name -> google.protobuf.Struct
795	3,  // 9: google.cloud.asset.v1p7beta1.RelatedAssets.relationship_attributes:type_name -> google.cloud.asset.v1p7beta1.RelationshipAttributes
796	4,  // 10: google.cloud.asset.v1p7beta1.RelatedAssets.assets:type_name -> google.cloud.asset.v1p7beta1.RelatedAsset
797	11, // [11:11] is the sub-list for method output_type
798	11, // [11:11] is the sub-list for method input_type
799	11, // [11:11] is the sub-list for extension type_name
800	11, // [11:11] is the sub-list for extension extendee
801	0,  // [0:11] is the sub-list for field type_name
802}
803
804func init() { file_google_cloud_asset_v1p7beta1_assets_proto_init() }
805func file_google_cloud_asset_v1p7beta1_assets_proto_init() {
806	if File_google_cloud_asset_v1p7beta1_assets_proto != nil {
807		return
808	}
809	if !protoimpl.UnsafeEnabled {
810		file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
811			switch v := v.(*Asset); i {
812			case 0:
813				return &v.state
814			case 1:
815				return &v.sizeCache
816			case 2:
817				return &v.unknownFields
818			default:
819				return nil
820			}
821		}
822		file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
823			switch v := v.(*Resource); i {
824			case 0:
825				return &v.state
826			case 1:
827				return &v.sizeCache
828			case 2:
829				return &v.unknownFields
830			default:
831				return nil
832			}
833		}
834		file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
835			switch v := v.(*RelatedAssets); i {
836			case 0:
837				return &v.state
838			case 1:
839				return &v.sizeCache
840			case 2:
841				return &v.unknownFields
842			default:
843				return nil
844			}
845		}
846		file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
847			switch v := v.(*RelationshipAttributes); i {
848			case 0:
849				return &v.state
850			case 1:
851				return &v.sizeCache
852			case 2:
853				return &v.unknownFields
854			default:
855				return nil
856			}
857		}
858		file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
859			switch v := v.(*RelatedAsset); i {
860			case 0:
861				return &v.state
862			case 1:
863				return &v.sizeCache
864			case 2:
865				return &v.unknownFields
866			default:
867				return nil
868			}
869		}
870	}
871	file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes[0].OneofWrappers = []interface{}{
872		(*Asset_AccessPolicy)(nil),
873		(*Asset_AccessLevel)(nil),
874		(*Asset_ServicePerimeter)(nil),
875	}
876	type x struct{}
877	out := protoimpl.TypeBuilder{
878		File: protoimpl.DescBuilder{
879			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
880			RawDescriptor: file_google_cloud_asset_v1p7beta1_assets_proto_rawDesc,
881			NumEnums:      0,
882			NumMessages:   5,
883			NumExtensions: 0,
884			NumServices:   0,
885		},
886		GoTypes:           file_google_cloud_asset_v1p7beta1_assets_proto_goTypes,
887		DependencyIndexes: file_google_cloud_asset_v1p7beta1_assets_proto_depIdxs,
888		MessageInfos:      file_google_cloud_asset_v1p7beta1_assets_proto_msgTypes,
889	}.Build()
890	File_google_cloud_asset_v1p7beta1_assets_proto = out.File
891	file_google_cloud_asset_v1p7beta1_assets_proto_rawDesc = nil
892	file_google_cloud_asset_v1p7beta1_assets_proto_goTypes = nil
893	file_google_cloud_asset_v1p7beta1_assets_proto_depIdxs = nil
894}
895