1// Copyright 2020 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.25.0
18// 	protoc        v3.13.0
19// source: google/cloud/security/privateca/v1beta1/resources.proto
20
21package privateca
22
23import (
24	reflect "reflect"
25	sync "sync"
26
27	proto "github.com/golang/protobuf/proto"
28	_ "google.golang.org/genproto/googleapis/api/annotations"
29	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
30	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
31	durationpb "google.golang.org/protobuf/types/known/durationpb"
32	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
33	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
34)
35
36const (
37	// Verify that this generated code is sufficiently up-to-date.
38	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
39	// Verify that runtime/protoimpl is sufficiently up-to-date.
40	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
41)
42
43// This is a compile-time assertion that a sufficiently up-to-date version
44// of the legacy proto package is being used.
45const _ = proto.ProtoPackageIsVersion4
46
47// A [RevocationReason][google.cloud.security.privateca.v1beta1.RevocationReason] indicates whether a [Certificate][google.cloud.security.privateca.v1beta1.Certificate] has been revoked,
48// and the reason for revocation. These correspond to standard revocation
49// reasons from RFC 5280. Note that the enum labels and values in this
50// definition are not the same ASN.1 values defined in RFC 5280. These values
51// will be translated to the correct ASN.1 values when a CRL is created.
52type RevocationReason int32
53
54const (
55	// Default unspecified value. This value does indicate that a [Certificate][google.cloud.security.privateca.v1beta1.Certificate]
56	// has been revoked, but that a reason has not been recorded.
57	RevocationReason_REVOCATION_REASON_UNSPECIFIED RevocationReason = 0
58	// Key material for this [Certificate][google.cloud.security.privateca.v1beta1.Certificate] may have leaked.
59	RevocationReason_KEY_COMPROMISE RevocationReason = 1
60	// The key material for a certificate authority in the issuing path may have
61	// leaked.
62	RevocationReason_CERTIFICATE_AUTHORITY_COMPROMISE RevocationReason = 2
63	// The subject or other attributes in this [Certificate][google.cloud.security.privateca.v1beta1.Certificate] have changed.
64	RevocationReason_AFFILIATION_CHANGED RevocationReason = 3
65	// This [Certificate][google.cloud.security.privateca.v1beta1.Certificate] has been superseded.
66	RevocationReason_SUPERSEDED RevocationReason = 4
67	// This [Certificate][google.cloud.security.privateca.v1beta1.Certificate] or entities in the issuing path have ceased to
68	// operate.
69	RevocationReason_CESSATION_OF_OPERATION RevocationReason = 5
70	// This [Certificate][google.cloud.security.privateca.v1beta1.Certificate] should not be considered valid, it is expected that it
71	// may become valid in the future.
72	RevocationReason_CERTIFICATE_HOLD RevocationReason = 6
73	// This [Certificate][google.cloud.security.privateca.v1beta1.Certificate] no longer has permission to assert the listed
74	// attributes.
75	RevocationReason_PRIVILEGE_WITHDRAWN RevocationReason = 7
76	// The authority which determines appropriate attributes for a [Certificate][google.cloud.security.privateca.v1beta1.Certificate]
77	// may have been compromised.
78	RevocationReason_ATTRIBUTE_AUTHORITY_COMPROMISE RevocationReason = 8
79)
80
81// Enum value maps for RevocationReason.
82var (
83	RevocationReason_name = map[int32]string{
84		0: "REVOCATION_REASON_UNSPECIFIED",
85		1: "KEY_COMPROMISE",
86		2: "CERTIFICATE_AUTHORITY_COMPROMISE",
87		3: "AFFILIATION_CHANGED",
88		4: "SUPERSEDED",
89		5: "CESSATION_OF_OPERATION",
90		6: "CERTIFICATE_HOLD",
91		7: "PRIVILEGE_WITHDRAWN",
92		8: "ATTRIBUTE_AUTHORITY_COMPROMISE",
93	}
94	RevocationReason_value = map[string]int32{
95		"REVOCATION_REASON_UNSPECIFIED":    0,
96		"KEY_COMPROMISE":                   1,
97		"CERTIFICATE_AUTHORITY_COMPROMISE": 2,
98		"AFFILIATION_CHANGED":              3,
99		"SUPERSEDED":                       4,
100		"CESSATION_OF_OPERATION":           5,
101		"CERTIFICATE_HOLD":                 6,
102		"PRIVILEGE_WITHDRAWN":              7,
103		"ATTRIBUTE_AUTHORITY_COMPROMISE":   8,
104	}
105)
106
107func (x RevocationReason) Enum() *RevocationReason {
108	p := new(RevocationReason)
109	*p = x
110	return p
111}
112
113func (x RevocationReason) String() string {
114	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
115}
116
117func (RevocationReason) Descriptor() protoreflect.EnumDescriptor {
118	return file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[0].Descriptor()
119}
120
121func (RevocationReason) Type() protoreflect.EnumType {
122	return &file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[0]
123}
124
125func (x RevocationReason) Number() protoreflect.EnumNumber {
126	return protoreflect.EnumNumber(x)
127}
128
129// Deprecated: Use RevocationReason.Descriptor instead.
130func (RevocationReason) EnumDescriptor() ([]byte, []int) {
131	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0}
132}
133
134// The type of a [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority], indicating its issuing chain.
135type CertificateAuthority_Type int32
136
137const (
138	// Not specified.
139	CertificateAuthority_TYPE_UNSPECIFIED CertificateAuthority_Type = 0
140	// Self-signed CA.
141	CertificateAuthority_SELF_SIGNED CertificateAuthority_Type = 1
142	// Subordinate CA. Could be issued by a Private CA [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]
143	// or an unmanaged CA.
144	CertificateAuthority_SUBORDINATE CertificateAuthority_Type = 2
145)
146
147// Enum value maps for CertificateAuthority_Type.
148var (
149	CertificateAuthority_Type_name = map[int32]string{
150		0: "TYPE_UNSPECIFIED",
151		1: "SELF_SIGNED",
152		2: "SUBORDINATE",
153	}
154	CertificateAuthority_Type_value = map[string]int32{
155		"TYPE_UNSPECIFIED": 0,
156		"SELF_SIGNED":      1,
157		"SUBORDINATE":      2,
158	}
159)
160
161func (x CertificateAuthority_Type) Enum() *CertificateAuthority_Type {
162	p := new(CertificateAuthority_Type)
163	*p = x
164	return p
165}
166
167func (x CertificateAuthority_Type) String() string {
168	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
169}
170
171func (CertificateAuthority_Type) Descriptor() protoreflect.EnumDescriptor {
172	return file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[1].Descriptor()
173}
174
175func (CertificateAuthority_Type) Type() protoreflect.EnumType {
176	return &file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[1]
177}
178
179func (x CertificateAuthority_Type) Number() protoreflect.EnumNumber {
180	return protoreflect.EnumNumber(x)
181}
182
183// Deprecated: Use CertificateAuthority_Type.Descriptor instead.
184func (CertificateAuthority_Type) EnumDescriptor() ([]byte, []int) {
185	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0, 0}
186}
187
188// The tier of a [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority], indicating its supported
189// functionality and/or billing SKU.
190type CertificateAuthority_Tier int32
191
192const (
193	// Not specified.
194	CertificateAuthority_TIER_UNSPECIFIED CertificateAuthority_Tier = 0
195	// Enterprise tier.
196	CertificateAuthority_ENTERPRISE CertificateAuthority_Tier = 1
197	// DevOps tier.
198	CertificateAuthority_DEVOPS CertificateAuthority_Tier = 2
199)
200
201// Enum value maps for CertificateAuthority_Tier.
202var (
203	CertificateAuthority_Tier_name = map[int32]string{
204		0: "TIER_UNSPECIFIED",
205		1: "ENTERPRISE",
206		2: "DEVOPS",
207	}
208	CertificateAuthority_Tier_value = map[string]int32{
209		"TIER_UNSPECIFIED": 0,
210		"ENTERPRISE":       1,
211		"DEVOPS":           2,
212	}
213)
214
215func (x CertificateAuthority_Tier) Enum() *CertificateAuthority_Tier {
216	p := new(CertificateAuthority_Tier)
217	*p = x
218	return p
219}
220
221func (x CertificateAuthority_Tier) String() string {
222	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
223}
224
225func (CertificateAuthority_Tier) Descriptor() protoreflect.EnumDescriptor {
226	return file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[2].Descriptor()
227}
228
229func (CertificateAuthority_Tier) Type() protoreflect.EnumType {
230	return &file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[2]
231}
232
233func (x CertificateAuthority_Tier) Number() protoreflect.EnumNumber {
234	return protoreflect.EnumNumber(x)
235}
236
237// Deprecated: Use CertificateAuthority_Tier.Descriptor instead.
238func (CertificateAuthority_Tier) EnumDescriptor() ([]byte, []int) {
239	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0, 1}
240}
241
242// The state of a [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority], indicating if it can be used.
243type CertificateAuthority_State int32
244
245const (
246	// Not specified.
247	CertificateAuthority_STATE_UNSPECIFIED CertificateAuthority_State = 0
248	// Certificates can be issued from this CA. CRLs will be generated for this
249	// CA.
250	CertificateAuthority_ENABLED CertificateAuthority_State = 1
251	// Certificates cannot be issued from this CA. CRLs will still be generated.
252	CertificateAuthority_DISABLED CertificateAuthority_State = 2
253	// Certificates cannot be issued from this CA. CRLs will not be generated.
254	CertificateAuthority_PENDING_ACTIVATION CertificateAuthority_State = 3
255	// Certificates cannot be issued from this CA. CRLs will not be generated.
256	CertificateAuthority_PENDING_DELETION CertificateAuthority_State = 4
257)
258
259// Enum value maps for CertificateAuthority_State.
260var (
261	CertificateAuthority_State_name = map[int32]string{
262		0: "STATE_UNSPECIFIED",
263		1: "ENABLED",
264		2: "DISABLED",
265		3: "PENDING_ACTIVATION",
266		4: "PENDING_DELETION",
267	}
268	CertificateAuthority_State_value = map[string]int32{
269		"STATE_UNSPECIFIED":  0,
270		"ENABLED":            1,
271		"DISABLED":           2,
272		"PENDING_ACTIVATION": 3,
273		"PENDING_DELETION":   4,
274	}
275)
276
277func (x CertificateAuthority_State) Enum() *CertificateAuthority_State {
278	p := new(CertificateAuthority_State)
279	*p = x
280	return p
281}
282
283func (x CertificateAuthority_State) String() string {
284	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
285}
286
287func (CertificateAuthority_State) Descriptor() protoreflect.EnumDescriptor {
288	return file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[3].Descriptor()
289}
290
291func (CertificateAuthority_State) Type() protoreflect.EnumType {
292	return &file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[3]
293}
294
295func (x CertificateAuthority_State) Number() protoreflect.EnumNumber {
296	return protoreflect.EnumNumber(x)
297}
298
299// Deprecated: Use CertificateAuthority_State.Descriptor instead.
300func (CertificateAuthority_State) EnumDescriptor() ([]byte, []int) {
301	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0, 2}
302}
303
304// The algorithm of a Cloud KMS CryptoKeyVersion of a
305// [CryptoKey][google.cloud.kms.v1.CryptoKey] with the
306// [CryptoKeyPurpose][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose] value
307// `ASYMMETRIC_SIGN`. These values correspond to the
308// [CryptoKeyVersionAlgorithm][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionAlgorithm]
309// values. For RSA signing algorithms, the PSS algorithms should be preferred,
310// use PKCS1 algorithms if required for compatibility. For further
311// recommandations, see
312// https://cloud.google.com/kms/docs/algorithms#algorithm_recommendations.
313type CertificateAuthority_SignHashAlgorithm int32
314
315const (
316	// Not specified.
317	CertificateAuthority_SIGN_HASH_ALGORITHM_UNSPECIFIED CertificateAuthority_SignHashAlgorithm = 0
318	// maps to CryptoKeyVersionAlgorithm.RSA_SIGN_PSS_2048_SHA256
319	CertificateAuthority_RSA_PSS_2048_SHA256 CertificateAuthority_SignHashAlgorithm = 1
320	// maps to CryptoKeyVersionAlgorithm. RSA_SIGN_PSS_3072_SHA256
321	CertificateAuthority_RSA_PSS_3072_SHA256 CertificateAuthority_SignHashAlgorithm = 2
322	// maps to CryptoKeyVersionAlgorithm.RSA_SIGN_PSS_4096_SHA256
323	CertificateAuthority_RSA_PSS_4096_SHA256 CertificateAuthority_SignHashAlgorithm = 3
324	// maps to CryptoKeyVersionAlgorithm.RSA_SIGN_PKCS1_2048_SHA256
325	CertificateAuthority_RSA_PKCS1_2048_SHA256 CertificateAuthority_SignHashAlgorithm = 6
326	// maps to CryptoKeyVersionAlgorithm.RSA_SIGN_PKCS1_3072_SHA256
327	CertificateAuthority_RSA_PKCS1_3072_SHA256 CertificateAuthority_SignHashAlgorithm = 7
328	// maps to CryptoKeyVersionAlgorithm.RSA_SIGN_PKCS1_4096_SHA256
329	CertificateAuthority_RSA_PKCS1_4096_SHA256 CertificateAuthority_SignHashAlgorithm = 8
330	// maps to CryptoKeyVersionAlgorithm.EC_SIGN_P256_SHA256
331	CertificateAuthority_EC_P256_SHA256 CertificateAuthority_SignHashAlgorithm = 4
332	// maps to CryptoKeyVersionAlgorithm.EC_SIGN_P384_SHA384
333	CertificateAuthority_EC_P384_SHA384 CertificateAuthority_SignHashAlgorithm = 5
334)
335
336// Enum value maps for CertificateAuthority_SignHashAlgorithm.
337var (
338	CertificateAuthority_SignHashAlgorithm_name = map[int32]string{
339		0: "SIGN_HASH_ALGORITHM_UNSPECIFIED",
340		1: "RSA_PSS_2048_SHA256",
341		2: "RSA_PSS_3072_SHA256",
342		3: "RSA_PSS_4096_SHA256",
343		6: "RSA_PKCS1_2048_SHA256",
344		7: "RSA_PKCS1_3072_SHA256",
345		8: "RSA_PKCS1_4096_SHA256",
346		4: "EC_P256_SHA256",
347		5: "EC_P384_SHA384",
348	}
349	CertificateAuthority_SignHashAlgorithm_value = map[string]int32{
350		"SIGN_HASH_ALGORITHM_UNSPECIFIED": 0,
351		"RSA_PSS_2048_SHA256":             1,
352		"RSA_PSS_3072_SHA256":             2,
353		"RSA_PSS_4096_SHA256":             3,
354		"RSA_PKCS1_2048_SHA256":           6,
355		"RSA_PKCS1_3072_SHA256":           7,
356		"RSA_PKCS1_4096_SHA256":           8,
357		"EC_P256_SHA256":                  4,
358		"EC_P384_SHA384":                  5,
359	}
360)
361
362func (x CertificateAuthority_SignHashAlgorithm) Enum() *CertificateAuthority_SignHashAlgorithm {
363	p := new(CertificateAuthority_SignHashAlgorithm)
364	*p = x
365	return p
366}
367
368func (x CertificateAuthority_SignHashAlgorithm) String() string {
369	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
370}
371
372func (CertificateAuthority_SignHashAlgorithm) Descriptor() protoreflect.EnumDescriptor {
373	return file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[4].Descriptor()
374}
375
376func (CertificateAuthority_SignHashAlgorithm) Type() protoreflect.EnumType {
377	return &file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[4]
378}
379
380func (x CertificateAuthority_SignHashAlgorithm) Number() protoreflect.EnumNumber {
381	return protoreflect.EnumNumber(x)
382}
383
384// Deprecated: Use CertificateAuthority_SignHashAlgorithm.Descriptor instead.
385func (CertificateAuthority_SignHashAlgorithm) EnumDescriptor() ([]byte, []int) {
386	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0, 3}
387}
388
389// The state of a [CertificateRevocationList][google.cloud.security.privateca.v1beta1.CertificateRevocationList], indicating if it is current.
390type CertificateRevocationList_State int32
391
392const (
393	// Not specified.
394	CertificateRevocationList_STATE_UNSPECIFIED CertificateRevocationList_State = 0
395	// The [CertificateRevocationList][google.cloud.security.privateca.v1beta1.CertificateRevocationList] is up to date.
396	CertificateRevocationList_ACTIVE CertificateRevocationList_State = 1
397	// The [CertificateRevocationList][google.cloud.security.privateca.v1beta1.CertificateRevocationList] is no longer current.
398	CertificateRevocationList_SUPERSEDED CertificateRevocationList_State = 2
399)
400
401// Enum value maps for CertificateRevocationList_State.
402var (
403	CertificateRevocationList_State_name = map[int32]string{
404		0: "STATE_UNSPECIFIED",
405		1: "ACTIVE",
406		2: "SUPERSEDED",
407	}
408	CertificateRevocationList_State_value = map[string]int32{
409		"STATE_UNSPECIFIED": 0,
410		"ACTIVE":            1,
411		"SUPERSEDED":        2,
412	}
413)
414
415func (x CertificateRevocationList_State) Enum() *CertificateRevocationList_State {
416	p := new(CertificateRevocationList_State)
417	*p = x
418	return p
419}
420
421func (x CertificateRevocationList_State) String() string {
422	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
423}
424
425func (CertificateRevocationList_State) Descriptor() protoreflect.EnumDescriptor {
426	return file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[5].Descriptor()
427}
428
429func (CertificateRevocationList_State) Type() protoreflect.EnumType {
430	return &file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[5]
431}
432
433func (x CertificateRevocationList_State) Number() protoreflect.EnumNumber {
434	return protoreflect.EnumNumber(x)
435}
436
437// Deprecated: Use CertificateRevocationList_State.Descriptor instead.
438func (CertificateRevocationList_State) EnumDescriptor() ([]byte, []int) {
439	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{1, 0}
440}
441
442// Types of public keys that are supported.
443// At a minimum, we support RSA and ECDSA, for the key sizes or curves listed:
444// https://cloud.google.com/kms/docs/algorithms#asymmetric_signing_algorithms
445type PublicKey_KeyType int32
446
447const (
448	// Default unspecified value.
449	PublicKey_KEY_TYPE_UNSPECIFIED PublicKey_KeyType = 0
450	// A PEM-encoded PKCS#1/RFC 3447 RSAPrivateKey structure.
451	PublicKey_PEM_RSA_KEY PublicKey_KeyType = 1
452	// A PEM-encoded compressed NIST P-256/secp256r1/prime256v1 or P-384 key.
453	PublicKey_PEM_EC_KEY PublicKey_KeyType = 2
454)
455
456// Enum value maps for PublicKey_KeyType.
457var (
458	PublicKey_KeyType_name = map[int32]string{
459		0: "KEY_TYPE_UNSPECIFIED",
460		1: "PEM_RSA_KEY",
461		2: "PEM_EC_KEY",
462	}
463	PublicKey_KeyType_value = map[string]int32{
464		"KEY_TYPE_UNSPECIFIED": 0,
465		"PEM_RSA_KEY":          1,
466		"PEM_EC_KEY":           2,
467	}
468)
469
470func (x PublicKey_KeyType) Enum() *PublicKey_KeyType {
471	p := new(PublicKey_KeyType)
472	*p = x
473	return p
474}
475
476func (x PublicKey_KeyType) String() string {
477	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
478}
479
480func (PublicKey_KeyType) Descriptor() protoreflect.EnumDescriptor {
481	return file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[6].Descriptor()
482}
483
484func (PublicKey_KeyType) Type() protoreflect.EnumType {
485	return &file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes[6]
486}
487
488func (x PublicKey_KeyType) Number() protoreflect.EnumNumber {
489	return protoreflect.EnumNumber(x)
490}
491
492// Deprecated: Use PublicKey_KeyType.Descriptor instead.
493func (PublicKey_KeyType) EnumDescriptor() ([]byte, []int) {
494	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{7, 0}
495}
496
497// A [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] represents an individual Certificate Authority.
498// A [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] can be used to create [Certificates][google.cloud.security.privateca.v1beta1.Certificate].
499type CertificateAuthority struct {
500	state         protoimpl.MessageState
501	sizeCache     protoimpl.SizeCache
502	unknownFields protoimpl.UnknownFields
503
504	// Output only. The resource name for this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] in the
505	// format `projects/*/locations/*/certificateAuthorities/*`.
506	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
507	// Required. Immutable. The [Type][google.cloud.security.privateca.v1beta1.CertificateAuthority.Type] of this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority].
508	Type CertificateAuthority_Type `protobuf:"varint,2,opt,name=type,proto3,enum=google.cloud.security.privateca.v1beta1.CertificateAuthority_Type" json:"type,omitempty"`
509	// Required. Immutable. The [Tier][google.cloud.security.privateca.v1beta1.CertificateAuthority.Tier] of this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority].
510	Tier CertificateAuthority_Tier `protobuf:"varint,3,opt,name=tier,proto3,enum=google.cloud.security.privateca.v1beta1.CertificateAuthority_Tier" json:"tier,omitempty"`
511	// Required. Immutable. The config used to create a self-signed X.509 certificate or CSR.
512	Config *CertificateConfig `protobuf:"bytes,4,opt,name=config,proto3" json:"config,omitempty"`
513	// Required. The desired lifetime of the CA certificate. Used to create the
514	// "not_before_time" and "not_after_time" fields inside an X.509
515	// certificate.
516	Lifetime *durationpb.Duration `protobuf:"bytes,5,opt,name=lifetime,proto3" json:"lifetime,omitempty"`
517	// Required. Immutable. Used when issuing certificates for this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]. If this
518	// [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] is a self-signed CertificateAuthority, this key
519	// is also used to sign the self-signed CA certificate. Otherwise, it
520	// is used to sign a CSR.
521	KeySpec *CertificateAuthority_KeyVersionSpec `protobuf:"bytes,6,opt,name=key_spec,json=keySpec,proto3" json:"key_spec,omitempty"`
522	// Optional. The [CertificateAuthorityPolicy][google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy] to enforce when issuing
523	// [Certificates][google.cloud.security.privateca.v1beta1.Certificate] from this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority].
524	CertificatePolicy *CertificateAuthority_CertificateAuthorityPolicy `protobuf:"bytes,7,opt,name=certificate_policy,json=certificatePolicy,proto3" json:"certificate_policy,omitempty"`
525	// Optional. The [IssuingOptions][google.cloud.security.privateca.v1beta1.CertificateAuthority.IssuingOptions] to follow when issuing [Certificates][google.cloud.security.privateca.v1beta1.Certificate]
526	// from this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority].
527	IssuingOptions *CertificateAuthority_IssuingOptions `protobuf:"bytes,8,opt,name=issuing_options,json=issuingOptions,proto3" json:"issuing_options,omitempty"`
528	// Optional. If this is a subordinate [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority], this field will be set
529	// with the subordinate configuration, which describes its issuers. This may
530	// be updated, but this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] must continue to validate.
531	SubordinateConfig *SubordinateConfig `protobuf:"bytes,19,opt,name=subordinate_config,json=subordinateConfig,proto3" json:"subordinate_config,omitempty"`
532	// Output only. The [State][google.cloud.security.privateca.v1beta1.CertificateAuthority.State] for this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority].
533	State CertificateAuthority_State `protobuf:"varint,10,opt,name=state,proto3,enum=google.cloud.security.privateca.v1beta1.CertificateAuthority_State" json:"state,omitempty"`
534	// Output only. This [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]'s certificate chain, including the current
535	// [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]'s certificate. Ordered such that the root issuer
536	// is the final element (consistent with RFC 5246). For a self-signed CA, this
537	// will only list the current [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]'s certificate.
538	PemCaCertificates []string `protobuf:"bytes,9,rep,name=pem_ca_certificates,json=pemCaCertificates,proto3" json:"pem_ca_certificates,omitempty"`
539	// Output only. A structured description of this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]'s CA certificate
540	// and its issuers. Ordered as self-to-root.
541	CaCertificateDescriptions []*CertificateDescription `protobuf:"bytes,12,rep,name=ca_certificate_descriptions,json=caCertificateDescriptions,proto3" json:"ca_certificate_descriptions,omitempty"`
542	// Immutable. The name of a Cloud Storage bucket where this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] will
543	// publish content, such as the CA certificate and CRLs. This must be a bucket
544	// name, without any prefixes (such as `gs://`) or suffixes (such as
545	// `.googleapis.com`). For example, to use a bucket named `my-bucket`, you
546	// would simply specify `my-bucket`. If not specified, a managed bucket will
547	// be created.
548	GcsBucket string `protobuf:"bytes,13,opt,name=gcs_bucket,json=gcsBucket,proto3" json:"gcs_bucket,omitempty"`
549	// Output only. URLs for accessing content published by this CA, such as the CA certificate
550	// and CRLs.
551	AccessUrls *CertificateAuthority_AccessUrls `protobuf:"bytes,14,opt,name=access_urls,json=accessUrls,proto3" json:"access_urls,omitempty"`
552	// Output only. The time at which this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] was created.
553	CreateTime *timestamppb.Timestamp `protobuf:"bytes,15,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
554	// Output only. The time at which this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] was updated.
555	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,16,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
556	// Output only. The time at which this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] will be deleted, if
557	// scheduled for deletion.
558	DeleteTime *timestamppb.Timestamp `protobuf:"bytes,17,opt,name=delete_time,json=deleteTime,proto3" json:"delete_time,omitempty"`
559	// Optional. Labels with user-defined metadata.
560	Labels map[string]string `protobuf:"bytes,18,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
561}
562
563func (x *CertificateAuthority) Reset() {
564	*x = CertificateAuthority{}
565	if protoimpl.UnsafeEnabled {
566		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[0]
567		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
568		ms.StoreMessageInfo(mi)
569	}
570}
571
572func (x *CertificateAuthority) String() string {
573	return protoimpl.X.MessageStringOf(x)
574}
575
576func (*CertificateAuthority) ProtoMessage() {}
577
578func (x *CertificateAuthority) ProtoReflect() protoreflect.Message {
579	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[0]
580	if protoimpl.UnsafeEnabled && x != nil {
581		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
582		if ms.LoadMessageInfo() == nil {
583			ms.StoreMessageInfo(mi)
584		}
585		return ms
586	}
587	return mi.MessageOf(x)
588}
589
590// Deprecated: Use CertificateAuthority.ProtoReflect.Descriptor instead.
591func (*CertificateAuthority) Descriptor() ([]byte, []int) {
592	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0}
593}
594
595func (x *CertificateAuthority) GetName() string {
596	if x != nil {
597		return x.Name
598	}
599	return ""
600}
601
602func (x *CertificateAuthority) GetType() CertificateAuthority_Type {
603	if x != nil {
604		return x.Type
605	}
606	return CertificateAuthority_TYPE_UNSPECIFIED
607}
608
609func (x *CertificateAuthority) GetTier() CertificateAuthority_Tier {
610	if x != nil {
611		return x.Tier
612	}
613	return CertificateAuthority_TIER_UNSPECIFIED
614}
615
616func (x *CertificateAuthority) GetConfig() *CertificateConfig {
617	if x != nil {
618		return x.Config
619	}
620	return nil
621}
622
623func (x *CertificateAuthority) GetLifetime() *durationpb.Duration {
624	if x != nil {
625		return x.Lifetime
626	}
627	return nil
628}
629
630func (x *CertificateAuthority) GetKeySpec() *CertificateAuthority_KeyVersionSpec {
631	if x != nil {
632		return x.KeySpec
633	}
634	return nil
635}
636
637func (x *CertificateAuthority) GetCertificatePolicy() *CertificateAuthority_CertificateAuthorityPolicy {
638	if x != nil {
639		return x.CertificatePolicy
640	}
641	return nil
642}
643
644func (x *CertificateAuthority) GetIssuingOptions() *CertificateAuthority_IssuingOptions {
645	if x != nil {
646		return x.IssuingOptions
647	}
648	return nil
649}
650
651func (x *CertificateAuthority) GetSubordinateConfig() *SubordinateConfig {
652	if x != nil {
653		return x.SubordinateConfig
654	}
655	return nil
656}
657
658func (x *CertificateAuthority) GetState() CertificateAuthority_State {
659	if x != nil {
660		return x.State
661	}
662	return CertificateAuthority_STATE_UNSPECIFIED
663}
664
665func (x *CertificateAuthority) GetPemCaCertificates() []string {
666	if x != nil {
667		return x.PemCaCertificates
668	}
669	return nil
670}
671
672func (x *CertificateAuthority) GetCaCertificateDescriptions() []*CertificateDescription {
673	if x != nil {
674		return x.CaCertificateDescriptions
675	}
676	return nil
677}
678
679func (x *CertificateAuthority) GetGcsBucket() string {
680	if x != nil {
681		return x.GcsBucket
682	}
683	return ""
684}
685
686func (x *CertificateAuthority) GetAccessUrls() *CertificateAuthority_AccessUrls {
687	if x != nil {
688		return x.AccessUrls
689	}
690	return nil
691}
692
693func (x *CertificateAuthority) GetCreateTime() *timestamppb.Timestamp {
694	if x != nil {
695		return x.CreateTime
696	}
697	return nil
698}
699
700func (x *CertificateAuthority) GetUpdateTime() *timestamppb.Timestamp {
701	if x != nil {
702		return x.UpdateTime
703	}
704	return nil
705}
706
707func (x *CertificateAuthority) GetDeleteTime() *timestamppb.Timestamp {
708	if x != nil {
709		return x.DeleteTime
710	}
711	return nil
712}
713
714func (x *CertificateAuthority) GetLabels() map[string]string {
715	if x != nil {
716		return x.Labels
717	}
718	return nil
719}
720
721// A [CertificateRevocationList][google.cloud.security.privateca.v1beta1.CertificateRevocationList] corresponds to a signed X.509 certificate
722// Revocation List (CRL). A CRL contains the serial numbers of certificates that
723// should no longer be trusted.
724type CertificateRevocationList struct {
725	state         protoimpl.MessageState
726	sizeCache     protoimpl.SizeCache
727	unknownFields protoimpl.UnknownFields
728
729	// Output only. The resource path for this [CertificateRevocationList][google.cloud.security.privateca.v1beta1.CertificateRevocationList] in
730	// the format
731	// `projects/*/locations/*/certificateAuthorities/*/
732	//    certificateRevocationLists/*`.
733	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
734	// Output only. The CRL sequence number that appears in pem_crl.
735	SequenceNumber int64 `protobuf:"varint,2,opt,name=sequence_number,json=sequenceNumber,proto3" json:"sequence_number,omitempty"`
736	// Output only. The revoked serial numbers that appear in pem_crl.
737	RevokedCertificates []*CertificateRevocationList_RevokedCertificate `protobuf:"bytes,3,rep,name=revoked_certificates,json=revokedCertificates,proto3" json:"revoked_certificates,omitempty"`
738	// Output only. The PEM-encoded X.509 CRL.
739	PemCrl string `protobuf:"bytes,4,opt,name=pem_crl,json=pemCrl,proto3" json:"pem_crl,omitempty"`
740	// Output only. The location where 'pem_crl' can be accessed.
741	AccessUrl string `protobuf:"bytes,5,opt,name=access_url,json=accessUrl,proto3" json:"access_url,omitempty"`
742	// Output only. The [State][google.cloud.security.privateca.v1beta1.CertificateRevocationList.State] for this [CertificateRevocationList][google.cloud.security.privateca.v1beta1.CertificateRevocationList].
743	State CertificateRevocationList_State `protobuf:"varint,6,opt,name=state,proto3,enum=google.cloud.security.privateca.v1beta1.CertificateRevocationList_State" json:"state,omitempty"`
744	// Output only. The time at which this [CertificateRevocationList][google.cloud.security.privateca.v1beta1.CertificateRevocationList] was created.
745	CreateTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
746	// Output only. The time at which this [CertificateRevocationList][google.cloud.security.privateca.v1beta1.CertificateRevocationList] was updated.
747	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
748	// Optional. Labels with user-defined metadata.
749	Labels map[string]string `protobuf:"bytes,9,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
750}
751
752func (x *CertificateRevocationList) Reset() {
753	*x = CertificateRevocationList{}
754	if protoimpl.UnsafeEnabled {
755		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[1]
756		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
757		ms.StoreMessageInfo(mi)
758	}
759}
760
761func (x *CertificateRevocationList) String() string {
762	return protoimpl.X.MessageStringOf(x)
763}
764
765func (*CertificateRevocationList) ProtoMessage() {}
766
767func (x *CertificateRevocationList) ProtoReflect() protoreflect.Message {
768	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[1]
769	if protoimpl.UnsafeEnabled && x != nil {
770		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
771		if ms.LoadMessageInfo() == nil {
772			ms.StoreMessageInfo(mi)
773		}
774		return ms
775	}
776	return mi.MessageOf(x)
777}
778
779// Deprecated: Use CertificateRevocationList.ProtoReflect.Descriptor instead.
780func (*CertificateRevocationList) Descriptor() ([]byte, []int) {
781	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{1}
782}
783
784func (x *CertificateRevocationList) GetName() string {
785	if x != nil {
786		return x.Name
787	}
788	return ""
789}
790
791func (x *CertificateRevocationList) GetSequenceNumber() int64 {
792	if x != nil {
793		return x.SequenceNumber
794	}
795	return 0
796}
797
798func (x *CertificateRevocationList) GetRevokedCertificates() []*CertificateRevocationList_RevokedCertificate {
799	if x != nil {
800		return x.RevokedCertificates
801	}
802	return nil
803}
804
805func (x *CertificateRevocationList) GetPemCrl() string {
806	if x != nil {
807		return x.PemCrl
808	}
809	return ""
810}
811
812func (x *CertificateRevocationList) GetAccessUrl() string {
813	if x != nil {
814		return x.AccessUrl
815	}
816	return ""
817}
818
819func (x *CertificateRevocationList) GetState() CertificateRevocationList_State {
820	if x != nil {
821		return x.State
822	}
823	return CertificateRevocationList_STATE_UNSPECIFIED
824}
825
826func (x *CertificateRevocationList) GetCreateTime() *timestamppb.Timestamp {
827	if x != nil {
828		return x.CreateTime
829	}
830	return nil
831}
832
833func (x *CertificateRevocationList) GetUpdateTime() *timestamppb.Timestamp {
834	if x != nil {
835		return x.UpdateTime
836	}
837	return nil
838}
839
840func (x *CertificateRevocationList) GetLabels() map[string]string {
841	if x != nil {
842		return x.Labels
843	}
844	return nil
845}
846
847// A [Certificate][google.cloud.security.privateca.v1beta1.Certificate] corresponds to a signed X.509 certificate issued by a
848// [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority].
849type Certificate struct {
850	state         protoimpl.MessageState
851	sizeCache     protoimpl.SizeCache
852	unknownFields protoimpl.UnknownFields
853
854	// Output only. The resource path for this [Certificate][google.cloud.security.privateca.v1beta1.Certificate] in the format
855	// `projects/*/locations/*/certificateAuthorities/*/certificates/*`.
856	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
857	// The config used to create a signed X.509 certificate.
858	//
859	// Types that are assignable to CertificateConfig:
860	//	*Certificate_PemCsr
861	//	*Certificate_Config
862	CertificateConfig isCertificate_CertificateConfig `protobuf_oneof:"certificate_config"`
863	// Required. Immutable. The desired lifetime of a certificate. Used to create the
864	// "not_before_time" and "not_after_time" fields inside an X.509
865	// certificate. Note that the lifetime may be truncated if it would extend
866	// past the life of any certificate authority in the issuing chain.
867	Lifetime *durationpb.Duration `protobuf:"bytes,4,opt,name=lifetime,proto3" json:"lifetime,omitempty"`
868	// Output only. Details regarding the revocation of this [Certificate][google.cloud.security.privateca.v1beta1.Certificate]. This
869	// [Certificate][google.cloud.security.privateca.v1beta1.Certificate] is considered revoked if and only if this field is present.
870	RevocationDetails *Certificate_RevocationDetails `protobuf:"bytes,5,opt,name=revocation_details,json=revocationDetails,proto3" json:"revocation_details,omitempty"`
871	// Output only. The pem-encoded, signed X.509 certificate.
872	PemCertificate string `protobuf:"bytes,6,opt,name=pem_certificate,json=pemCertificate,proto3" json:"pem_certificate,omitempty"`
873	// Output only. A structured description of the issued X.509 certificate.
874	CertificateDescription *CertificateDescription `protobuf:"bytes,7,opt,name=certificate_description,json=certificateDescription,proto3" json:"certificate_description,omitempty"`
875	// Output only. The chain that may be used to verify the X.509 certificate. Expected to be
876	// in issuer-to-root order according to RFC 5246.
877	PemCertificateChain []string `protobuf:"bytes,8,rep,name=pem_certificate_chain,json=pemCertificateChain,proto3" json:"pem_certificate_chain,omitempty"`
878	// Output only. The time at which this [Certificate][google.cloud.security.privateca.v1beta1.Certificate] was created.
879	CreateTime *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
880	// Output only. The time at which this [Certificate][google.cloud.security.privateca.v1beta1.Certificate] was updated.
881	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
882	// Optional. Labels with user-defined metadata.
883	Labels map[string]string `protobuf:"bytes,11,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
884}
885
886func (x *Certificate) Reset() {
887	*x = Certificate{}
888	if protoimpl.UnsafeEnabled {
889		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[2]
890		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
891		ms.StoreMessageInfo(mi)
892	}
893}
894
895func (x *Certificate) String() string {
896	return protoimpl.X.MessageStringOf(x)
897}
898
899func (*Certificate) ProtoMessage() {}
900
901func (x *Certificate) ProtoReflect() protoreflect.Message {
902	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[2]
903	if protoimpl.UnsafeEnabled && x != nil {
904		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
905		if ms.LoadMessageInfo() == nil {
906			ms.StoreMessageInfo(mi)
907		}
908		return ms
909	}
910	return mi.MessageOf(x)
911}
912
913// Deprecated: Use Certificate.ProtoReflect.Descriptor instead.
914func (*Certificate) Descriptor() ([]byte, []int) {
915	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{2}
916}
917
918func (x *Certificate) GetName() string {
919	if x != nil {
920		return x.Name
921	}
922	return ""
923}
924
925func (m *Certificate) GetCertificateConfig() isCertificate_CertificateConfig {
926	if m != nil {
927		return m.CertificateConfig
928	}
929	return nil
930}
931
932func (x *Certificate) GetPemCsr() string {
933	if x, ok := x.GetCertificateConfig().(*Certificate_PemCsr); ok {
934		return x.PemCsr
935	}
936	return ""
937}
938
939func (x *Certificate) GetConfig() *CertificateConfig {
940	if x, ok := x.GetCertificateConfig().(*Certificate_Config); ok {
941		return x.Config
942	}
943	return nil
944}
945
946func (x *Certificate) GetLifetime() *durationpb.Duration {
947	if x != nil {
948		return x.Lifetime
949	}
950	return nil
951}
952
953func (x *Certificate) GetRevocationDetails() *Certificate_RevocationDetails {
954	if x != nil {
955		return x.RevocationDetails
956	}
957	return nil
958}
959
960func (x *Certificate) GetPemCertificate() string {
961	if x != nil {
962		return x.PemCertificate
963	}
964	return ""
965}
966
967func (x *Certificate) GetCertificateDescription() *CertificateDescription {
968	if x != nil {
969		return x.CertificateDescription
970	}
971	return nil
972}
973
974func (x *Certificate) GetPemCertificateChain() []string {
975	if x != nil {
976		return x.PemCertificateChain
977	}
978	return nil
979}
980
981func (x *Certificate) GetCreateTime() *timestamppb.Timestamp {
982	if x != nil {
983		return x.CreateTime
984	}
985	return nil
986}
987
988func (x *Certificate) GetUpdateTime() *timestamppb.Timestamp {
989	if x != nil {
990		return x.UpdateTime
991	}
992	return nil
993}
994
995func (x *Certificate) GetLabels() map[string]string {
996	if x != nil {
997		return x.Labels
998	}
999	return nil
1000}
1001
1002type isCertificate_CertificateConfig interface {
1003	isCertificate_CertificateConfig()
1004}
1005
1006type Certificate_PemCsr struct {
1007	// Immutable. A pem-encoded X.509 certificate signing request (CSR).
1008	PemCsr string `protobuf:"bytes,2,opt,name=pem_csr,json=pemCsr,proto3,oneof"`
1009}
1010
1011type Certificate_Config struct {
1012	// Immutable. A description of the certificate and key that does not require X.509 or
1013	// ASN.1.
1014	Config *CertificateConfig `protobuf:"bytes,3,opt,name=config,proto3,oneof"`
1015}
1016
1017func (*Certificate_PemCsr) isCertificate_CertificateConfig() {}
1018
1019func (*Certificate_Config) isCertificate_CertificateConfig() {}
1020
1021// A [ReusableConfig][google.cloud.security.privateca.v1beta1.ReusableConfig] refers to a managed [ReusableConfigValues][google.cloud.security.privateca.v1beta1.ReusableConfigValues]. Those, in
1022// turn, are used to describe certain fields of an X.509 certificate, such as
1023// the key usage fields, fields specific to CA certificates, certificate policy
1024// extensions and custom extensions.
1025type ReusableConfig struct {
1026	state         protoimpl.MessageState
1027	sizeCache     protoimpl.SizeCache
1028	unknownFields protoimpl.UnknownFields
1029
1030	// Output only. The resource path for this [ReusableConfig][google.cloud.security.privateca.v1beta1.ReusableConfig] in the format
1031	// `projects/*/locations/*/reusableConfigs/*`.
1032	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
1033	// Required. The config values.
1034	Values *ReusableConfigValues `protobuf:"bytes,2,opt,name=values,proto3" json:"values,omitempty"`
1035	// Optional. A human-readable description of scenarios these ReusableConfigValues may be
1036	// compatible with.
1037	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
1038	// Output only. The time at which this [ReusableConfig][google.cloud.security.privateca.v1beta1.ReusableConfig] was created.
1039	CreateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
1040	// Output only. The time at which this [ReusableConfig][google.cloud.security.privateca.v1beta1.ReusableConfig] was updated.
1041	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
1042	// Optional. Labels with user-defined metadata.
1043	Labels map[string]string `protobuf:"bytes,6,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
1044}
1045
1046func (x *ReusableConfig) Reset() {
1047	*x = ReusableConfig{}
1048	if protoimpl.UnsafeEnabled {
1049		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[3]
1050		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1051		ms.StoreMessageInfo(mi)
1052	}
1053}
1054
1055func (x *ReusableConfig) String() string {
1056	return protoimpl.X.MessageStringOf(x)
1057}
1058
1059func (*ReusableConfig) ProtoMessage() {}
1060
1061func (x *ReusableConfig) ProtoReflect() protoreflect.Message {
1062	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[3]
1063	if protoimpl.UnsafeEnabled && x != nil {
1064		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1065		if ms.LoadMessageInfo() == nil {
1066			ms.StoreMessageInfo(mi)
1067		}
1068		return ms
1069	}
1070	return mi.MessageOf(x)
1071}
1072
1073// Deprecated: Use ReusableConfig.ProtoReflect.Descriptor instead.
1074func (*ReusableConfig) Descriptor() ([]byte, []int) {
1075	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{3}
1076}
1077
1078func (x *ReusableConfig) GetName() string {
1079	if x != nil {
1080		return x.Name
1081	}
1082	return ""
1083}
1084
1085func (x *ReusableConfig) GetValues() *ReusableConfigValues {
1086	if x != nil {
1087		return x.Values
1088	}
1089	return nil
1090}
1091
1092func (x *ReusableConfig) GetDescription() string {
1093	if x != nil {
1094		return x.Description
1095	}
1096	return ""
1097}
1098
1099func (x *ReusableConfig) GetCreateTime() *timestamppb.Timestamp {
1100	if x != nil {
1101		return x.CreateTime
1102	}
1103	return nil
1104}
1105
1106func (x *ReusableConfig) GetUpdateTime() *timestamppb.Timestamp {
1107	if x != nil {
1108		return x.UpdateTime
1109	}
1110	return nil
1111}
1112
1113func (x *ReusableConfig) GetLabels() map[string]string {
1114	if x != nil {
1115		return x.Labels
1116	}
1117	return nil
1118}
1119
1120// A [ReusableConfigValues][google.cloud.security.privateca.v1beta1.ReusableConfigValues] is used to describe certain fields of an
1121// X.509 certificate, such as the key usage fields, fields specific to CA
1122// certificates, certificate policy extensions and custom extensions.
1123type ReusableConfigValues struct {
1124	state         protoimpl.MessageState
1125	sizeCache     protoimpl.SizeCache
1126	unknownFields protoimpl.UnknownFields
1127
1128	// Optional. Indicates the intended use for keys that correspond to a certificate.
1129	KeyUsage *KeyUsage `protobuf:"bytes,1,opt,name=key_usage,json=keyUsage,proto3" json:"key_usage,omitempty"`
1130	// Optional. Describes options in this [ReusableConfigValues][google.cloud.security.privateca.v1beta1.ReusableConfigValues] that are
1131	// relevant in a CA certificate.
1132	CaOptions *ReusableConfigValues_CaOptions `protobuf:"bytes,2,opt,name=ca_options,json=caOptions,proto3" json:"ca_options,omitempty"`
1133	// Optional. Describes the X.509 certificate policy object identifiers, per
1134	// https://tools.ietf.org/html/rfc5280#section-4.2.1.4.
1135	PolicyIds []*ObjectId `protobuf:"bytes,3,rep,name=policy_ids,json=policyIds,proto3" json:"policy_ids,omitempty"`
1136	// Optional. Describes Online Certificate Status Protocol (OCSP) endpoint addresses
1137	// that appear in the "Authority Information Access" extension in the
1138	// certificate.
1139	AiaOcspServers []string `protobuf:"bytes,4,rep,name=aia_ocsp_servers,json=aiaOcspServers,proto3" json:"aia_ocsp_servers,omitempty"`
1140	// Optional. Describes custom X.509 extensions.
1141	AdditionalExtensions []*X509Extension `protobuf:"bytes,5,rep,name=additional_extensions,json=additionalExtensions,proto3" json:"additional_extensions,omitempty"`
1142}
1143
1144func (x *ReusableConfigValues) Reset() {
1145	*x = ReusableConfigValues{}
1146	if protoimpl.UnsafeEnabled {
1147		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[4]
1148		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1149		ms.StoreMessageInfo(mi)
1150	}
1151}
1152
1153func (x *ReusableConfigValues) String() string {
1154	return protoimpl.X.MessageStringOf(x)
1155}
1156
1157func (*ReusableConfigValues) ProtoMessage() {}
1158
1159func (x *ReusableConfigValues) ProtoReflect() protoreflect.Message {
1160	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[4]
1161	if protoimpl.UnsafeEnabled && x != nil {
1162		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1163		if ms.LoadMessageInfo() == nil {
1164			ms.StoreMessageInfo(mi)
1165		}
1166		return ms
1167	}
1168	return mi.MessageOf(x)
1169}
1170
1171// Deprecated: Use ReusableConfigValues.ProtoReflect.Descriptor instead.
1172func (*ReusableConfigValues) Descriptor() ([]byte, []int) {
1173	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{4}
1174}
1175
1176func (x *ReusableConfigValues) GetKeyUsage() *KeyUsage {
1177	if x != nil {
1178		return x.KeyUsage
1179	}
1180	return nil
1181}
1182
1183func (x *ReusableConfigValues) GetCaOptions() *ReusableConfigValues_CaOptions {
1184	if x != nil {
1185		return x.CaOptions
1186	}
1187	return nil
1188}
1189
1190func (x *ReusableConfigValues) GetPolicyIds() []*ObjectId {
1191	if x != nil {
1192		return x.PolicyIds
1193	}
1194	return nil
1195}
1196
1197func (x *ReusableConfigValues) GetAiaOcspServers() []string {
1198	if x != nil {
1199		return x.AiaOcspServers
1200	}
1201	return nil
1202}
1203
1204func (x *ReusableConfigValues) GetAdditionalExtensions() []*X509Extension {
1205	if x != nil {
1206		return x.AdditionalExtensions
1207	}
1208	return nil
1209}
1210
1211// A [ReusableConfigWrapper][google.cloud.security.privateca.v1beta1.ReusableConfigWrapper] describes values that may assist in creating an
1212// X.509 certificate, or a reference to a pre-defined set of values.
1213type ReusableConfigWrapper struct {
1214	state         protoimpl.MessageState
1215	sizeCache     protoimpl.SizeCache
1216	unknownFields protoimpl.UnknownFields
1217
1218	// Reusable or inline config values.
1219	//
1220	// Types that are assignable to ConfigValues:
1221	//	*ReusableConfigWrapper_ReusableConfig
1222	//	*ReusableConfigWrapper_ReusableConfigValues
1223	ConfigValues isReusableConfigWrapper_ConfigValues `protobuf_oneof:"config_values"`
1224}
1225
1226func (x *ReusableConfigWrapper) Reset() {
1227	*x = ReusableConfigWrapper{}
1228	if protoimpl.UnsafeEnabled {
1229		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[5]
1230		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1231		ms.StoreMessageInfo(mi)
1232	}
1233}
1234
1235func (x *ReusableConfigWrapper) String() string {
1236	return protoimpl.X.MessageStringOf(x)
1237}
1238
1239func (*ReusableConfigWrapper) ProtoMessage() {}
1240
1241func (x *ReusableConfigWrapper) ProtoReflect() protoreflect.Message {
1242	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[5]
1243	if protoimpl.UnsafeEnabled && x != nil {
1244		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1245		if ms.LoadMessageInfo() == nil {
1246			ms.StoreMessageInfo(mi)
1247		}
1248		return ms
1249	}
1250	return mi.MessageOf(x)
1251}
1252
1253// Deprecated: Use ReusableConfigWrapper.ProtoReflect.Descriptor instead.
1254func (*ReusableConfigWrapper) Descriptor() ([]byte, []int) {
1255	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{5}
1256}
1257
1258func (m *ReusableConfigWrapper) GetConfigValues() isReusableConfigWrapper_ConfigValues {
1259	if m != nil {
1260		return m.ConfigValues
1261	}
1262	return nil
1263}
1264
1265func (x *ReusableConfigWrapper) GetReusableConfig() string {
1266	if x, ok := x.GetConfigValues().(*ReusableConfigWrapper_ReusableConfig); ok {
1267		return x.ReusableConfig
1268	}
1269	return ""
1270}
1271
1272func (x *ReusableConfigWrapper) GetReusableConfigValues() *ReusableConfigValues {
1273	if x, ok := x.GetConfigValues().(*ReusableConfigWrapper_ReusableConfigValues); ok {
1274		return x.ReusableConfigValues
1275	}
1276	return nil
1277}
1278
1279type isReusableConfigWrapper_ConfigValues interface {
1280	isReusableConfigWrapper_ConfigValues()
1281}
1282
1283type ReusableConfigWrapper_ReusableConfig struct {
1284	// Required. A resource path to a [ReusableConfig][google.cloud.security.privateca.v1beta1.ReusableConfig] in the format
1285	// `projects/*/locations/*/reusableConfigs/*`.
1286	ReusableConfig string `protobuf:"bytes,1,opt,name=reusable_config,json=reusableConfig,proto3,oneof"`
1287}
1288
1289type ReusableConfigWrapper_ReusableConfigValues struct {
1290	// Required. A user-specified inline [ReusableConfigValues][google.cloud.security.privateca.v1beta1.ReusableConfigValues].
1291	ReusableConfigValues *ReusableConfigValues `protobuf:"bytes,2,opt,name=reusable_config_values,json=reusableConfigValues,proto3,oneof"`
1292}
1293
1294func (*ReusableConfigWrapper_ReusableConfig) isReusableConfigWrapper_ConfigValues() {}
1295
1296func (*ReusableConfigWrapper_ReusableConfigValues) isReusableConfigWrapper_ConfigValues() {}
1297
1298// Describes a subordinate CA's issuers. This is either a resource path to a
1299// known issuing [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority], or a PEM issuer certificate chain.
1300type SubordinateConfig struct {
1301	state         protoimpl.MessageState
1302	sizeCache     protoimpl.SizeCache
1303	unknownFields protoimpl.UnknownFields
1304
1305	// Types that are assignable to SubordinateConfig:
1306	//	*SubordinateConfig_CertificateAuthority
1307	//	*SubordinateConfig_PemIssuerChain
1308	SubordinateConfig isSubordinateConfig_SubordinateConfig `protobuf_oneof:"subordinate_config"`
1309}
1310
1311func (x *SubordinateConfig) Reset() {
1312	*x = SubordinateConfig{}
1313	if protoimpl.UnsafeEnabled {
1314		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[6]
1315		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1316		ms.StoreMessageInfo(mi)
1317	}
1318}
1319
1320func (x *SubordinateConfig) String() string {
1321	return protoimpl.X.MessageStringOf(x)
1322}
1323
1324func (*SubordinateConfig) ProtoMessage() {}
1325
1326func (x *SubordinateConfig) ProtoReflect() protoreflect.Message {
1327	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[6]
1328	if protoimpl.UnsafeEnabled && x != nil {
1329		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1330		if ms.LoadMessageInfo() == nil {
1331			ms.StoreMessageInfo(mi)
1332		}
1333		return ms
1334	}
1335	return mi.MessageOf(x)
1336}
1337
1338// Deprecated: Use SubordinateConfig.ProtoReflect.Descriptor instead.
1339func (*SubordinateConfig) Descriptor() ([]byte, []int) {
1340	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{6}
1341}
1342
1343func (m *SubordinateConfig) GetSubordinateConfig() isSubordinateConfig_SubordinateConfig {
1344	if m != nil {
1345		return m.SubordinateConfig
1346	}
1347	return nil
1348}
1349
1350func (x *SubordinateConfig) GetCertificateAuthority() string {
1351	if x, ok := x.GetSubordinateConfig().(*SubordinateConfig_CertificateAuthority); ok {
1352		return x.CertificateAuthority
1353	}
1354	return ""
1355}
1356
1357func (x *SubordinateConfig) GetPemIssuerChain() *SubordinateConfig_SubordinateConfigChain {
1358	if x, ok := x.GetSubordinateConfig().(*SubordinateConfig_PemIssuerChain); ok {
1359		return x.PemIssuerChain
1360	}
1361	return nil
1362}
1363
1364type isSubordinateConfig_SubordinateConfig interface {
1365	isSubordinateConfig_SubordinateConfig()
1366}
1367
1368type SubordinateConfig_CertificateAuthority struct {
1369	// Required. This can refer to a [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] in the same project that
1370	// was used to create a subordinate [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]. This field
1371	// is used for information and usability purposes only. The resource name
1372	// is in the format `projects/*/locations/*/certificateAuthorities/*`.
1373	CertificateAuthority string `protobuf:"bytes,1,opt,name=certificate_authority,json=certificateAuthority,proto3,oneof"`
1374}
1375
1376type SubordinateConfig_PemIssuerChain struct {
1377	// Required. Contains the PEM certificate chain for the issuers of this
1378	// [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority], but not pem certificate for this CA itself.
1379	PemIssuerChain *SubordinateConfig_SubordinateConfigChain `protobuf:"bytes,2,opt,name=pem_issuer_chain,json=pemIssuerChain,proto3,oneof"`
1380}
1381
1382func (*SubordinateConfig_CertificateAuthority) isSubordinateConfig_SubordinateConfig() {}
1383
1384func (*SubordinateConfig_PemIssuerChain) isSubordinateConfig_SubordinateConfig() {}
1385
1386// A [PublicKey][google.cloud.security.privateca.v1beta1.PublicKey] describes a public key.
1387type PublicKey struct {
1388	state         protoimpl.MessageState
1389	sizeCache     protoimpl.SizeCache
1390	unknownFields protoimpl.UnknownFields
1391
1392	// Required. The type of public key.
1393	Type PublicKey_KeyType `protobuf:"varint,1,opt,name=type,proto3,enum=google.cloud.security.privateca.v1beta1.PublicKey_KeyType" json:"type,omitempty"`
1394	// Required. A public key. Padding and encoding varies by 'KeyType' and is described
1395	// along with the KeyType values.
1396	Key []byte `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
1397}
1398
1399func (x *PublicKey) Reset() {
1400	*x = PublicKey{}
1401	if protoimpl.UnsafeEnabled {
1402		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[7]
1403		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1404		ms.StoreMessageInfo(mi)
1405	}
1406}
1407
1408func (x *PublicKey) String() string {
1409	return protoimpl.X.MessageStringOf(x)
1410}
1411
1412func (*PublicKey) ProtoMessage() {}
1413
1414func (x *PublicKey) ProtoReflect() protoreflect.Message {
1415	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[7]
1416	if protoimpl.UnsafeEnabled && x != nil {
1417		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1418		if ms.LoadMessageInfo() == nil {
1419			ms.StoreMessageInfo(mi)
1420		}
1421		return ms
1422	}
1423	return mi.MessageOf(x)
1424}
1425
1426// Deprecated: Use PublicKey.ProtoReflect.Descriptor instead.
1427func (*PublicKey) Descriptor() ([]byte, []int) {
1428	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{7}
1429}
1430
1431func (x *PublicKey) GetType() PublicKey_KeyType {
1432	if x != nil {
1433		return x.Type
1434	}
1435	return PublicKey_KEY_TYPE_UNSPECIFIED
1436}
1437
1438func (x *PublicKey) GetKey() []byte {
1439	if x != nil {
1440		return x.Key
1441	}
1442	return nil
1443}
1444
1445// A [CertificateConfig][google.cloud.security.privateca.v1beta1.CertificateConfig] describes an X.509 certificate or CSR that is to be
1446// created, as an alternative to using ASN.1.
1447type CertificateConfig struct {
1448	state         protoimpl.MessageState
1449	sizeCache     protoimpl.SizeCache
1450	unknownFields protoimpl.UnknownFields
1451
1452	// Required. Specifies some of the values in a certificate that are related to the
1453	// subject.
1454	SubjectConfig *CertificateConfig_SubjectConfig `protobuf:"bytes,1,opt,name=subject_config,json=subjectConfig,proto3" json:"subject_config,omitempty"`
1455	// Required. Describes how some of the technical fields in a certificate should be
1456	// populated.
1457	ReusableConfig *ReusableConfigWrapper `protobuf:"bytes,2,opt,name=reusable_config,json=reusableConfig,proto3" json:"reusable_config,omitempty"`
1458	// Optional. The public key that corresponds to this config. This is, for example, used
1459	// when issuing [Certificates][google.cloud.security.privateca.v1beta1.Certificate], but not when creating a
1460	// self-signed [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] or [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] CSR.
1461	PublicKey *PublicKey `protobuf:"bytes,3,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
1462}
1463
1464func (x *CertificateConfig) Reset() {
1465	*x = CertificateConfig{}
1466	if protoimpl.UnsafeEnabled {
1467		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[8]
1468		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1469		ms.StoreMessageInfo(mi)
1470	}
1471}
1472
1473func (x *CertificateConfig) String() string {
1474	return protoimpl.X.MessageStringOf(x)
1475}
1476
1477func (*CertificateConfig) ProtoMessage() {}
1478
1479func (x *CertificateConfig) ProtoReflect() protoreflect.Message {
1480	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[8]
1481	if protoimpl.UnsafeEnabled && x != nil {
1482		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1483		if ms.LoadMessageInfo() == nil {
1484			ms.StoreMessageInfo(mi)
1485		}
1486		return ms
1487	}
1488	return mi.MessageOf(x)
1489}
1490
1491// Deprecated: Use CertificateConfig.ProtoReflect.Descriptor instead.
1492func (*CertificateConfig) Descriptor() ([]byte, []int) {
1493	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{8}
1494}
1495
1496func (x *CertificateConfig) GetSubjectConfig() *CertificateConfig_SubjectConfig {
1497	if x != nil {
1498		return x.SubjectConfig
1499	}
1500	return nil
1501}
1502
1503func (x *CertificateConfig) GetReusableConfig() *ReusableConfigWrapper {
1504	if x != nil {
1505		return x.ReusableConfig
1506	}
1507	return nil
1508}
1509
1510func (x *CertificateConfig) GetPublicKey() *PublicKey {
1511	if x != nil {
1512		return x.PublicKey
1513	}
1514	return nil
1515}
1516
1517// A [CertificateDescription][google.cloud.security.privateca.v1beta1.CertificateDescription] describes an X.509 certificate or CSR that has
1518// been issued, as an alternative to using ASN.1 / X.509.
1519type CertificateDescription struct {
1520	state         protoimpl.MessageState
1521	sizeCache     protoimpl.SizeCache
1522	unknownFields protoimpl.UnknownFields
1523
1524	// Describes some of the values in a certificate that are related to the
1525	// subject and lifetime.
1526	SubjectDescription *CertificateDescription_SubjectDescription `protobuf:"bytes,1,opt,name=subject_description,json=subjectDescription,proto3" json:"subject_description,omitempty"`
1527	// Describes some of the technical fields in a certificate.
1528	ConfigValues *ReusableConfigValues `protobuf:"bytes,2,opt,name=config_values,json=configValues,proto3" json:"config_values,omitempty"`
1529	// The public key that corresponds to an issued certificate.
1530	PublicKey *PublicKey `protobuf:"bytes,3,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
1531	// Provides a means of identifiying certificates that contain a particular
1532	// public key, per https://tools.ietf.org/html/rfc5280#section-4.2.1.2.
1533	SubjectKeyId *CertificateDescription_KeyId `protobuf:"bytes,4,opt,name=subject_key_id,json=subjectKeyId,proto3" json:"subject_key_id,omitempty"`
1534	// Identifies the subject_key_id of the parent certificate, per
1535	// https://tools.ietf.org/html/rfc5280#section-4.2.1.1
1536	AuthorityKeyId *CertificateDescription_KeyId `protobuf:"bytes,5,opt,name=authority_key_id,json=authorityKeyId,proto3" json:"authority_key_id,omitempty"`
1537	// Describes a list of locations to obtain CRL information, i.e.
1538	// the DistributionPoint.fullName described by
1539	// https://tools.ietf.org/html/rfc5280#section-4.2.1.13
1540	CrlDistributionPoints []string `protobuf:"bytes,6,rep,name=crl_distribution_points,json=crlDistributionPoints,proto3" json:"crl_distribution_points,omitempty"`
1541	// Describes lists of issuer CA certificate URLs that appear in the
1542	// "Authority Information Access" extension in the certificate.
1543	AiaIssuingCertificateUrls []string `protobuf:"bytes,7,rep,name=aia_issuing_certificate_urls,json=aiaIssuingCertificateUrls,proto3" json:"aia_issuing_certificate_urls,omitempty"`
1544	// The hash of the x.509 certificate.
1545	CertFingerprint *CertificateDescription_CertificateFingerprint `protobuf:"bytes,8,opt,name=cert_fingerprint,json=certFingerprint,proto3" json:"cert_fingerprint,omitempty"`
1546}
1547
1548func (x *CertificateDescription) Reset() {
1549	*x = CertificateDescription{}
1550	if protoimpl.UnsafeEnabled {
1551		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[9]
1552		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1553		ms.StoreMessageInfo(mi)
1554	}
1555}
1556
1557func (x *CertificateDescription) String() string {
1558	return protoimpl.X.MessageStringOf(x)
1559}
1560
1561func (*CertificateDescription) ProtoMessage() {}
1562
1563func (x *CertificateDescription) ProtoReflect() protoreflect.Message {
1564	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[9]
1565	if protoimpl.UnsafeEnabled && x != nil {
1566		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1567		if ms.LoadMessageInfo() == nil {
1568			ms.StoreMessageInfo(mi)
1569		}
1570		return ms
1571	}
1572	return mi.MessageOf(x)
1573}
1574
1575// Deprecated: Use CertificateDescription.ProtoReflect.Descriptor instead.
1576func (*CertificateDescription) Descriptor() ([]byte, []int) {
1577	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{9}
1578}
1579
1580func (x *CertificateDescription) GetSubjectDescription() *CertificateDescription_SubjectDescription {
1581	if x != nil {
1582		return x.SubjectDescription
1583	}
1584	return nil
1585}
1586
1587func (x *CertificateDescription) GetConfigValues() *ReusableConfigValues {
1588	if x != nil {
1589		return x.ConfigValues
1590	}
1591	return nil
1592}
1593
1594func (x *CertificateDescription) GetPublicKey() *PublicKey {
1595	if x != nil {
1596		return x.PublicKey
1597	}
1598	return nil
1599}
1600
1601func (x *CertificateDescription) GetSubjectKeyId() *CertificateDescription_KeyId {
1602	if x != nil {
1603		return x.SubjectKeyId
1604	}
1605	return nil
1606}
1607
1608func (x *CertificateDescription) GetAuthorityKeyId() *CertificateDescription_KeyId {
1609	if x != nil {
1610		return x.AuthorityKeyId
1611	}
1612	return nil
1613}
1614
1615func (x *CertificateDescription) GetCrlDistributionPoints() []string {
1616	if x != nil {
1617		return x.CrlDistributionPoints
1618	}
1619	return nil
1620}
1621
1622func (x *CertificateDescription) GetAiaIssuingCertificateUrls() []string {
1623	if x != nil {
1624		return x.AiaIssuingCertificateUrls
1625	}
1626	return nil
1627}
1628
1629func (x *CertificateDescription) GetCertFingerprint() *CertificateDescription_CertificateFingerprint {
1630	if x != nil {
1631		return x.CertFingerprint
1632	}
1633	return nil
1634}
1635
1636// An [ObjectId][google.cloud.security.privateca.v1beta1.ObjectId] specifies an object identifier (OID). These provide context
1637// and describe types in ASN.1 messages.
1638type ObjectId struct {
1639	state         protoimpl.MessageState
1640	sizeCache     protoimpl.SizeCache
1641	unknownFields protoimpl.UnknownFields
1642
1643	// Required. The parts of an OID path. The most significant parts of the path come
1644	// first.
1645	ObjectIdPath []int32 `protobuf:"varint,1,rep,packed,name=object_id_path,json=objectIdPath,proto3" json:"object_id_path,omitempty"`
1646}
1647
1648func (x *ObjectId) Reset() {
1649	*x = ObjectId{}
1650	if protoimpl.UnsafeEnabled {
1651		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[10]
1652		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1653		ms.StoreMessageInfo(mi)
1654	}
1655}
1656
1657func (x *ObjectId) String() string {
1658	return protoimpl.X.MessageStringOf(x)
1659}
1660
1661func (*ObjectId) ProtoMessage() {}
1662
1663func (x *ObjectId) ProtoReflect() protoreflect.Message {
1664	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[10]
1665	if protoimpl.UnsafeEnabled && x != nil {
1666		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1667		if ms.LoadMessageInfo() == nil {
1668			ms.StoreMessageInfo(mi)
1669		}
1670		return ms
1671	}
1672	return mi.MessageOf(x)
1673}
1674
1675// Deprecated: Use ObjectId.ProtoReflect.Descriptor instead.
1676func (*ObjectId) Descriptor() ([]byte, []int) {
1677	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{10}
1678}
1679
1680func (x *ObjectId) GetObjectIdPath() []int32 {
1681	if x != nil {
1682		return x.ObjectIdPath
1683	}
1684	return nil
1685}
1686
1687// An [X509Extension][google.cloud.security.privateca.v1beta1.X509Extension] specifies an X.509 extension, which may be used in
1688// different parts of X.509 objects like certificates, CSRs, and CRLs.
1689type X509Extension struct {
1690	state         protoimpl.MessageState
1691	sizeCache     protoimpl.SizeCache
1692	unknownFields protoimpl.UnknownFields
1693
1694	// Required. The OID for this X.509 extension.
1695	ObjectId *ObjectId `protobuf:"bytes,1,opt,name=object_id,json=objectId,proto3" json:"object_id,omitempty"`
1696	// Required. Indicates whether or not this extension is critical (i.e., if the client
1697	// does not know how to handle this extension, the client should consider this
1698	// to be an error).
1699	Critical bool `protobuf:"varint,2,opt,name=critical,proto3" json:"critical,omitempty"`
1700	// Required. The value of this X.509 extension.
1701	Value []byte `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
1702}
1703
1704func (x *X509Extension) Reset() {
1705	*x = X509Extension{}
1706	if protoimpl.UnsafeEnabled {
1707		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[11]
1708		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1709		ms.StoreMessageInfo(mi)
1710	}
1711}
1712
1713func (x *X509Extension) String() string {
1714	return protoimpl.X.MessageStringOf(x)
1715}
1716
1717func (*X509Extension) ProtoMessage() {}
1718
1719func (x *X509Extension) ProtoReflect() protoreflect.Message {
1720	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[11]
1721	if protoimpl.UnsafeEnabled && x != nil {
1722		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1723		if ms.LoadMessageInfo() == nil {
1724			ms.StoreMessageInfo(mi)
1725		}
1726		return ms
1727	}
1728	return mi.MessageOf(x)
1729}
1730
1731// Deprecated: Use X509Extension.ProtoReflect.Descriptor instead.
1732func (*X509Extension) Descriptor() ([]byte, []int) {
1733	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{11}
1734}
1735
1736func (x *X509Extension) GetObjectId() *ObjectId {
1737	if x != nil {
1738		return x.ObjectId
1739	}
1740	return nil
1741}
1742
1743func (x *X509Extension) GetCritical() bool {
1744	if x != nil {
1745		return x.Critical
1746	}
1747	return false
1748}
1749
1750func (x *X509Extension) GetValue() []byte {
1751	if x != nil {
1752		return x.Value
1753	}
1754	return nil
1755}
1756
1757// A [KeyUsage][google.cloud.security.privateca.v1beta1.KeyUsage] describes key usage values that may appear in an X.509
1758// certificate.
1759type KeyUsage struct {
1760	state         protoimpl.MessageState
1761	sizeCache     protoimpl.SizeCache
1762	unknownFields protoimpl.UnknownFields
1763
1764	// Describes high-level ways in which a key may be used.
1765	BaseKeyUsage *KeyUsage_KeyUsageOptions `protobuf:"bytes,1,opt,name=base_key_usage,json=baseKeyUsage,proto3" json:"base_key_usage,omitempty"`
1766	// Detailed scenarios in which a key may be used.
1767	ExtendedKeyUsage *KeyUsage_ExtendedKeyUsageOptions `protobuf:"bytes,2,opt,name=extended_key_usage,json=extendedKeyUsage,proto3" json:"extended_key_usage,omitempty"`
1768	// Used to describe extended key usages that are not listed in the
1769	// [KeyUsage.ExtendedKeyUsageOptions][google.cloud.security.privateca.v1beta1.KeyUsage.ExtendedKeyUsageOptions] message.
1770	UnknownExtendedKeyUsages []*ObjectId `protobuf:"bytes,3,rep,name=unknown_extended_key_usages,json=unknownExtendedKeyUsages,proto3" json:"unknown_extended_key_usages,omitempty"`
1771}
1772
1773func (x *KeyUsage) Reset() {
1774	*x = KeyUsage{}
1775	if protoimpl.UnsafeEnabled {
1776		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[12]
1777		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1778		ms.StoreMessageInfo(mi)
1779	}
1780}
1781
1782func (x *KeyUsage) String() string {
1783	return protoimpl.X.MessageStringOf(x)
1784}
1785
1786func (*KeyUsage) ProtoMessage() {}
1787
1788func (x *KeyUsage) ProtoReflect() protoreflect.Message {
1789	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[12]
1790	if protoimpl.UnsafeEnabled && x != nil {
1791		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1792		if ms.LoadMessageInfo() == nil {
1793			ms.StoreMessageInfo(mi)
1794		}
1795		return ms
1796	}
1797	return mi.MessageOf(x)
1798}
1799
1800// Deprecated: Use KeyUsage.ProtoReflect.Descriptor instead.
1801func (*KeyUsage) Descriptor() ([]byte, []int) {
1802	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{12}
1803}
1804
1805func (x *KeyUsage) GetBaseKeyUsage() *KeyUsage_KeyUsageOptions {
1806	if x != nil {
1807		return x.BaseKeyUsage
1808	}
1809	return nil
1810}
1811
1812func (x *KeyUsage) GetExtendedKeyUsage() *KeyUsage_ExtendedKeyUsageOptions {
1813	if x != nil {
1814		return x.ExtendedKeyUsage
1815	}
1816	return nil
1817}
1818
1819func (x *KeyUsage) GetUnknownExtendedKeyUsages() []*ObjectId {
1820	if x != nil {
1821		return x.UnknownExtendedKeyUsages
1822	}
1823	return nil
1824}
1825
1826// [Subject][google.cloud.security.privateca.v1beta1.Subject] describes parts of a distinguished name that, in turn,
1827// describes the subject of the certificate.
1828type Subject struct {
1829	state         protoimpl.MessageState
1830	sizeCache     protoimpl.SizeCache
1831	unknownFields protoimpl.UnknownFields
1832
1833	// The country code of the subject.
1834	CountryCode string `protobuf:"bytes,1,opt,name=country_code,json=countryCode,proto3" json:"country_code,omitempty"`
1835	// The organization of the subject.
1836	Organization string `protobuf:"bytes,2,opt,name=organization,proto3" json:"organization,omitempty"`
1837	// The organizational_unit of the subject.
1838	OrganizationalUnit string `protobuf:"bytes,3,opt,name=organizational_unit,json=organizationalUnit,proto3" json:"organizational_unit,omitempty"`
1839	// The locality or city of the subject.
1840	Locality string `protobuf:"bytes,4,opt,name=locality,proto3" json:"locality,omitempty"`
1841	// The province, territory, or regional state of the subject.
1842	Province string `protobuf:"bytes,5,opt,name=province,proto3" json:"province,omitempty"`
1843	// The street address of the subject.
1844	StreetAddress string `protobuf:"bytes,6,opt,name=street_address,json=streetAddress,proto3" json:"street_address,omitempty"`
1845	// The postal code of the subject.
1846	PostalCode string `protobuf:"bytes,7,opt,name=postal_code,json=postalCode,proto3" json:"postal_code,omitempty"`
1847}
1848
1849func (x *Subject) Reset() {
1850	*x = Subject{}
1851	if protoimpl.UnsafeEnabled {
1852		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[13]
1853		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1854		ms.StoreMessageInfo(mi)
1855	}
1856}
1857
1858func (x *Subject) String() string {
1859	return protoimpl.X.MessageStringOf(x)
1860}
1861
1862func (*Subject) ProtoMessage() {}
1863
1864func (x *Subject) ProtoReflect() protoreflect.Message {
1865	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[13]
1866	if protoimpl.UnsafeEnabled && x != nil {
1867		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1868		if ms.LoadMessageInfo() == nil {
1869			ms.StoreMessageInfo(mi)
1870		}
1871		return ms
1872	}
1873	return mi.MessageOf(x)
1874}
1875
1876// Deprecated: Use Subject.ProtoReflect.Descriptor instead.
1877func (*Subject) Descriptor() ([]byte, []int) {
1878	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{13}
1879}
1880
1881func (x *Subject) GetCountryCode() string {
1882	if x != nil {
1883		return x.CountryCode
1884	}
1885	return ""
1886}
1887
1888func (x *Subject) GetOrganization() string {
1889	if x != nil {
1890		return x.Organization
1891	}
1892	return ""
1893}
1894
1895func (x *Subject) GetOrganizationalUnit() string {
1896	if x != nil {
1897		return x.OrganizationalUnit
1898	}
1899	return ""
1900}
1901
1902func (x *Subject) GetLocality() string {
1903	if x != nil {
1904		return x.Locality
1905	}
1906	return ""
1907}
1908
1909func (x *Subject) GetProvince() string {
1910	if x != nil {
1911		return x.Province
1912	}
1913	return ""
1914}
1915
1916func (x *Subject) GetStreetAddress() string {
1917	if x != nil {
1918		return x.StreetAddress
1919	}
1920	return ""
1921}
1922
1923func (x *Subject) GetPostalCode() string {
1924	if x != nil {
1925		return x.PostalCode
1926	}
1927	return ""
1928}
1929
1930// [SubjectAltNames][google.cloud.security.privateca.v1beta1.SubjectAltNames] corresponds to a more modern way of listing what
1931// the asserted identity is in a certificate (i.e., compared to the "common
1932// name" in the distinguished name).
1933type SubjectAltNames struct {
1934	state         protoimpl.MessageState
1935	sizeCache     protoimpl.SizeCache
1936	unknownFields protoimpl.UnknownFields
1937
1938	// Contains only valid, fully-qualified host names.
1939	DnsNames []string `protobuf:"bytes,1,rep,name=dns_names,json=dnsNames,proto3" json:"dns_names,omitempty"`
1940	// Contains only valid RFC 3986 URIs.
1941	Uris []string `protobuf:"bytes,2,rep,name=uris,proto3" json:"uris,omitempty"`
1942	// Contains only valid RFC 2822 E-mail addresses.
1943	EmailAddresses []string `protobuf:"bytes,3,rep,name=email_addresses,json=emailAddresses,proto3" json:"email_addresses,omitempty"`
1944	// Contains only valid 32-bit IPv4 addresses or RFC 4291 IPv6 addresses.
1945	IpAddresses []string `protobuf:"bytes,4,rep,name=ip_addresses,json=ipAddresses,proto3" json:"ip_addresses,omitempty"`
1946	// Contains additional subject alternative name values.
1947	CustomSans []*X509Extension `protobuf:"bytes,5,rep,name=custom_sans,json=customSans,proto3" json:"custom_sans,omitempty"`
1948}
1949
1950func (x *SubjectAltNames) Reset() {
1951	*x = SubjectAltNames{}
1952	if protoimpl.UnsafeEnabled {
1953		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[14]
1954		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1955		ms.StoreMessageInfo(mi)
1956	}
1957}
1958
1959func (x *SubjectAltNames) String() string {
1960	return protoimpl.X.MessageStringOf(x)
1961}
1962
1963func (*SubjectAltNames) ProtoMessage() {}
1964
1965func (x *SubjectAltNames) ProtoReflect() protoreflect.Message {
1966	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[14]
1967	if protoimpl.UnsafeEnabled && x != nil {
1968		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1969		if ms.LoadMessageInfo() == nil {
1970			ms.StoreMessageInfo(mi)
1971		}
1972		return ms
1973	}
1974	return mi.MessageOf(x)
1975}
1976
1977// Deprecated: Use SubjectAltNames.ProtoReflect.Descriptor instead.
1978func (*SubjectAltNames) Descriptor() ([]byte, []int) {
1979	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{14}
1980}
1981
1982func (x *SubjectAltNames) GetDnsNames() []string {
1983	if x != nil {
1984		return x.DnsNames
1985	}
1986	return nil
1987}
1988
1989func (x *SubjectAltNames) GetUris() []string {
1990	if x != nil {
1991		return x.Uris
1992	}
1993	return nil
1994}
1995
1996func (x *SubjectAltNames) GetEmailAddresses() []string {
1997	if x != nil {
1998		return x.EmailAddresses
1999	}
2000	return nil
2001}
2002
2003func (x *SubjectAltNames) GetIpAddresses() []string {
2004	if x != nil {
2005		return x.IpAddresses
2006	}
2007	return nil
2008}
2009
2010func (x *SubjectAltNames) GetCustomSans() []*X509Extension {
2011	if x != nil {
2012		return x.CustomSans
2013	}
2014	return nil
2015}
2016
2017// Options that affect all certificates issued by a [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority].
2018type CertificateAuthority_IssuingOptions struct {
2019	state         protoimpl.MessageState
2020	sizeCache     protoimpl.SizeCache
2021	unknownFields protoimpl.UnknownFields
2022
2023	// Required. When true, includes a URL to the issuing CA certificate in the
2024	// "authority information access" X.509 extension.
2025	IncludeCaCertUrl bool `protobuf:"varint,1,opt,name=include_ca_cert_url,json=includeCaCertUrl,proto3" json:"include_ca_cert_url,omitempty"`
2026	// Required. When true, includes a URL to the CRL corresponding to certificates
2027	// issued from a [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority].
2028	// CRLs will expire 7 days from their creation. However, we will rebuild
2029	// daily. CRLs are also rebuilt shortly after a certificate is revoked.
2030	IncludeCrlAccessUrl bool `protobuf:"varint,2,opt,name=include_crl_access_url,json=includeCrlAccessUrl,proto3" json:"include_crl_access_url,omitempty"`
2031}
2032
2033func (x *CertificateAuthority_IssuingOptions) Reset() {
2034	*x = CertificateAuthority_IssuingOptions{}
2035	if protoimpl.UnsafeEnabled {
2036		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[15]
2037		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2038		ms.StoreMessageInfo(mi)
2039	}
2040}
2041
2042func (x *CertificateAuthority_IssuingOptions) String() string {
2043	return protoimpl.X.MessageStringOf(x)
2044}
2045
2046func (*CertificateAuthority_IssuingOptions) ProtoMessage() {}
2047
2048func (x *CertificateAuthority_IssuingOptions) ProtoReflect() protoreflect.Message {
2049	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[15]
2050	if protoimpl.UnsafeEnabled && x != nil {
2051		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2052		if ms.LoadMessageInfo() == nil {
2053			ms.StoreMessageInfo(mi)
2054		}
2055		return ms
2056	}
2057	return mi.MessageOf(x)
2058}
2059
2060// Deprecated: Use CertificateAuthority_IssuingOptions.ProtoReflect.Descriptor instead.
2061func (*CertificateAuthority_IssuingOptions) Descriptor() ([]byte, []int) {
2062	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0, 0}
2063}
2064
2065func (x *CertificateAuthority_IssuingOptions) GetIncludeCaCertUrl() bool {
2066	if x != nil {
2067		return x.IncludeCaCertUrl
2068	}
2069	return false
2070}
2071
2072func (x *CertificateAuthority_IssuingOptions) GetIncludeCrlAccessUrl() bool {
2073	if x != nil {
2074		return x.IncludeCrlAccessUrl
2075	}
2076	return false
2077}
2078
2079// The issuing policy for a [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority].
2080// [Certificates][google.cloud.security.privateca.v1beta1.Certificate] will not be successfully issued from this
2081// [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] if they violate the policy.
2082type CertificateAuthority_CertificateAuthorityPolicy struct {
2083	state         protoimpl.MessageState
2084	sizeCache     protoimpl.SizeCache
2085	unknownFields protoimpl.UnknownFields
2086
2087	// Allowed configurations or a single configuration for all issued
2088	// certificates.
2089	//
2090	// Types that are assignable to ConfigPolicy:
2091	//	*CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList_
2092	//	*CertificateAuthority_CertificateAuthorityPolicy_OverwriteConfigValues
2093	ConfigPolicy isCertificateAuthority_CertificateAuthorityPolicy_ConfigPolicy `protobuf_oneof:"config_policy"`
2094	// Optional. If any [Subject][google.cloud.security.privateca.v1beta1.Subject] is specified here, then all
2095	// [Certificates][google.cloud.security.privateca.v1beta1.Certificate] issued by the [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] must
2096	// match at least one listed [Subject][google.cloud.security.privateca.v1beta1.Subject]. If a [Subject][google.cloud.security.privateca.v1beta1.Subject] has an empty
2097	// field, any value will be allowed for that field.
2098	AllowedLocationsAndOrganizations []*Subject `protobuf:"bytes,3,rep,name=allowed_locations_and_organizations,json=allowedLocationsAndOrganizations,proto3" json:"allowed_locations_and_organizations,omitempty"`
2099	// Optional. If any value is specified here, then all
2100	// [Certificates][google.cloud.security.privateca.v1beta1.Certificate] issued by the [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] must
2101	// match at least one listed value. If no value is specified, all values
2102	// will be allowed for this fied. Glob patterns are also supported.
2103	AllowedCommonNames []string `protobuf:"bytes,4,rep,name=allowed_common_names,json=allowedCommonNames,proto3" json:"allowed_common_names,omitempty"`
2104	// Optional. If a [AllowedSubjectAltNames][google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.AllowedSubjectAltNames] is specified here, then all
2105	// [Certificates][google.cloud.security.privateca.v1beta1.Certificate] issued by the [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] must
2106	// match [AllowedSubjectAltNames][google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.AllowedSubjectAltNames]. If no value or an empty value
2107	// is specified, any value will be allowed for the [SubjectAltNames][google.cloud.security.privateca.v1beta1.SubjectAltNames]
2108	// field.
2109	AllowedSans *CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames `protobuf:"bytes,5,opt,name=allowed_sans,json=allowedSans,proto3" json:"allowed_sans,omitempty"`
2110	// Optional. The maximum lifetime allowed by the [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]. Note that
2111	// if the any part if the issuing chain expires before a [Certificate][google.cloud.security.privateca.v1beta1.Certificate]'s
2112	// requested maximum_lifetime, the effective lifetime will be explicitly
2113	// truncated.
2114	MaximumLifetime *durationpb.Duration `protobuf:"bytes,6,opt,name=maximum_lifetime,json=maximumLifetime,proto3" json:"maximum_lifetime,omitempty"`
2115	// Optional. If specified, then only methods allowed in the [IssuanceModes][google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.IssuanceModes] may be
2116	// used to issue [Certificates][google.cloud.security.privateca.v1beta1.Certificate].
2117	AllowedIssuanceModes *CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes `protobuf:"bytes,8,opt,name=allowed_issuance_modes,json=allowedIssuanceModes,proto3" json:"allowed_issuance_modes,omitempty"`
2118}
2119
2120func (x *CertificateAuthority_CertificateAuthorityPolicy) Reset() {
2121	*x = CertificateAuthority_CertificateAuthorityPolicy{}
2122	if protoimpl.UnsafeEnabled {
2123		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[16]
2124		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2125		ms.StoreMessageInfo(mi)
2126	}
2127}
2128
2129func (x *CertificateAuthority_CertificateAuthorityPolicy) String() string {
2130	return protoimpl.X.MessageStringOf(x)
2131}
2132
2133func (*CertificateAuthority_CertificateAuthorityPolicy) ProtoMessage() {}
2134
2135func (x *CertificateAuthority_CertificateAuthorityPolicy) ProtoReflect() protoreflect.Message {
2136	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[16]
2137	if protoimpl.UnsafeEnabled && x != nil {
2138		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2139		if ms.LoadMessageInfo() == nil {
2140			ms.StoreMessageInfo(mi)
2141		}
2142		return ms
2143	}
2144	return mi.MessageOf(x)
2145}
2146
2147// Deprecated: Use CertificateAuthority_CertificateAuthorityPolicy.ProtoReflect.Descriptor instead.
2148func (*CertificateAuthority_CertificateAuthorityPolicy) Descriptor() ([]byte, []int) {
2149	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0, 1}
2150}
2151
2152func (m *CertificateAuthority_CertificateAuthorityPolicy) GetConfigPolicy() isCertificateAuthority_CertificateAuthorityPolicy_ConfigPolicy {
2153	if m != nil {
2154		return m.ConfigPolicy
2155	}
2156	return nil
2157}
2158
2159func (x *CertificateAuthority_CertificateAuthorityPolicy) GetAllowedConfigList() *CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList {
2160	if x, ok := x.GetConfigPolicy().(*CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList_); ok {
2161		return x.AllowedConfigList
2162	}
2163	return nil
2164}
2165
2166func (x *CertificateAuthority_CertificateAuthorityPolicy) GetOverwriteConfigValues() *ReusableConfigWrapper {
2167	if x, ok := x.GetConfigPolicy().(*CertificateAuthority_CertificateAuthorityPolicy_OverwriteConfigValues); ok {
2168		return x.OverwriteConfigValues
2169	}
2170	return nil
2171}
2172
2173func (x *CertificateAuthority_CertificateAuthorityPolicy) GetAllowedLocationsAndOrganizations() []*Subject {
2174	if x != nil {
2175		return x.AllowedLocationsAndOrganizations
2176	}
2177	return nil
2178}
2179
2180func (x *CertificateAuthority_CertificateAuthorityPolicy) GetAllowedCommonNames() []string {
2181	if x != nil {
2182		return x.AllowedCommonNames
2183	}
2184	return nil
2185}
2186
2187func (x *CertificateAuthority_CertificateAuthorityPolicy) GetAllowedSans() *CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames {
2188	if x != nil {
2189		return x.AllowedSans
2190	}
2191	return nil
2192}
2193
2194func (x *CertificateAuthority_CertificateAuthorityPolicy) GetMaximumLifetime() *durationpb.Duration {
2195	if x != nil {
2196		return x.MaximumLifetime
2197	}
2198	return nil
2199}
2200
2201func (x *CertificateAuthority_CertificateAuthorityPolicy) GetAllowedIssuanceModes() *CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes {
2202	if x != nil {
2203		return x.AllowedIssuanceModes
2204	}
2205	return nil
2206}
2207
2208type isCertificateAuthority_CertificateAuthorityPolicy_ConfigPolicy interface {
2209	isCertificateAuthority_CertificateAuthorityPolicy_ConfigPolicy()
2210}
2211
2212type CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList_ struct {
2213	// Optional. All [Certificates][google.cloud.security.privateca.v1beta1.Certificate] issued by the [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]
2214	// must match at least one listed [ReusableConfigWrapper][google.cloud.security.privateca.v1beta1.ReusableConfigWrapper] in the list.
2215	AllowedConfigList *CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList `protobuf:"bytes,1,opt,name=allowed_config_list,json=allowedConfigList,proto3,oneof"`
2216}
2217
2218type CertificateAuthority_CertificateAuthorityPolicy_OverwriteConfigValues struct {
2219	// Optional. All [Certificates][google.cloud.security.privateca.v1beta1.Certificate] issued by the [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]
2220	// will use the provided configuration values, overwriting any requested
2221	// configuration values.
2222	OverwriteConfigValues *ReusableConfigWrapper `protobuf:"bytes,2,opt,name=overwrite_config_values,json=overwriteConfigValues,proto3,oneof"`
2223}
2224
2225func (*CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList_) isCertificateAuthority_CertificateAuthorityPolicy_ConfigPolicy() {
2226}
2227
2228func (*CertificateAuthority_CertificateAuthorityPolicy_OverwriteConfigValues) isCertificateAuthority_CertificateAuthorityPolicy_ConfigPolicy() {
2229}
2230
2231// URLs where a [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] will publish content.
2232type CertificateAuthority_AccessUrls struct {
2233	state         protoimpl.MessageState
2234	sizeCache     protoimpl.SizeCache
2235	unknownFields protoimpl.UnknownFields
2236
2237	// The URL where this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]'s CA certificate is
2238	// published. This will only be set for CAs that have been activated.
2239	CaCertificateAccessUrl string `protobuf:"bytes,1,opt,name=ca_certificate_access_url,json=caCertificateAccessUrl,proto3" json:"ca_certificate_access_url,omitempty"`
2240	// The URL where this [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]'s CRLs are published. This
2241	// will only be set for CAs that have been activated.
2242	CrlAccessUrl string `protobuf:"bytes,2,opt,name=crl_access_url,json=crlAccessUrl,proto3" json:"crl_access_url,omitempty"`
2243}
2244
2245func (x *CertificateAuthority_AccessUrls) Reset() {
2246	*x = CertificateAuthority_AccessUrls{}
2247	if protoimpl.UnsafeEnabled {
2248		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[17]
2249		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2250		ms.StoreMessageInfo(mi)
2251	}
2252}
2253
2254func (x *CertificateAuthority_AccessUrls) String() string {
2255	return protoimpl.X.MessageStringOf(x)
2256}
2257
2258func (*CertificateAuthority_AccessUrls) ProtoMessage() {}
2259
2260func (x *CertificateAuthority_AccessUrls) ProtoReflect() protoreflect.Message {
2261	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[17]
2262	if protoimpl.UnsafeEnabled && x != nil {
2263		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2264		if ms.LoadMessageInfo() == nil {
2265			ms.StoreMessageInfo(mi)
2266		}
2267		return ms
2268	}
2269	return mi.MessageOf(x)
2270}
2271
2272// Deprecated: Use CertificateAuthority_AccessUrls.ProtoReflect.Descriptor instead.
2273func (*CertificateAuthority_AccessUrls) Descriptor() ([]byte, []int) {
2274	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0, 2}
2275}
2276
2277func (x *CertificateAuthority_AccessUrls) GetCaCertificateAccessUrl() string {
2278	if x != nil {
2279		return x.CaCertificateAccessUrl
2280	}
2281	return ""
2282}
2283
2284func (x *CertificateAuthority_AccessUrls) GetCrlAccessUrl() string {
2285	if x != nil {
2286		return x.CrlAccessUrl
2287	}
2288	return ""
2289}
2290
2291// A Cloud KMS key configuration that a [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] will use.
2292type CertificateAuthority_KeyVersionSpec struct {
2293	state         protoimpl.MessageState
2294	sizeCache     protoimpl.SizeCache
2295	unknownFields protoimpl.UnknownFields
2296
2297	// Types that are assignable to KeyVersion:
2298	//	*CertificateAuthority_KeyVersionSpec_CloudKmsKeyVersion
2299	//	*CertificateAuthority_KeyVersionSpec_Algorithm
2300	KeyVersion isCertificateAuthority_KeyVersionSpec_KeyVersion `protobuf_oneof:"KeyVersion"`
2301}
2302
2303func (x *CertificateAuthority_KeyVersionSpec) Reset() {
2304	*x = CertificateAuthority_KeyVersionSpec{}
2305	if protoimpl.UnsafeEnabled {
2306		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[18]
2307		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2308		ms.StoreMessageInfo(mi)
2309	}
2310}
2311
2312func (x *CertificateAuthority_KeyVersionSpec) String() string {
2313	return protoimpl.X.MessageStringOf(x)
2314}
2315
2316func (*CertificateAuthority_KeyVersionSpec) ProtoMessage() {}
2317
2318func (x *CertificateAuthority_KeyVersionSpec) ProtoReflect() protoreflect.Message {
2319	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[18]
2320	if protoimpl.UnsafeEnabled && x != nil {
2321		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2322		if ms.LoadMessageInfo() == nil {
2323			ms.StoreMessageInfo(mi)
2324		}
2325		return ms
2326	}
2327	return mi.MessageOf(x)
2328}
2329
2330// Deprecated: Use CertificateAuthority_KeyVersionSpec.ProtoReflect.Descriptor instead.
2331func (*CertificateAuthority_KeyVersionSpec) Descriptor() ([]byte, []int) {
2332	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0, 3}
2333}
2334
2335func (m *CertificateAuthority_KeyVersionSpec) GetKeyVersion() isCertificateAuthority_KeyVersionSpec_KeyVersion {
2336	if m != nil {
2337		return m.KeyVersion
2338	}
2339	return nil
2340}
2341
2342func (x *CertificateAuthority_KeyVersionSpec) GetCloudKmsKeyVersion() string {
2343	if x, ok := x.GetKeyVersion().(*CertificateAuthority_KeyVersionSpec_CloudKmsKeyVersion); ok {
2344		return x.CloudKmsKeyVersion
2345	}
2346	return ""
2347}
2348
2349func (x *CertificateAuthority_KeyVersionSpec) GetAlgorithm() CertificateAuthority_SignHashAlgorithm {
2350	if x, ok := x.GetKeyVersion().(*CertificateAuthority_KeyVersionSpec_Algorithm); ok {
2351		return x.Algorithm
2352	}
2353	return CertificateAuthority_SIGN_HASH_ALGORITHM_UNSPECIFIED
2354}
2355
2356type isCertificateAuthority_KeyVersionSpec_KeyVersion interface {
2357	isCertificateAuthority_KeyVersionSpec_KeyVersion()
2358}
2359
2360type CertificateAuthority_KeyVersionSpec_CloudKmsKeyVersion struct {
2361	// Required. The resource name for an existing Cloud KMS CryptoKeyVersion in the
2362	// format
2363	// `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
2364	// This option enables full flexibility in the key's capabilities and
2365	// properties.
2366	CloudKmsKeyVersion string `protobuf:"bytes,1,opt,name=cloud_kms_key_version,json=cloudKmsKeyVersion,proto3,oneof"`
2367}
2368
2369type CertificateAuthority_KeyVersionSpec_Algorithm struct {
2370	// Required. The algorithm to use for creating a managed Cloud KMS key for a for a
2371	// simplified experience. All managed keys will be have their
2372	// [ProtectionLevel][google.cloud.kms.v1.ProtectionLevel] as `HSM`.
2373	Algorithm CertificateAuthority_SignHashAlgorithm `protobuf:"varint,2,opt,name=algorithm,proto3,enum=google.cloud.security.privateca.v1beta1.CertificateAuthority_SignHashAlgorithm,oneof"`
2374}
2375
2376func (*CertificateAuthority_KeyVersionSpec_CloudKmsKeyVersion) isCertificateAuthority_KeyVersionSpec_KeyVersion() {
2377}
2378
2379func (*CertificateAuthority_KeyVersionSpec_Algorithm) isCertificateAuthority_KeyVersionSpec_KeyVersion() {
2380}
2381
2382type CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList struct {
2383	state         protoimpl.MessageState
2384	sizeCache     protoimpl.SizeCache
2385	unknownFields protoimpl.UnknownFields
2386
2387	// Required. All [Certificates][google.cloud.security.privateca.v1beta1.Certificate] issued by the [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority]
2388	// must match at least one listed [ReusableConfigWrapper][google.cloud.security.privateca.v1beta1.ReusableConfigWrapper]. If a
2389	// [ReusableConfigWrapper][google.cloud.security.privateca.v1beta1.ReusableConfigWrapper] has an empty field, any value will be
2390	// allowed for that field.
2391	AllowedConfigValues []*ReusableConfigWrapper `protobuf:"bytes,1,rep,name=allowed_config_values,json=allowedConfigValues,proto3" json:"allowed_config_values,omitempty"`
2392}
2393
2394func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList) Reset() {
2395	*x = CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList{}
2396	if protoimpl.UnsafeEnabled {
2397		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[20]
2398		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2399		ms.StoreMessageInfo(mi)
2400	}
2401}
2402
2403func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList) String() string {
2404	return protoimpl.X.MessageStringOf(x)
2405}
2406
2407func (*CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList) ProtoMessage() {}
2408
2409func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList) ProtoReflect() protoreflect.Message {
2410	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[20]
2411	if protoimpl.UnsafeEnabled && x != nil {
2412		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2413		if ms.LoadMessageInfo() == nil {
2414			ms.StoreMessageInfo(mi)
2415		}
2416		return ms
2417	}
2418	return mi.MessageOf(x)
2419}
2420
2421// Deprecated: Use CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList.ProtoReflect.Descriptor instead.
2422func (*CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList) Descriptor() ([]byte, []int) {
2423	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0, 1, 0}
2424}
2425
2426func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList) GetAllowedConfigValues() []*ReusableConfigWrapper {
2427	if x != nil {
2428		return x.AllowedConfigValues
2429	}
2430	return nil
2431}
2432
2433// [AllowedSubjectAltNames][google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.AllowedSubjectAltNames] specifies the allowed values for
2434// [SubjectAltNames][google.cloud.security.privateca.v1beta1.SubjectAltNames] by the [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority] when issuing
2435// [Certificates][google.cloud.security.privateca.v1beta1.Certificate].
2436type CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames struct {
2437	state         protoimpl.MessageState
2438	sizeCache     protoimpl.SizeCache
2439	unknownFields protoimpl.UnknownFields
2440
2441	// Optional. Contains valid, fully-qualified host names. Glob patterns are also
2442	// supported. To allow an explicit wildcard certificate, escape with
2443	// backlash (i.e. "\*").
2444	// E.g. for globbed entries: '*bar.com' will allow foo.bar.com, but not
2445	// *.bar.com, unless the [allow_globbing_dns_wildcards][google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.AllowedSubjectAltNames.allow_globbing_dns_wildcards] field is set.
2446	// E.g. for wildcard entries: '\*.bar.com' will allow '*.bar.com', but not
2447	// 'foo.bar.com'.
2448	AllowedDnsNames []string `protobuf:"bytes,1,rep,name=allowed_dns_names,json=allowedDnsNames,proto3" json:"allowed_dns_names,omitempty"`
2449	// Optional. Contains valid RFC 3986 URIs. Glob patterns are also supported. To
2450	// match across path seperators (i.e. '/') use the double star glob
2451	// pattern (i.e. '**').
2452	AllowedUris []string `protobuf:"bytes,2,rep,name=allowed_uris,json=allowedUris,proto3" json:"allowed_uris,omitempty"`
2453	// Optional. Contains valid RFC 2822 E-mail addresses. Glob patterns are also
2454	// supported.
2455	AllowedEmailAddresses []string `protobuf:"bytes,3,rep,name=allowed_email_addresses,json=allowedEmailAddresses,proto3" json:"allowed_email_addresses,omitempty"`
2456	// Optional. Contains valid 32-bit IPv4 addresses and subnet ranges or RFC 4291 IPv6
2457	// addresses and subnet ranges. Subnet ranges are specified using the
2458	// '/' notation (e.g. 10.0.0.0/8, 2001:700:300:1800::/64). Glob patterns
2459	// are supported only for ip address entries (i.e. not for subnet ranges).
2460	AllowedIps []string `protobuf:"bytes,4,rep,name=allowed_ips,json=allowedIps,proto3" json:"allowed_ips,omitempty"`
2461	// Optional. Specifies if glob patterns used for [allowed_dns_names][google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.AllowedSubjectAltNames.allowed_dns_names] allows
2462	// wildcard certificates.
2463	AllowGlobbingDnsWildcards bool `protobuf:"varint,5,opt,name=allow_globbing_dns_wildcards,json=allowGlobbingDnsWildcards,proto3" json:"allow_globbing_dns_wildcards,omitempty"`
2464	// Optional. Specifies if to allow custom X509Extension values.
2465	AllowCustomSans bool `protobuf:"varint,6,opt,name=allow_custom_sans,json=allowCustomSans,proto3" json:"allow_custom_sans,omitempty"`
2466}
2467
2468func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames) Reset() {
2469	*x = CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames{}
2470	if protoimpl.UnsafeEnabled {
2471		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[21]
2472		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2473		ms.StoreMessageInfo(mi)
2474	}
2475}
2476
2477func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames) String() string {
2478	return protoimpl.X.MessageStringOf(x)
2479}
2480
2481func (*CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames) ProtoMessage() {}
2482
2483func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames) ProtoReflect() protoreflect.Message {
2484	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[21]
2485	if protoimpl.UnsafeEnabled && x != nil {
2486		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2487		if ms.LoadMessageInfo() == nil {
2488			ms.StoreMessageInfo(mi)
2489		}
2490		return ms
2491	}
2492	return mi.MessageOf(x)
2493}
2494
2495// Deprecated: Use CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames.ProtoReflect.Descriptor instead.
2496func (*CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames) Descriptor() ([]byte, []int) {
2497	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0, 1, 1}
2498}
2499
2500func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames) GetAllowedDnsNames() []string {
2501	if x != nil {
2502		return x.AllowedDnsNames
2503	}
2504	return nil
2505}
2506
2507func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames) GetAllowedUris() []string {
2508	if x != nil {
2509		return x.AllowedUris
2510	}
2511	return nil
2512}
2513
2514func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames) GetAllowedEmailAddresses() []string {
2515	if x != nil {
2516		return x.AllowedEmailAddresses
2517	}
2518	return nil
2519}
2520
2521func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames) GetAllowedIps() []string {
2522	if x != nil {
2523		return x.AllowedIps
2524	}
2525	return nil
2526}
2527
2528func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames) GetAllowGlobbingDnsWildcards() bool {
2529	if x != nil {
2530		return x.AllowGlobbingDnsWildcards
2531	}
2532	return false
2533}
2534
2535func (x *CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames) GetAllowCustomSans() bool {
2536	if x != nil {
2537		return x.AllowCustomSans
2538	}
2539	return false
2540}
2541
2542// [IssuanceModes][google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.IssuanceModes] specifies the allowed ways in which
2543// [Certificates][google.cloud.security.privateca.v1beta1.Certificate] may be requested from this
2544// [CertificateAuthority][google.cloud.security.privateca.v1beta1.CertificateAuthority].
2545type CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes struct {
2546	state         protoimpl.MessageState
2547	sizeCache     protoimpl.SizeCache
2548	unknownFields protoimpl.UnknownFields
2549
2550	// Required. When true, allows callers to create [Certificates][google.cloud.security.privateca.v1beta1.Certificate] by
2551	// specifying a CSR.
2552	AllowCsrBasedIssuance bool `protobuf:"varint,1,opt,name=allow_csr_based_issuance,json=allowCsrBasedIssuance,proto3" json:"allow_csr_based_issuance,omitempty"`
2553	// Required. When true, allows callers to create [Certificates][google.cloud.security.privateca.v1beta1.Certificate] by
2554	// specifying a [CertificateConfig][google.cloud.security.privateca.v1beta1.CertificateConfig].
2555	AllowConfigBasedIssuance bool `protobuf:"varint,2,opt,name=allow_config_based_issuance,json=allowConfigBasedIssuance,proto3" json:"allow_config_based_issuance,omitempty"`
2556}
2557
2558func (x *CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes) Reset() {
2559	*x = CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes{}
2560	if protoimpl.UnsafeEnabled {
2561		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[22]
2562		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2563		ms.StoreMessageInfo(mi)
2564	}
2565}
2566
2567func (x *CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes) String() string {
2568	return protoimpl.X.MessageStringOf(x)
2569}
2570
2571func (*CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes) ProtoMessage() {}
2572
2573func (x *CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes) ProtoReflect() protoreflect.Message {
2574	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[22]
2575	if protoimpl.UnsafeEnabled && x != nil {
2576		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2577		if ms.LoadMessageInfo() == nil {
2578			ms.StoreMessageInfo(mi)
2579		}
2580		return ms
2581	}
2582	return mi.MessageOf(x)
2583}
2584
2585// Deprecated: Use CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes.ProtoReflect.Descriptor instead.
2586func (*CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes) Descriptor() ([]byte, []int) {
2587	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{0, 1, 2}
2588}
2589
2590func (x *CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes) GetAllowCsrBasedIssuance() bool {
2591	if x != nil {
2592		return x.AllowCsrBasedIssuance
2593	}
2594	return false
2595}
2596
2597func (x *CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes) GetAllowConfigBasedIssuance() bool {
2598	if x != nil {
2599		return x.AllowConfigBasedIssuance
2600	}
2601	return false
2602}
2603
2604// Describes a revoked [Certificate][google.cloud.security.privateca.v1beta1.Certificate].
2605type CertificateRevocationList_RevokedCertificate struct {
2606	state         protoimpl.MessageState
2607	sizeCache     protoimpl.SizeCache
2608	unknownFields protoimpl.UnknownFields
2609
2610	// The resource path for the [Certificate][google.cloud.security.privateca.v1beta1.Certificate] in the format
2611	// `projects/*/locations/*/certificateAuthorities/*/certificates/*`.
2612	Certificate string `protobuf:"bytes,1,opt,name=certificate,proto3" json:"certificate,omitempty"`
2613	// The serial number of the [Certificate][google.cloud.security.privateca.v1beta1.Certificate].
2614	HexSerialNumber string `protobuf:"bytes,2,opt,name=hex_serial_number,json=hexSerialNumber,proto3" json:"hex_serial_number,omitempty"`
2615	// The reason the [Certificate][google.cloud.security.privateca.v1beta1.Certificate] was revoked.
2616	RevocationReason RevocationReason `protobuf:"varint,3,opt,name=revocation_reason,json=revocationReason,proto3,enum=google.cloud.security.privateca.v1beta1.RevocationReason" json:"revocation_reason,omitempty"`
2617}
2618
2619func (x *CertificateRevocationList_RevokedCertificate) Reset() {
2620	*x = CertificateRevocationList_RevokedCertificate{}
2621	if protoimpl.UnsafeEnabled {
2622		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[23]
2623		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2624		ms.StoreMessageInfo(mi)
2625	}
2626}
2627
2628func (x *CertificateRevocationList_RevokedCertificate) String() string {
2629	return protoimpl.X.MessageStringOf(x)
2630}
2631
2632func (*CertificateRevocationList_RevokedCertificate) ProtoMessage() {}
2633
2634func (x *CertificateRevocationList_RevokedCertificate) ProtoReflect() protoreflect.Message {
2635	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[23]
2636	if protoimpl.UnsafeEnabled && x != nil {
2637		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2638		if ms.LoadMessageInfo() == nil {
2639			ms.StoreMessageInfo(mi)
2640		}
2641		return ms
2642	}
2643	return mi.MessageOf(x)
2644}
2645
2646// Deprecated: Use CertificateRevocationList_RevokedCertificate.ProtoReflect.Descriptor instead.
2647func (*CertificateRevocationList_RevokedCertificate) Descriptor() ([]byte, []int) {
2648	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{1, 0}
2649}
2650
2651func (x *CertificateRevocationList_RevokedCertificate) GetCertificate() string {
2652	if x != nil {
2653		return x.Certificate
2654	}
2655	return ""
2656}
2657
2658func (x *CertificateRevocationList_RevokedCertificate) GetHexSerialNumber() string {
2659	if x != nil {
2660		return x.HexSerialNumber
2661	}
2662	return ""
2663}
2664
2665func (x *CertificateRevocationList_RevokedCertificate) GetRevocationReason() RevocationReason {
2666	if x != nil {
2667		return x.RevocationReason
2668	}
2669	return RevocationReason_REVOCATION_REASON_UNSPECIFIED
2670}
2671
2672// Describes fields that are relavent to the revocation of a [Certificate][google.cloud.security.privateca.v1beta1.Certificate].
2673type Certificate_RevocationDetails struct {
2674	state         protoimpl.MessageState
2675	sizeCache     protoimpl.SizeCache
2676	unknownFields protoimpl.UnknownFields
2677
2678	// Indicates why a [Certificate][google.cloud.security.privateca.v1beta1.Certificate] was revoked.
2679	RevocationState RevocationReason `protobuf:"varint,1,opt,name=revocation_state,json=revocationState,proto3,enum=google.cloud.security.privateca.v1beta1.RevocationReason" json:"revocation_state,omitempty"`
2680	// The time at which this [Certificate][google.cloud.security.privateca.v1beta1.Certificate] was revoked.
2681	RevocationTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=revocation_time,json=revocationTime,proto3" json:"revocation_time,omitempty"`
2682}
2683
2684func (x *Certificate_RevocationDetails) Reset() {
2685	*x = Certificate_RevocationDetails{}
2686	if protoimpl.UnsafeEnabled {
2687		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[25]
2688		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2689		ms.StoreMessageInfo(mi)
2690	}
2691}
2692
2693func (x *Certificate_RevocationDetails) String() string {
2694	return protoimpl.X.MessageStringOf(x)
2695}
2696
2697func (*Certificate_RevocationDetails) ProtoMessage() {}
2698
2699func (x *Certificate_RevocationDetails) ProtoReflect() protoreflect.Message {
2700	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[25]
2701	if protoimpl.UnsafeEnabled && x != nil {
2702		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2703		if ms.LoadMessageInfo() == nil {
2704			ms.StoreMessageInfo(mi)
2705		}
2706		return ms
2707	}
2708	return mi.MessageOf(x)
2709}
2710
2711// Deprecated: Use Certificate_RevocationDetails.ProtoReflect.Descriptor instead.
2712func (*Certificate_RevocationDetails) Descriptor() ([]byte, []int) {
2713	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{2, 0}
2714}
2715
2716func (x *Certificate_RevocationDetails) GetRevocationState() RevocationReason {
2717	if x != nil {
2718		return x.RevocationState
2719	}
2720	return RevocationReason_REVOCATION_REASON_UNSPECIFIED
2721}
2722
2723func (x *Certificate_RevocationDetails) GetRevocationTime() *timestamppb.Timestamp {
2724	if x != nil {
2725		return x.RevocationTime
2726	}
2727	return nil
2728}
2729
2730// Describes values that are relevant in a CA certificate.
2731type ReusableConfigValues_CaOptions struct {
2732	state         protoimpl.MessageState
2733	sizeCache     protoimpl.SizeCache
2734	unknownFields protoimpl.UnknownFields
2735
2736	// Optional. Refers to the "CA" X.509 extension, which is a boolean value. When this
2737	// value is missing, the extension will be omitted from the CA certificate.
2738	IsCa *wrapperspb.BoolValue `protobuf:"bytes,1,opt,name=is_ca,json=isCa,proto3" json:"is_ca,omitempty"`
2739	// Optional. Refers to the path length restriction X.509 extension. For a CA
2740	// certificate, this value describes the depth of subordinate CA
2741	// certificates that are allowed.
2742	// If this value is less than 0, the request will fail.
2743	// If this value is missing, the max path length will be omitted from the
2744	// CA certificate.
2745	MaxIssuerPathLength *wrapperspb.Int32Value `protobuf:"bytes,2,opt,name=max_issuer_path_length,json=maxIssuerPathLength,proto3" json:"max_issuer_path_length,omitempty"`
2746}
2747
2748func (x *ReusableConfigValues_CaOptions) Reset() {
2749	*x = ReusableConfigValues_CaOptions{}
2750	if protoimpl.UnsafeEnabled {
2751		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[28]
2752		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2753		ms.StoreMessageInfo(mi)
2754	}
2755}
2756
2757func (x *ReusableConfigValues_CaOptions) String() string {
2758	return protoimpl.X.MessageStringOf(x)
2759}
2760
2761func (*ReusableConfigValues_CaOptions) ProtoMessage() {}
2762
2763func (x *ReusableConfigValues_CaOptions) ProtoReflect() protoreflect.Message {
2764	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[28]
2765	if protoimpl.UnsafeEnabled && x != nil {
2766		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2767		if ms.LoadMessageInfo() == nil {
2768			ms.StoreMessageInfo(mi)
2769		}
2770		return ms
2771	}
2772	return mi.MessageOf(x)
2773}
2774
2775// Deprecated: Use ReusableConfigValues_CaOptions.ProtoReflect.Descriptor instead.
2776func (*ReusableConfigValues_CaOptions) Descriptor() ([]byte, []int) {
2777	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{4, 0}
2778}
2779
2780func (x *ReusableConfigValues_CaOptions) GetIsCa() *wrapperspb.BoolValue {
2781	if x != nil {
2782		return x.IsCa
2783	}
2784	return nil
2785}
2786
2787func (x *ReusableConfigValues_CaOptions) GetMaxIssuerPathLength() *wrapperspb.Int32Value {
2788	if x != nil {
2789		return x.MaxIssuerPathLength
2790	}
2791	return nil
2792}
2793
2794// This message describes a subordinate CA's issuer certificate chain. This
2795// wrapper exists for compatibility reasons.
2796type SubordinateConfig_SubordinateConfigChain struct {
2797	state         protoimpl.MessageState
2798	sizeCache     protoimpl.SizeCache
2799	unknownFields protoimpl.UnknownFields
2800
2801	// Required. Expected to be in leaf-to-root order according to RFC 5246.
2802	PemCertificates []string `protobuf:"bytes,1,rep,name=pem_certificates,json=pemCertificates,proto3" json:"pem_certificates,omitempty"`
2803}
2804
2805func (x *SubordinateConfig_SubordinateConfigChain) Reset() {
2806	*x = SubordinateConfig_SubordinateConfigChain{}
2807	if protoimpl.UnsafeEnabled {
2808		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[29]
2809		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2810		ms.StoreMessageInfo(mi)
2811	}
2812}
2813
2814func (x *SubordinateConfig_SubordinateConfigChain) String() string {
2815	return protoimpl.X.MessageStringOf(x)
2816}
2817
2818func (*SubordinateConfig_SubordinateConfigChain) ProtoMessage() {}
2819
2820func (x *SubordinateConfig_SubordinateConfigChain) ProtoReflect() protoreflect.Message {
2821	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[29]
2822	if protoimpl.UnsafeEnabled && x != nil {
2823		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2824		if ms.LoadMessageInfo() == nil {
2825			ms.StoreMessageInfo(mi)
2826		}
2827		return ms
2828	}
2829	return mi.MessageOf(x)
2830}
2831
2832// Deprecated: Use SubordinateConfig_SubordinateConfigChain.ProtoReflect.Descriptor instead.
2833func (*SubordinateConfig_SubordinateConfigChain) Descriptor() ([]byte, []int) {
2834	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{6, 0}
2835}
2836
2837func (x *SubordinateConfig_SubordinateConfigChain) GetPemCertificates() []string {
2838	if x != nil {
2839		return x.PemCertificates
2840	}
2841	return nil
2842}
2843
2844// These values are used to create the distinguished name and subject
2845// alternative name fields in an X.509 certificate.
2846type CertificateConfig_SubjectConfig struct {
2847	state         protoimpl.MessageState
2848	sizeCache     protoimpl.SizeCache
2849	unknownFields protoimpl.UnknownFields
2850
2851	// Required. Contains distinguished name fields such as the location and organization.
2852	Subject *Subject `protobuf:"bytes,1,opt,name=subject,proto3" json:"subject,omitempty"`
2853	// Optional. The "common name" of the distinguished name.
2854	CommonName string `protobuf:"bytes,2,opt,name=common_name,json=commonName,proto3" json:"common_name,omitempty"`
2855	// Optional. The subject alternative name fields.
2856	SubjectAltName *SubjectAltNames `protobuf:"bytes,3,opt,name=subject_alt_name,json=subjectAltName,proto3" json:"subject_alt_name,omitempty"`
2857}
2858
2859func (x *CertificateConfig_SubjectConfig) Reset() {
2860	*x = CertificateConfig_SubjectConfig{}
2861	if protoimpl.UnsafeEnabled {
2862		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[30]
2863		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2864		ms.StoreMessageInfo(mi)
2865	}
2866}
2867
2868func (x *CertificateConfig_SubjectConfig) String() string {
2869	return protoimpl.X.MessageStringOf(x)
2870}
2871
2872func (*CertificateConfig_SubjectConfig) ProtoMessage() {}
2873
2874func (x *CertificateConfig_SubjectConfig) ProtoReflect() protoreflect.Message {
2875	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[30]
2876	if protoimpl.UnsafeEnabled && x != nil {
2877		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2878		if ms.LoadMessageInfo() == nil {
2879			ms.StoreMessageInfo(mi)
2880		}
2881		return ms
2882	}
2883	return mi.MessageOf(x)
2884}
2885
2886// Deprecated: Use CertificateConfig_SubjectConfig.ProtoReflect.Descriptor instead.
2887func (*CertificateConfig_SubjectConfig) Descriptor() ([]byte, []int) {
2888	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{8, 0}
2889}
2890
2891func (x *CertificateConfig_SubjectConfig) GetSubject() *Subject {
2892	if x != nil {
2893		return x.Subject
2894	}
2895	return nil
2896}
2897
2898func (x *CertificateConfig_SubjectConfig) GetCommonName() string {
2899	if x != nil {
2900		return x.CommonName
2901	}
2902	return ""
2903}
2904
2905func (x *CertificateConfig_SubjectConfig) GetSubjectAltName() *SubjectAltNames {
2906	if x != nil {
2907		return x.SubjectAltName
2908	}
2909	return nil
2910}
2911
2912// These values describe fields in an issued X.509 certificate such as the
2913// distinguished name, subject alternative names, serial number, and lifetime.
2914type CertificateDescription_SubjectDescription struct {
2915	state         protoimpl.MessageState
2916	sizeCache     protoimpl.SizeCache
2917	unknownFields protoimpl.UnknownFields
2918
2919	// Contains distinguished name fields such as the location and organization.
2920	Subject *Subject `protobuf:"bytes,1,opt,name=subject,proto3" json:"subject,omitempty"`
2921	// The "common name" of the distinguished name.
2922	CommonName string `protobuf:"bytes,2,opt,name=common_name,json=commonName,proto3" json:"common_name,omitempty"`
2923	// The subject alternative name fields.
2924	SubjectAltName *SubjectAltNames `protobuf:"bytes,3,opt,name=subject_alt_name,json=subjectAltName,proto3" json:"subject_alt_name,omitempty"`
2925	// The serial number encoded in lowercase hexadecimal.
2926	HexSerialNumber string `protobuf:"bytes,4,opt,name=hex_serial_number,json=hexSerialNumber,proto3" json:"hex_serial_number,omitempty"`
2927	// For convenience, the actual lifetime of an issued certificate.
2928	// Corresponds to 'not_after_time' - 'not_before_time'.
2929	Lifetime *durationpb.Duration `protobuf:"bytes,5,opt,name=lifetime,proto3" json:"lifetime,omitempty"`
2930	// The time at which the certificate becomes valid.
2931	NotBeforeTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=not_before_time,json=notBeforeTime,proto3" json:"not_before_time,omitempty"`
2932	// The time at which the certificate expires.
2933	NotAfterTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=not_after_time,json=notAfterTime,proto3" json:"not_after_time,omitempty"`
2934}
2935
2936func (x *CertificateDescription_SubjectDescription) Reset() {
2937	*x = CertificateDescription_SubjectDescription{}
2938	if protoimpl.UnsafeEnabled {
2939		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[31]
2940		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2941		ms.StoreMessageInfo(mi)
2942	}
2943}
2944
2945func (x *CertificateDescription_SubjectDescription) String() string {
2946	return protoimpl.X.MessageStringOf(x)
2947}
2948
2949func (*CertificateDescription_SubjectDescription) ProtoMessage() {}
2950
2951func (x *CertificateDescription_SubjectDescription) ProtoReflect() protoreflect.Message {
2952	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[31]
2953	if protoimpl.UnsafeEnabled && x != nil {
2954		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2955		if ms.LoadMessageInfo() == nil {
2956			ms.StoreMessageInfo(mi)
2957		}
2958		return ms
2959	}
2960	return mi.MessageOf(x)
2961}
2962
2963// Deprecated: Use CertificateDescription_SubjectDescription.ProtoReflect.Descriptor instead.
2964func (*CertificateDescription_SubjectDescription) Descriptor() ([]byte, []int) {
2965	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{9, 0}
2966}
2967
2968func (x *CertificateDescription_SubjectDescription) GetSubject() *Subject {
2969	if x != nil {
2970		return x.Subject
2971	}
2972	return nil
2973}
2974
2975func (x *CertificateDescription_SubjectDescription) GetCommonName() string {
2976	if x != nil {
2977		return x.CommonName
2978	}
2979	return ""
2980}
2981
2982func (x *CertificateDescription_SubjectDescription) GetSubjectAltName() *SubjectAltNames {
2983	if x != nil {
2984		return x.SubjectAltName
2985	}
2986	return nil
2987}
2988
2989func (x *CertificateDescription_SubjectDescription) GetHexSerialNumber() string {
2990	if x != nil {
2991		return x.HexSerialNumber
2992	}
2993	return ""
2994}
2995
2996func (x *CertificateDescription_SubjectDescription) GetLifetime() *durationpb.Duration {
2997	if x != nil {
2998		return x.Lifetime
2999	}
3000	return nil
3001}
3002
3003func (x *CertificateDescription_SubjectDescription) GetNotBeforeTime() *timestamppb.Timestamp {
3004	if x != nil {
3005		return x.NotBeforeTime
3006	}
3007	return nil
3008}
3009
3010func (x *CertificateDescription_SubjectDescription) GetNotAfterTime() *timestamppb.Timestamp {
3011	if x != nil {
3012		return x.NotAfterTime
3013	}
3014	return nil
3015}
3016
3017// A KeyId identifies a specific public key, usually by hashing the public
3018// key.
3019type CertificateDescription_KeyId struct {
3020	state         protoimpl.MessageState
3021	sizeCache     protoimpl.SizeCache
3022	unknownFields protoimpl.UnknownFields
3023
3024	// Optional. The value of this KeyId encoded in lowercase hexadecimal. This is most
3025	// likely the 160 bit SHA-1 hash of the public key.
3026	KeyId string `protobuf:"bytes,1,opt,name=key_id,json=keyId,proto3" json:"key_id,omitempty"`
3027}
3028
3029func (x *CertificateDescription_KeyId) Reset() {
3030	*x = CertificateDescription_KeyId{}
3031	if protoimpl.UnsafeEnabled {
3032		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[32]
3033		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3034		ms.StoreMessageInfo(mi)
3035	}
3036}
3037
3038func (x *CertificateDescription_KeyId) String() string {
3039	return protoimpl.X.MessageStringOf(x)
3040}
3041
3042func (*CertificateDescription_KeyId) ProtoMessage() {}
3043
3044func (x *CertificateDescription_KeyId) ProtoReflect() protoreflect.Message {
3045	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[32]
3046	if protoimpl.UnsafeEnabled && x != nil {
3047		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3048		if ms.LoadMessageInfo() == nil {
3049			ms.StoreMessageInfo(mi)
3050		}
3051		return ms
3052	}
3053	return mi.MessageOf(x)
3054}
3055
3056// Deprecated: Use CertificateDescription_KeyId.ProtoReflect.Descriptor instead.
3057func (*CertificateDescription_KeyId) Descriptor() ([]byte, []int) {
3058	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{9, 1}
3059}
3060
3061func (x *CertificateDescription_KeyId) GetKeyId() string {
3062	if x != nil {
3063		return x.KeyId
3064	}
3065	return ""
3066}
3067
3068// A group of fingerprints for the x509 certificate.
3069type CertificateDescription_CertificateFingerprint struct {
3070	state         protoimpl.MessageState
3071	sizeCache     protoimpl.SizeCache
3072	unknownFields protoimpl.UnknownFields
3073
3074	// The SHA 256 hash, encoded in hexadecimal, of the DER x509 certificate.
3075	Sha256Hash string `protobuf:"bytes,1,opt,name=sha256_hash,json=sha256Hash,proto3" json:"sha256_hash,omitempty"`
3076}
3077
3078func (x *CertificateDescription_CertificateFingerprint) Reset() {
3079	*x = CertificateDescription_CertificateFingerprint{}
3080	if protoimpl.UnsafeEnabled {
3081		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[33]
3082		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3083		ms.StoreMessageInfo(mi)
3084	}
3085}
3086
3087func (x *CertificateDescription_CertificateFingerprint) String() string {
3088	return protoimpl.X.MessageStringOf(x)
3089}
3090
3091func (*CertificateDescription_CertificateFingerprint) ProtoMessage() {}
3092
3093func (x *CertificateDescription_CertificateFingerprint) ProtoReflect() protoreflect.Message {
3094	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[33]
3095	if protoimpl.UnsafeEnabled && x != nil {
3096		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3097		if ms.LoadMessageInfo() == nil {
3098			ms.StoreMessageInfo(mi)
3099		}
3100		return ms
3101	}
3102	return mi.MessageOf(x)
3103}
3104
3105// Deprecated: Use CertificateDescription_CertificateFingerprint.ProtoReflect.Descriptor instead.
3106func (*CertificateDescription_CertificateFingerprint) Descriptor() ([]byte, []int) {
3107	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{9, 2}
3108}
3109
3110func (x *CertificateDescription_CertificateFingerprint) GetSha256Hash() string {
3111	if x != nil {
3112		return x.Sha256Hash
3113	}
3114	return ""
3115}
3116
3117// [KeyUsage.KeyUsageOptions][google.cloud.security.privateca.v1beta1.KeyUsage.KeyUsageOptions] corresponds to the key usage values
3118// described in https://tools.ietf.org/html/rfc5280#section-4.2.1.3.
3119type KeyUsage_KeyUsageOptions struct {
3120	state         protoimpl.MessageState
3121	sizeCache     protoimpl.SizeCache
3122	unknownFields protoimpl.UnknownFields
3123
3124	// The key may be used for digital signatures.
3125	DigitalSignature bool `protobuf:"varint,1,opt,name=digital_signature,json=digitalSignature,proto3" json:"digital_signature,omitempty"`
3126	// The key may be used for cryptographic commitments. Note that this may
3127	// also be referred to as "non-repudiation".
3128	ContentCommitment bool `protobuf:"varint,2,opt,name=content_commitment,json=contentCommitment,proto3" json:"content_commitment,omitempty"`
3129	// The key may be used to encipher other keys.
3130	KeyEncipherment bool `protobuf:"varint,3,opt,name=key_encipherment,json=keyEncipherment,proto3" json:"key_encipherment,omitempty"`
3131	// The key may be used to encipher data.
3132	DataEncipherment bool `protobuf:"varint,4,opt,name=data_encipherment,json=dataEncipherment,proto3" json:"data_encipherment,omitempty"`
3133	// The key may be used in a key agreement protocol.
3134	KeyAgreement bool `protobuf:"varint,5,opt,name=key_agreement,json=keyAgreement,proto3" json:"key_agreement,omitempty"`
3135	// The key may be used to sign certificates.
3136	CertSign bool `protobuf:"varint,6,opt,name=cert_sign,json=certSign,proto3" json:"cert_sign,omitempty"`
3137	// The key may be used sign certificate revocation lists.
3138	CrlSign bool `protobuf:"varint,7,opt,name=crl_sign,json=crlSign,proto3" json:"crl_sign,omitempty"`
3139	// The key may be used to encipher only.
3140	EncipherOnly bool `protobuf:"varint,8,opt,name=encipher_only,json=encipherOnly,proto3" json:"encipher_only,omitempty"`
3141	// The key may be used to decipher only.
3142	DecipherOnly bool `protobuf:"varint,9,opt,name=decipher_only,json=decipherOnly,proto3" json:"decipher_only,omitempty"`
3143}
3144
3145func (x *KeyUsage_KeyUsageOptions) Reset() {
3146	*x = KeyUsage_KeyUsageOptions{}
3147	if protoimpl.UnsafeEnabled {
3148		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[34]
3149		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3150		ms.StoreMessageInfo(mi)
3151	}
3152}
3153
3154func (x *KeyUsage_KeyUsageOptions) String() string {
3155	return protoimpl.X.MessageStringOf(x)
3156}
3157
3158func (*KeyUsage_KeyUsageOptions) ProtoMessage() {}
3159
3160func (x *KeyUsage_KeyUsageOptions) ProtoReflect() protoreflect.Message {
3161	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[34]
3162	if protoimpl.UnsafeEnabled && x != nil {
3163		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3164		if ms.LoadMessageInfo() == nil {
3165			ms.StoreMessageInfo(mi)
3166		}
3167		return ms
3168	}
3169	return mi.MessageOf(x)
3170}
3171
3172// Deprecated: Use KeyUsage_KeyUsageOptions.ProtoReflect.Descriptor instead.
3173func (*KeyUsage_KeyUsageOptions) Descriptor() ([]byte, []int) {
3174	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{12, 0}
3175}
3176
3177func (x *KeyUsage_KeyUsageOptions) GetDigitalSignature() bool {
3178	if x != nil {
3179		return x.DigitalSignature
3180	}
3181	return false
3182}
3183
3184func (x *KeyUsage_KeyUsageOptions) GetContentCommitment() bool {
3185	if x != nil {
3186		return x.ContentCommitment
3187	}
3188	return false
3189}
3190
3191func (x *KeyUsage_KeyUsageOptions) GetKeyEncipherment() bool {
3192	if x != nil {
3193		return x.KeyEncipherment
3194	}
3195	return false
3196}
3197
3198func (x *KeyUsage_KeyUsageOptions) GetDataEncipherment() bool {
3199	if x != nil {
3200		return x.DataEncipherment
3201	}
3202	return false
3203}
3204
3205func (x *KeyUsage_KeyUsageOptions) GetKeyAgreement() bool {
3206	if x != nil {
3207		return x.KeyAgreement
3208	}
3209	return false
3210}
3211
3212func (x *KeyUsage_KeyUsageOptions) GetCertSign() bool {
3213	if x != nil {
3214		return x.CertSign
3215	}
3216	return false
3217}
3218
3219func (x *KeyUsage_KeyUsageOptions) GetCrlSign() bool {
3220	if x != nil {
3221		return x.CrlSign
3222	}
3223	return false
3224}
3225
3226func (x *KeyUsage_KeyUsageOptions) GetEncipherOnly() bool {
3227	if x != nil {
3228		return x.EncipherOnly
3229	}
3230	return false
3231}
3232
3233func (x *KeyUsage_KeyUsageOptions) GetDecipherOnly() bool {
3234	if x != nil {
3235		return x.DecipherOnly
3236	}
3237	return false
3238}
3239
3240// [KeyUsage.ExtendedKeyUsageOptions][google.cloud.security.privateca.v1beta1.KeyUsage.ExtendedKeyUsageOptions] has fields that correspond to
3241// certain common OIDs that could be specified as an extended key usage value.
3242type KeyUsage_ExtendedKeyUsageOptions struct {
3243	state         protoimpl.MessageState
3244	sizeCache     protoimpl.SizeCache
3245	unknownFields protoimpl.UnknownFields
3246
3247	// Corresponds to OID 1.3.6.1.5.5.7.3.1. Officially described as "TLS WWW
3248	// server authentication", though regularly used for non-WWW TLS.
3249	ServerAuth bool `protobuf:"varint,1,opt,name=server_auth,json=serverAuth,proto3" json:"server_auth,omitempty"`
3250	// Corresponds to OID 1.3.6.1.5.5.7.3.2. Officially described as "TLS WWW
3251	// client authentication", though regularly used for non-WWW TLS.
3252	ClientAuth bool `protobuf:"varint,2,opt,name=client_auth,json=clientAuth,proto3" json:"client_auth,omitempty"`
3253	// Corresponds to OID 1.3.6.1.5.5.7.3.3. Officially described as "Signing of
3254	// downloadable executable code client authentication".
3255	CodeSigning bool `protobuf:"varint,3,opt,name=code_signing,json=codeSigning,proto3" json:"code_signing,omitempty"`
3256	// Corresponds to OID 1.3.6.1.5.5.7.3.4. Officially described as "Email
3257	// protection".
3258	EmailProtection bool `protobuf:"varint,4,opt,name=email_protection,json=emailProtection,proto3" json:"email_protection,omitempty"`
3259	// Corresponds to OID 1.3.6.1.5.5.7.3.8. Officially described as "Binding
3260	// the hash of an object to a time".
3261	TimeStamping bool `protobuf:"varint,5,opt,name=time_stamping,json=timeStamping,proto3" json:"time_stamping,omitempty"`
3262	// Corresponds to OID 1.3.6.1.5.5.7.3.9. Officially described as "Signing
3263	// OCSP responses".
3264	OcspSigning bool `protobuf:"varint,6,opt,name=ocsp_signing,json=ocspSigning,proto3" json:"ocsp_signing,omitempty"`
3265}
3266
3267func (x *KeyUsage_ExtendedKeyUsageOptions) Reset() {
3268	*x = KeyUsage_ExtendedKeyUsageOptions{}
3269	if protoimpl.UnsafeEnabled {
3270		mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[35]
3271		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3272		ms.StoreMessageInfo(mi)
3273	}
3274}
3275
3276func (x *KeyUsage_ExtendedKeyUsageOptions) String() string {
3277	return protoimpl.X.MessageStringOf(x)
3278}
3279
3280func (*KeyUsage_ExtendedKeyUsageOptions) ProtoMessage() {}
3281
3282func (x *KeyUsage_ExtendedKeyUsageOptions) ProtoReflect() protoreflect.Message {
3283	mi := &file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[35]
3284	if protoimpl.UnsafeEnabled && x != nil {
3285		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
3286		if ms.LoadMessageInfo() == nil {
3287			ms.StoreMessageInfo(mi)
3288		}
3289		return ms
3290	}
3291	return mi.MessageOf(x)
3292}
3293
3294// Deprecated: Use KeyUsage_ExtendedKeyUsageOptions.ProtoReflect.Descriptor instead.
3295func (*KeyUsage_ExtendedKeyUsageOptions) Descriptor() ([]byte, []int) {
3296	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP(), []int{12, 1}
3297}
3298
3299func (x *KeyUsage_ExtendedKeyUsageOptions) GetServerAuth() bool {
3300	if x != nil {
3301		return x.ServerAuth
3302	}
3303	return false
3304}
3305
3306func (x *KeyUsage_ExtendedKeyUsageOptions) GetClientAuth() bool {
3307	if x != nil {
3308		return x.ClientAuth
3309	}
3310	return false
3311}
3312
3313func (x *KeyUsage_ExtendedKeyUsageOptions) GetCodeSigning() bool {
3314	if x != nil {
3315		return x.CodeSigning
3316	}
3317	return false
3318}
3319
3320func (x *KeyUsage_ExtendedKeyUsageOptions) GetEmailProtection() bool {
3321	if x != nil {
3322		return x.EmailProtection
3323	}
3324	return false
3325}
3326
3327func (x *KeyUsage_ExtendedKeyUsageOptions) GetTimeStamping() bool {
3328	if x != nil {
3329		return x.TimeStamping
3330	}
3331	return false
3332}
3333
3334func (x *KeyUsage_ExtendedKeyUsageOptions) GetOcspSigning() bool {
3335	if x != nil {
3336		return x.OcspSigning
3337	}
3338	return false
3339}
3340
3341var File_google_cloud_security_privateca_v1beta1_resources_proto protoreflect.FileDescriptor
3342
3343var file_google_cloud_security_privateca_v1beta1_resources_proto_rawDesc = []byte{
3344	0x0a, 0x37, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x73,
3345	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63,
3346	0x61, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
3347	0x63, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x27, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
3348	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
3349	0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
3350	0x61, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66,
3351	0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72,
3352	0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f,
3353	0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e,
3354	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
3355	0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f,
3356	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
3357	0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
3358	0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
3359	0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
3360	0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f,
3361	0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc7, 0x21,
3362	0x0a, 0x14, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74,
3363	0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
3364	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
3365	0x5e, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, 0x2e,
3366	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63,
3367	0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e,
3368	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63,
3369	0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x54, 0x79, 0x70,
3370	0x65, 0x42, 0x06, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12,
3371	0x5e, 0x0a, 0x04, 0x74, 0x69, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, 0x2e,
3372	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63,
3373	0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e,
3374	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63,
3375	0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x54, 0x69, 0x65,
3376	0x72, 0x42, 0x06, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0x52, 0x04, 0x74, 0x69, 0x65, 0x72, 0x12,
3377	0x5a, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
3378	0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73,
3379	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63,
3380	0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66,
3381	0x69, 0x63, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x06, 0xe0, 0x41, 0x02,
3382	0xe0, 0x41, 0x05, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3a, 0x0a, 0x08, 0x6c,
3383	0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
3384	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
3385	0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x6c,
3386	0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x6f, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x73,
3387	0x70, 0x65, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4c, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
3388	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
3389	0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65,
3390	0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41,
3391	0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73,
3392	0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x42, 0x06, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0x52,
3393	0x07, 0x6b, 0x65, 0x79, 0x53, 0x70, 0x65, 0x63, 0x12, 0x8c, 0x01, 0x0a, 0x12, 0x63, 0x65, 0x72,
3394	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18,
3395	0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x58, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
3396	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72,
3397	0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
3398	0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f,
3399	0x72, 0x69, 0x74, 0x79, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65,
3400	0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x42,
3401	0x03, 0xe0, 0x41, 0x01, 0x52, 0x11, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
3402	0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x7a, 0x0a, 0x0f, 0x69, 0x73, 0x73, 0x75, 0x69,
3403	0x6e, 0x67, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b,
3404	0x32, 0x4c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
3405	0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65,
3406	0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69,
3407	0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x2e,
3408	0x49, 0x73, 0x73, 0x75, 0x69, 0x6e, 0x67, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x03,
3409	0xe0, 0x41, 0x01, 0x52, 0x0e, 0x69, 0x73, 0x73, 0x75, 0x69, 0x6e, 0x67, 0x4f, 0x70, 0x74, 0x69,
3410	0x6f, 0x6e, 0x73, 0x12, 0x6e, 0x0a, 0x12, 0x73, 0x75, 0x62, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61,
3411	0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32,
3412	0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73,
3413	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63,
3414	0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x6f, 0x72, 0x64,
3415	0x69, 0x6e, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x01,
3416	0x52, 0x11, 0x73, 0x75, 0x62, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e,
3417	0x66, 0x69, 0x67, 0x12, 0x5e, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01,
3418	0x28, 0x0e, 0x32, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
3419	0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61,
3420	0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72,
3421	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74,
3422	0x79, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74,
3423	0x61, 0x74, 0x65, 0x12, 0x33, 0x0a, 0x13, 0x70, 0x65, 0x6d, 0x5f, 0x63, 0x61, 0x5f, 0x63, 0x65,
3424	0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09,
3425	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x70, 0x65, 0x6d, 0x43, 0x61, 0x43, 0x65, 0x72, 0x74,
3426	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x12, 0x84, 0x01, 0x0a, 0x1b, 0x63, 0x61, 0x5f,
3427	0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x63,
3428	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f,
3429	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65,
3430	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61,
3431	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
3432	0x63, 0x61, 0x74, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42,
3433	0x03, 0xe0, 0x41, 0x03, 0x52, 0x19, 0x63, 0x61, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63,
3434	0x61, 0x74, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
3435	0x22, 0x0a, 0x0a, 0x67, 0x63, 0x73, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x0d, 0x20,
3436	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x09, 0x67, 0x63, 0x73, 0x42, 0x75, 0x63,
3437	0x6b, 0x65, 0x74, 0x12, 0x6e, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x75, 0x72,
3438	0x6c, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x48, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
3439	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
3440	0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
3441	0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x75,
3442	0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x55, 0x72,
3443	0x6c, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x55,
3444	0x72, 0x6c, 0x73, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69,
3445	0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
3446	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
3447	0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74,
3448	0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f,
3449	0x74, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
3450	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
3451	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64,
3452	0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x65, 0x74,
3453	0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
3454	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
3455	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x64,
3456	0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x66, 0x0a, 0x06, 0x6c, 0x61, 0x62,
3457	0x65, 0x6c, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
3458	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
3459	0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65,
3460	0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41,
3461	0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45,
3462	0x6e, 0x74, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c,
3463	0x73, 0x1a, 0x7e, 0x0a, 0x0e, 0x49, 0x73, 0x73, 0x75, 0x69, 0x6e, 0x67, 0x4f, 0x70, 0x74, 0x69,
3464	0x6f, 0x6e, 0x73, 0x12, 0x32, 0x0a, 0x13, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x63,
3465	0x61, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
3466	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x43, 0x61,
3467	0x43, 0x65, 0x72, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x38, 0x0a, 0x16, 0x69, 0x6e, 0x63, 0x6c, 0x75,
3468	0x64, 0x65, 0x5f, 0x63, 0x72, 0x6c, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x75, 0x72,
3469	0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x13, 0x69, 0x6e,
3470	0x63, 0x6c, 0x75, 0x64, 0x65, 0x43, 0x72, 0x6c, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x55, 0x72,
3471	0x6c, 0x1a, 0x88, 0x0c, 0x0a, 0x1a, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
3472	0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
3473	0x12, 0xa1, 0x01, 0x0a, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6e,
3474	0x66, 0x69, 0x67, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x6a,
3475	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65,
3476	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61,
3477	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
3478	0x63, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x43, 0x65,
3479	0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69,
3480	0x74, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64,
3481	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48,
3482	0x00, 0x52, 0x11, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
3483	0x4c, 0x69, 0x73, 0x74, 0x12, 0x7d, 0x0a, 0x17, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x72, 0x69, 0x74,
3484	0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18,
3485	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
3486	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72,
3487	0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
3488	0x52, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x57, 0x72,
3489	0x61, 0x70, 0x70, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x00, 0x52, 0x15, 0x6f, 0x76,
3490	0x65, 0x72, 0x77, 0x72, 0x69, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x61, 0x6c,
3491	0x75, 0x65, 0x73, 0x12, 0x84, 0x01, 0x0a, 0x23, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f,
3492	0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x6f, 0x72,
3493	0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
3494	0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
3495	0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74,
3496	0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x6a,
3497	0x65, 0x63, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65,
3498	0x64, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x41, 0x6e, 0x64, 0x4f, 0x72, 0x67,
3499	0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x35, 0x0a, 0x14, 0x61, 0x6c,
3500	0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d,
3501	0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x12, 0x61,
3502	0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65,
3503	0x73, 0x12, 0x97, 0x01, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x73, 0x61,
3504	0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x6f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
3505	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
3506	0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
3507	0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x75,
3508	0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63,
3509	0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x6c, 0x69,
3510	0x63, 0x79, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63,
3511	0x74, 0x41, 0x6c, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b,
3512	0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x53, 0x61, 0x6e, 0x73, 0x12, 0x49, 0x0a, 0x10, 0x6d,
3513	0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18,
3514	0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
3515	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
3516	0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x4c, 0x69,
3517	0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0xa1, 0x01, 0x0a, 0x16, 0x61, 0x6c, 0x6c, 0x6f, 0x77,
3518	0x65, 0x64, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65,
3519	0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x66, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
3520	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e,
3521	0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
3522	0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74,
3523	0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
3524	0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63,
3525	0x79, 0x2e, 0x49, 0x73, 0x73, 0x75, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x42,
3526	0x03, 0xe0, 0x41, 0x01, 0x52, 0x14, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x49, 0x73, 0x73,
3527	0x75, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x1a, 0x8c, 0x01, 0x0a, 0x11, 0x41,
3528	0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4c, 0x69, 0x73, 0x74,
3529	0x12, 0x77, 0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
3530	0x69, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
3531	0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73,
3532	0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63,
3533	0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x75, 0x73, 0x61, 0x62,
3534	0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x42,
3535	0x03, 0xe0, 0x41, 0x02, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x43, 0x6f, 0x6e,
3536	0x66, 0x69, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a, 0xcb, 0x02, 0x0a, 0x16, 0x41, 0x6c,
3537	0x6c, 0x6f, 0x77, 0x65, 0x64, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6c, 0x74, 0x4e,
3538	0x61, 0x6d, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x11, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f,
3539	0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x42,
3540	0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x44, 0x6e, 0x73,
3541	0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64,
3542	0x5f, 0x75, 0x72, 0x69, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01,
3543	0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x55, 0x72, 0x69, 0x73, 0x12, 0x3b, 0x0a,
3544	0x17, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x61,
3545	0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03,
3546	0xe0, 0x41, 0x01, 0x52, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x45, 0x6d, 0x61, 0x69,
3547	0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0b, 0x61, 0x6c,
3548	0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x42,
3549	0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x49, 0x70, 0x73,
3550	0x12, 0x44, 0x0a, 0x1c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x62, 0x69,
3551	0x6e, 0x67, 0x5f, 0x64, 0x6e, 0x73, 0x5f, 0x77, 0x69, 0x6c, 0x64, 0x63, 0x61, 0x72, 0x64, 0x73,
3552	0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x19, 0x61, 0x6c, 0x6c,
3553	0x6f, 0x77, 0x47, 0x6c, 0x6f, 0x62, 0x62, 0x69, 0x6e, 0x67, 0x44, 0x6e, 0x73, 0x57, 0x69, 0x6c,
3554	0x64, 0x63, 0x61, 0x72, 0x64, 0x73, 0x12, 0x2f, 0x0a, 0x11, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f,
3555	0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x73, 0x61, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28,
3556	0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x75, 0x73,
3557	0x74, 0x6f, 0x6d, 0x53, 0x61, 0x6e, 0x73, 0x1a, 0x91, 0x01, 0x0a, 0x0d, 0x49, 0x73, 0x73, 0x75,
3558	0x61, 0x6e, 0x63, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x18, 0x61, 0x6c, 0x6c,
3559	0x6f, 0x77, 0x5f, 0x63, 0x73, 0x72, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x69, 0x73, 0x73,
3560	0x75, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x02,
3561	0x52, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x73, 0x72, 0x42, 0x61, 0x73, 0x65, 0x64, 0x49,
3562	0x73, 0x73, 0x75, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x42, 0x0a, 0x1b, 0x61, 0x6c, 0x6c, 0x6f, 0x77,
3563	0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x69, 0x73,
3564	0x73, 0x75, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41,
3565	0x02, 0x52, 0x18, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x61,
3566	0x73, 0x65, 0x64, 0x49, 0x73, 0x73, 0x75, 0x61, 0x6e, 0x63, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x63,
3567	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x1a, 0x6d, 0x0a, 0x0a,
3568	0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x39, 0x0a, 0x19, 0x63, 0x61,
3569	0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x63, 0x63,
3570	0x65, 0x73, 0x73, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x63,
3571	0x61, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x65,
3572	0x73, 0x73, 0x55, 0x72, 0x6c, 0x12, 0x24, 0x0a, 0x0e, 0x63, 0x72, 0x6c, 0x5f, 0x61, 0x63, 0x63,
3573	0x65, 0x73, 0x73, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63,
3574	0x72, 0x6c, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x55, 0x72, 0x6c, 0x1a, 0xce, 0x01, 0x0a, 0x0e,
3575	0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x38,
3576	0x0a, 0x15, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x6b, 0x6d, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f,
3577	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
3578	0x41, 0x02, 0x48, 0x00, 0x52, 0x12, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x4b, 0x6d, 0x73, 0x4b, 0x65,
3579	0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x74, 0x0a, 0x09, 0x61, 0x6c, 0x67, 0x6f,
3580	0x72, 0x69, 0x74, 0x68, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x4f, 0x2e, 0x67, 0x6f,
3581	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72,
3582	0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31,
3583	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
3584	0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x48,
3585	0x61, 0x73, 0x68, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x42, 0x03, 0xe0, 0x41,
3586	0x02, 0x48, 0x00, 0x52, 0x09, 0x61, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x42, 0x0c,
3587	0x0a, 0x0a, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x1a, 0x39, 0x0a, 0x0b,
3588	0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
3589	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a,
3590	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61,
3591	0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3e, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12,
3592	0x14, 0x0a, 0x10, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
3593	0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x45, 0x4c, 0x46, 0x5f, 0x53, 0x49,
3594	0x47, 0x4e, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x55, 0x42, 0x4f, 0x52, 0x44,
3595	0x49, 0x4e, 0x41, 0x54, 0x45, 0x10, 0x02, 0x22, 0x38, 0x0a, 0x04, 0x54, 0x69, 0x65, 0x72, 0x12,
3596	0x14, 0x0a, 0x10, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
3597	0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x50, 0x52,
3598	0x49, 0x53, 0x45, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x45, 0x56, 0x4f, 0x50, 0x53, 0x10,
3599	0x02, 0x22, 0x67, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54,
3600	0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
3601	0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0c,
3602	0x0a, 0x08, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12,
3603	0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x41, 0x54, 0x49,
3604	0x4f, 0x4e, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f,
3605	0x44, 0x45, 0x4c, 0x45, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x22, 0xfc, 0x01, 0x0a, 0x11, 0x53,
3606	0x69, 0x67, 0x6e, 0x48, 0x61, 0x73, 0x68, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d,
3607	0x12, 0x23, 0x0a, 0x1f, 0x53, 0x49, 0x47, 0x4e, 0x5f, 0x48, 0x41, 0x53, 0x48, 0x5f, 0x41, 0x4c,
3608	0x47, 0x4f, 0x52, 0x49, 0x54, 0x48, 0x4d, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
3609	0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x53, 0x41, 0x5f, 0x50, 0x53, 0x53,
3610	0x5f, 0x32, 0x30, 0x34, 0x38, 0x5f, 0x53, 0x48, 0x41, 0x32, 0x35, 0x36, 0x10, 0x01, 0x12, 0x17,
3611	0x0a, 0x13, 0x52, 0x53, 0x41, 0x5f, 0x50, 0x53, 0x53, 0x5f, 0x33, 0x30, 0x37, 0x32, 0x5f, 0x53,
3612	0x48, 0x41, 0x32, 0x35, 0x36, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x53, 0x41, 0x5f, 0x50,
3613	0x53, 0x53, 0x5f, 0x34, 0x30, 0x39, 0x36, 0x5f, 0x53, 0x48, 0x41, 0x32, 0x35, 0x36, 0x10, 0x03,
3614	0x12, 0x19, 0x0a, 0x15, 0x52, 0x53, 0x41, 0x5f, 0x50, 0x4b, 0x43, 0x53, 0x31, 0x5f, 0x32, 0x30,
3615	0x34, 0x38, 0x5f, 0x53, 0x48, 0x41, 0x32, 0x35, 0x36, 0x10, 0x06, 0x12, 0x19, 0x0a, 0x15, 0x52,
3616	0x53, 0x41, 0x5f, 0x50, 0x4b, 0x43, 0x53, 0x31, 0x5f, 0x33, 0x30, 0x37, 0x32, 0x5f, 0x53, 0x48,
3617	0x41, 0x32, 0x35, 0x36, 0x10, 0x07, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x53, 0x41, 0x5f, 0x50, 0x4b,
3618	0x43, 0x53, 0x31, 0x5f, 0x34, 0x30, 0x39, 0x36, 0x5f, 0x53, 0x48, 0x41, 0x32, 0x35, 0x36, 0x10,
3619	0x08, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x43, 0x5f, 0x50, 0x32, 0x35, 0x36, 0x5f, 0x53, 0x48, 0x41,
3620	0x32, 0x35, 0x36, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x43, 0x5f, 0x50, 0x33, 0x38, 0x34,
3621	0x5f, 0x53, 0x48, 0x41, 0x33, 0x38, 0x34, 0x10, 0x05, 0x3a, 0x8b, 0x01, 0xea, 0x41, 0x87, 0x01,
3622	0x0a, 0x2d, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
3623	0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x65, 0x72, 0x74, 0x69,
3624	0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12,
3625	0x56, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65,
3626	0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c,
3627	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
3628	0x63, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2f,
3629	0x7b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x61, 0x75, 0x74,
3630	0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x7d, 0x22, 0x9b, 0x09, 0x0a, 0x19, 0x43, 0x65, 0x72, 0x74,
3631	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
3632	0x6e, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
3633	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2c,
3634	0x0a, 0x0f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65,
3635	0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x73, 0x65,
3636	0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x8d, 0x01, 0x0a,
3637	0x14, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
3638	0x63, 0x61, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x55, 0x2e, 0x67, 0x6f,
3639	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72,
3640	0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31,
3641	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
3642	0x65, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x2e,
3643	0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
3644	0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x13, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64,
3645	0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x07,
3646	0x70, 0x65, 0x6d, 0x5f, 0x63, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
3647	0x41, 0x03, 0x52, 0x06, 0x70, 0x65, 0x6d, 0x43, 0x72, 0x6c, 0x12, 0x22, 0x0a, 0x0a, 0x61, 0x63,
3648	0x63, 0x65, 0x73, 0x73, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
3649	0xe0, 0x41, 0x03, 0x52, 0x09, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x55, 0x72, 0x6c, 0x12, 0x63,
3650	0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x48, 0x2e,
3651	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63,
3652	0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e,
3653	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63,
3654	0x61, 0x74, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73,
3655	0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74,
3656	0x61, 0x74, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69,
3657	0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
3658	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
3659	0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74,
3660	0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f,
3661	0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
3662	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
3663	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64,
3664	0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x6b, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c,
3665	0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
3666	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e,
3667	0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
3668	0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x76,
3669	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65,
3670	0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x6c, 0x61,
3671	0x62, 0x65, 0x6c, 0x73, 0x1a, 0xca, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64,
3672	0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63,
3673	0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
3674	0x52, 0x0b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x2a, 0x0a,
3675	0x11, 0x68, 0x65, 0x78, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x5f, 0x6e, 0x75, 0x6d, 0x62,
3676	0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x68, 0x65, 0x78, 0x53, 0x65, 0x72,
3677	0x69, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x66, 0x0a, 0x11, 0x72, 0x65, 0x76,
3678	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03,
3679	0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
3680	0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69,
3681	0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52,
3682	0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52,
3683	0x10, 0x72, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f,
3684	0x6e, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
3685	0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b,
3686	0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
3687	0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3a, 0x0a, 0x05,
3688	0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55,
3689	0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06,
3690	0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x55, 0x50, 0x45,
3691	0x52, 0x53, 0x45, 0x44, 0x45, 0x44, 0x10, 0x02, 0x3a, 0xca, 0x01, 0xea, 0x41, 0xc6, 0x01, 0x0a,
3692	0x32, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
3693	0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66,
3694	0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c,
3695	0x69, 0x73, 0x74, 0x12, 0x8f, 0x01, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b,
3696	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
3697	0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x63, 0x65,
3698	0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69,
3699	0x74, 0x69, 0x65, 0x73, 0x2f, 0x7b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
3700	0x65, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x7d, 0x2f, 0x63, 0x65, 0x72,
3701	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69,
3702	0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x73, 0x2f, 0x7b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
3703	0x63, 0x61, 0x74, 0x65, 0x5f, 0x72, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
3704	0x6c, 0x69, 0x73, 0x74, 0x7d, 0x22, 0xd7, 0x09, 0x0a, 0x0b, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66,
3705	0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
3706	0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e,
3707	0x0a, 0x07, 0x70, 0x65, 0x6d, 0x5f, 0x63, 0x73, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42,
3708	0x03, 0xe0, 0x41, 0x05, 0x48, 0x00, 0x52, 0x06, 0x70, 0x65, 0x6d, 0x43, 0x73, 0x72, 0x12, 0x59,
3709	0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a,
3710	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65,
3711	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61,
3712	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
3713	0x63, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x48,
3714	0x00, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3d, 0x0a, 0x08, 0x6c, 0x69, 0x66,
3715	0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f,
3716	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75,
3717	0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x06, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0x52, 0x08,
3718	0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x7a, 0x0a, 0x12, 0x72, 0x65, 0x76, 0x6f,
3719	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x05,
3720	0x20, 0x01, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
3721	0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69,
3722	0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43,
3723	0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x63,
3724	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x42, 0x03, 0xe0, 0x41,
3725	0x03, 0x52, 0x11, 0x72, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x74,
3726	0x61, 0x69, 0x6c, 0x73, 0x12, 0x2c, 0x0a, 0x0f, 0x70, 0x65, 0x6d, 0x5f, 0x63, 0x65, 0x72, 0x74,
3727	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
3728	0x41, 0x03, 0x52, 0x0e, 0x70, 0x65, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
3729	0x74, 0x65, 0x12, 0x7d, 0x0a, 0x17, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
3730	0x65, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20,
3731	0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
3732	0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76,
3733	0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65,
3734	0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
3735	0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x16, 0x63, 0x65, 0x72, 0x74, 0x69,
3736	0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
3737	0x6e, 0x12, 0x37, 0x0a, 0x15, 0x70, 0x65, 0x6d, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
3738	0x63, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09,
3739	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x13, 0x70, 0x65, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66,
3740	0x69, 0x63, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72,
3741	0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32,
3742	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
3743	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03,
3744	0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b,
3745	0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28,
3746	0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
3747	0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0,
3748	0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x5d,
3749	0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40,
3750	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65,
3751	0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61,
3752	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
3753	0x63, 0x61, 0x74, 0x65, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
3754	0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0xbe, 0x01,
3755	0x0a, 0x11, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x74, 0x61,
3756	0x69, 0x6c, 0x73, 0x12, 0x64, 0x0a, 0x10, 0x72, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
3757	0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e,
3758	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63,
3759	0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e,
3760	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69,
3761	0x6f, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x0f, 0x72, 0x65, 0x76, 0x6f, 0x63, 0x61,
3762	0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x43, 0x0a, 0x0f, 0x72, 0x65, 0x76,
3763	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
3764	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
3765	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0e,
3766	0x72, 0x65, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x39,
3767	0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
3768	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
3769	0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
3770	0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x3a, 0x9d, 0x01, 0xea, 0x41, 0x99, 0x01,
3771	0x0a, 0x24, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
3772	0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x65, 0x72, 0x74, 0x69,
3773	0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12, 0x71, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
3774	0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
3775	0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f,
3776	0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f,
3777	0x72, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2f, 0x7b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63,
3778	0x61, 0x74, 0x65, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x7d, 0x2f, 0x63,
3779	0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x2f, 0x7b, 0x63, 0x65, 0x72,
3780	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x7d, 0x42, 0x14, 0x0a, 0x12, 0x63, 0x65, 0x72,
3781	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22,
3782	0xc6, 0x04, 0x0a, 0x0e, 0x52, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66,
3783	0x69, 0x67, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
3784	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x5a, 0x0a, 0x06, 0x76,
3785	0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f,
3786	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72,
3787	0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31,
3788	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f,
3789	0x6e, 0x66, 0x69, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
3790	0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
3791	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
3792	0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x40,
3793	0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20,
3794	0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
3795	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42,
3796	0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65,
3797	0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
3798	0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
3799	0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
3800	0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69,
3801	0x6d, 0x65, 0x12, 0x60, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03,
3802	0x28, 0x0b, 0x32, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
3803	0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61,
3804	0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x75,
3805	0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4c, 0x61, 0x62, 0x65,
3806	0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x6c, 0x61,
3807	0x62, 0x65, 0x6c, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e,
3808	0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
3809	0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
3810	0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x3a,
3811	0x77, 0xea, 0x41, 0x74, 0x0a, 0x27, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e,
3812	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x52,
3813	0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x49, 0x70,
3814	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
3815	0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63,
3816	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43,
3817	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x2f, 0x7b, 0x72, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65,
3818	0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x7d, 0x22, 0xeb, 0x04, 0x0a, 0x14, 0x52, 0x65, 0x75,
3819	0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65,
3820	0x73, 0x12, 0x53, 0x0a, 0x09, 0x6b, 0x65, 0x79, 0x5f, 0x75, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01,
3821	0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
3822	0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69,
3823	0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b,
3824	0x65, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x6b, 0x65,
3825	0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x6b, 0x0a, 0x0a, 0x63, 0x61, 0x5f, 0x6f, 0x70, 0x74,
3826	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f,
3827	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
3828	0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62,
3829	0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e,
3830	0x66, 0x69, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2e, 0x43, 0x61, 0x4f, 0x70, 0x74, 0x69,
3831	0x6f, 0x6e, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x63, 0x61, 0x4f, 0x70, 0x74, 0x69,
3832	0x6f, 0x6e, 0x73, 0x12, 0x55, 0x0a, 0x0a, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64,
3833	0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
3834	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e,
3835	0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
3836	0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
3837	0x09, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x73, 0x12, 0x2d, 0x0a, 0x10, 0x61, 0x69,
3838	0x61, 0x5f, 0x6f, 0x63, 0x73, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x04,
3839	0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x61, 0x69, 0x61, 0x4f, 0x63,
3840	0x73, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x70, 0x0a, 0x15, 0x61, 0x64, 0x64,
3841	0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
3842	0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
3843	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
3844	0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
3845	0x61, 0x31, 0x2e, 0x58, 0x35, 0x30, 0x39, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
3846	0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x14, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61,
3847	0x6c, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x98, 0x01, 0x0a, 0x09,
3848	0x43, 0x61, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x34, 0x0a, 0x05, 0x69, 0x73, 0x5f,
3849	0x63, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
3850	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56,
3851	0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x04, 0x69, 0x73, 0x43, 0x61, 0x12,
3852	0x55, 0x0a, 0x16, 0x6d, 0x61, 0x78, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x5f, 0x70, 0x61,
3853	0x74, 0x68, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
3854	0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
3855	0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41,
3856	0x01, 0x52, 0x13, 0x6d, 0x61, 0x78, 0x49, 0x73, 0x73, 0x75, 0x65, 0x72, 0x50, 0x61, 0x74, 0x68,
3857	0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0xd4, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x75, 0x73, 0x61,
3858	0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72,
3859	0x12, 0x2e, 0x0a, 0x0f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e,
3860	0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x48, 0x00,
3861	0x52, 0x0e, 0x72, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
3862	0x12, 0x7a, 0x0a, 0x16, 0x72, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e,
3863	0x66, 0x69, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
3864	0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
3865	0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65,
3866	0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x75, 0x73, 0x61,
3867	0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x42,
3868	0x03, 0xe0, 0x41, 0x02, 0x48, 0x00, 0x52, 0x14, 0x72, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65,
3869	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x42, 0x0f, 0x0a, 0x0d,
3870	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0xb4, 0x02,
3871	0x0a, 0x11, 0x53, 0x75, 0x62, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e,
3872	0x66, 0x69, 0x67, 0x12, 0x3a, 0x0a, 0x15, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
3873	0x74, 0x65, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01,
3874	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x48, 0x00, 0x52, 0x14, 0x63, 0x65, 0x72, 0x74, 0x69,
3875	0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12,
3876	0x82, 0x01, 0x0a, 0x10, 0x70, 0x65, 0x6d, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x5f, 0x63,
3877	0x68, 0x61, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x67, 0x6f, 0x6f,
3878	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
3879	0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62,
3880	0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65,
3881	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 0x62, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61,
3882	0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x42, 0x03, 0xe0,
3883	0x41, 0x02, 0x48, 0x00, 0x52, 0x0e, 0x70, 0x65, 0x6d, 0x49, 0x73, 0x73, 0x75, 0x65, 0x72, 0x43,
3884	0x68, 0x61, 0x69, 0x6e, 0x1a, 0x48, 0x0a, 0x16, 0x53, 0x75, 0x62, 0x6f, 0x72, 0x64, 0x69, 0x6e,
3885	0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x2e,
3886	0x0a, 0x10, 0x70, 0x65, 0x6d, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
3887	0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x70,
3888	0x65, 0x6d, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x42, 0x14,
3889	0x0a, 0x12, 0x73, 0x75, 0x62, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f,
3890	0x6e, 0x66, 0x69, 0x67, 0x22, 0xbd, 0x01, 0x0a, 0x09, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b,
3891	0x65, 0x79, 0x12, 0x53, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
3892	0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
3893	0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65,
3894	0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69,
3895	0x63, 0x4b, 0x65, 0x79, 0x2e, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41,
3896	0x02, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02,
3897	0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0x44,
3898	0x0a, 0x07, 0x4b, 0x65, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x4b, 0x45, 0x59,
3899	0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
3900	0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x50, 0x45, 0x4d, 0x5f, 0x52, 0x53, 0x41, 0x5f, 0x4b,
3901	0x45, 0x59, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x45, 0x4d, 0x5f, 0x45, 0x43, 0x5f, 0x4b,
3902	0x45, 0x59, 0x10, 0x02, 0x22, 0xc1, 0x04, 0x0a, 0x11, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69,
3903	0x63, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x74, 0x0a, 0x0e, 0x73, 0x75,
3904	0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01,
3905	0x28, 0x0b, 0x32, 0x48, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
3906	0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61,
3907	0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72,
3908	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53,
3909	0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41,
3910	0x02, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
3911	0x12, 0x6c, 0x0a, 0x0f, 0x72, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e,
3912	0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
3913	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
3914	0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65,
3915	0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66,
3916	0x69, 0x67, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e,
3917	0x72, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x56,
3918	0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01,
3919	0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
3920	0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61,
3921	0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x75, 0x62,
3922	0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x75, 0x62,
3923	0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x1a, 0xef, 0x01, 0x0a, 0x0d, 0x53, 0x75, 0x62, 0x6a, 0x65,
3924	0x63, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4f, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a,
3925	0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
3926	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
3927	0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65,
3928	0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02,
3929	0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x24, 0x0a, 0x0b, 0x63, 0x6f, 0x6d,
3930	0x6d, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
3931	0xe0, 0x41, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12,
3932	0x67, 0x0a, 0x10, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x6c, 0x74, 0x5f, 0x6e,
3933	0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
3934	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
3935	0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65,
3936	0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6c, 0x74, 0x4e, 0x61,
3937	0x6d, 0x65, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63,
3938	0x74, 0x41, 0x6c, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xe1, 0x0a, 0x0a, 0x16, 0x43, 0x65, 0x72,
3939	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
3940	0x69, 0x6f, 0x6e, 0x12, 0x83, 0x01, 0x0a, 0x13, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f,
3941	0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
3942	0x0b, 0x32, 0x52, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
3943	0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74,
3944	0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74,
3945	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
3946	0x6f, 0x6e, 0x2e, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69,
3947	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x65,
3948	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x62, 0x0a, 0x0d, 0x63, 0x6f, 0x6e,
3949	0x66, 0x69, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
3950	0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
3951	0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65,
3952	0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x75, 0x73, 0x61,
3953	0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52,
3954	0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x51, 0x0a,
3955	0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28,
3956	0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
3957	0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74,
3958	0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x75, 0x62, 0x6c,
3959	0x69, 0x63, 0x4b, 0x65, 0x79, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79,
3960	0x12, 0x6b, 0x0a, 0x0e, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x5f,
3961	0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
3962	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
3963	0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
3964	0x61, 0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x65,
3965	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x52,
3966	0x0c, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x6f, 0x0a,
3967	0x10, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x69,
3968	0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
3969	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e,
3970	0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
3971	0x31, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x65, 0x73,
3972	0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x52, 0x0e,
3973	0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x36,
3974	0x0a, 0x17, 0x63, 0x72, 0x6c, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69,
3975	0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52,
3976	0x15, 0x63, 0x72, 0x6c, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e,
3977	0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x3f, 0x0a, 0x1c, 0x61, 0x69, 0x61, 0x5f, 0x69, 0x73,
3978	0x73, 0x75, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
3979	0x65, 0x5f, 0x75, 0x72, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x19, 0x61, 0x69,
3980	0x61, 0x49, 0x73, 0x73, 0x75, 0x69, 0x6e, 0x67, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63,
3981	0x61, 0x74, 0x65, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x81, 0x01, 0x0a, 0x10, 0x63, 0x65, 0x72, 0x74,
3982	0x5f, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01,
3983	0x28, 0x0b, 0x32, 0x56, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
3984	0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61,
3985	0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x65, 0x72,
3986	0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
3987	0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x46,
3988	0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x52, 0x0f, 0x63, 0x65, 0x72, 0x74,
3989	0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x1a, 0xce, 0x03, 0x0a, 0x12,
3990	0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
3991	0x6f, 0x6e, 0x12, 0x4a, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20,
3992	0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
3993	0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76,
3994	0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75,
3995	0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1f,
3996	0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
3997	0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12,
3998	0x62, 0x0a, 0x10, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x6c, 0x74, 0x5f, 0x6e,
3999	0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
4000	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
4001	0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65,
4002	0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6c, 0x74, 0x4e, 0x61,
4003	0x6d, 0x65, 0x73, 0x52, 0x0e, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6c, 0x74, 0x4e,
4004	0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x65, 0x78, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61,
4005	0x6c, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f,
4006	0x68, 0x65, 0x78, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12,
4007	0x35, 0x0a, 0x08, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28,
4008	0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
4009	0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x6c, 0x69,
4010	0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x0f, 0x6e, 0x6f, 0x74, 0x5f, 0x62, 0x65,
4011	0x66, 0x6f, 0x72, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
4012	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
4013	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0d, 0x6e, 0x6f, 0x74,
4014	0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0e, 0x6e, 0x6f,
4015	0x74, 0x5f, 0x61, 0x66, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01,
4016	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
4017	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c,
4018	0x6e, 0x6f, 0x74, 0x41, 0x66, 0x74, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x23, 0x0a, 0x05,
4019	0x4b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x06, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18,
4020	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x05, 0x6b, 0x65, 0x79, 0x49,
4021	0x64, 0x1a, 0x39, 0x0a, 0x16, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65,
4022	0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x73,
4023	0x68, 0x61, 0x32, 0x35, 0x36, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
4024	0x52, 0x0a, 0x73, 0x68, 0x61, 0x32, 0x35, 0x36, 0x48, 0x61, 0x73, 0x68, 0x22, 0x35, 0x0a, 0x08,
4025	0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x0e, 0x6f, 0x62, 0x6a, 0x65,
4026	0x63, 0x74, 0x5f, 0x69, 0x64, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05,
4027	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x50,
4028	0x61, 0x74, 0x68, 0x22, 0xa0, 0x01, 0x0a, 0x0d, 0x58, 0x35, 0x30, 0x39, 0x45, 0x78, 0x74, 0x65,
4029	0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x53, 0x0a, 0x09, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f,
4030	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
4031	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
4032	0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
4033	0x61, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x42, 0x03, 0xe0, 0x41, 0x02,
4034	0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x08, 0x63, 0x72,
4035	0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41,
4036	0x02, 0x52, 0x08, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x12, 0x19, 0x0a, 0x05, 0x76,
4037	0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
4038	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xc1, 0x07, 0x0a, 0x08, 0x4b, 0x65, 0x79, 0x55, 0x73,
4039	0x61, 0x67, 0x65, 0x12, 0x67, 0x0a, 0x0e, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x5f,
4040	0x75, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x67, 0x6f,
4041	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72,
4042	0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31,
4043	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, 0x65, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4b,
4044	0x65, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c,
4045	0x62, 0x61, 0x73, 0x65, 0x4b, 0x65, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x77, 0x0a, 0x12,
4046	0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x75, 0x73, 0x61,
4047	0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
4048	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
4049	0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
4050	0x61, 0x31, 0x2e, 0x4b, 0x65, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x45, 0x78, 0x74, 0x65,
4051	0x6e, 0x64, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69,
4052	0x6f, 0x6e, 0x73, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x4b, 0x65, 0x79,
4053	0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x70, 0x0a, 0x1b, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e,
4054	0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x75, 0x73,
4055	0x61, 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f,
4056	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
4057	0x74, 0x79, 0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62,
4058	0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x52, 0x18, 0x75,
4059	0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x4b, 0x65,
4060	0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x73, 0x1a, 0xec, 0x02, 0x0a, 0x0f, 0x4b, 0x65, 0x79, 0x55,
4061	0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x64,
4062	0x69, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
4063	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x64, 0x69, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x53,
4064	0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x63, 0x6f, 0x6e, 0x74,
4065	0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02,
4066	0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d,
4067	0x6d, 0x69, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x6b, 0x65, 0x79, 0x5f, 0x65,
4068	0x6e, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
4069	0x08, 0x52, 0x0f, 0x6b, 0x65, 0x79, 0x45, 0x6e, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x6d, 0x65,
4070	0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x65, 0x6e, 0x63, 0x69, 0x70,
4071	0x68, 0x65, 0x72, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x64,
4072	0x61, 0x74, 0x61, 0x45, 0x6e, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x6d, 0x65, 0x6e, 0x74, 0x12,
4073	0x23, 0x0a, 0x0d, 0x6b, 0x65, 0x79, 0x5f, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74,
4074	0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x6b, 0x65, 0x79, 0x41, 0x67, 0x72, 0x65, 0x65,
4075	0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x65, 0x72, 0x74, 0x5f, 0x73, 0x69, 0x67,
4076	0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x65, 0x72, 0x74, 0x53, 0x69, 0x67,
4077	0x6e, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x72, 0x6c, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x18, 0x07, 0x20,
4078	0x01, 0x28, 0x08, 0x52, 0x07, 0x63, 0x72, 0x6c, 0x53, 0x69, 0x67, 0x6e, 0x12, 0x23, 0x0a, 0x0d,
4079	0x65, 0x6e, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x08, 0x20,
4080	0x01, 0x28, 0x08, 0x52, 0x0c, 0x65, 0x6e, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x4f, 0x6e, 0x6c,
4081	0x79, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x65, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x5f, 0x6f, 0x6e,
4082	0x6c, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x64, 0x65, 0x63, 0x69, 0x70, 0x68,
4083	0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x79, 0x1a, 0xf1, 0x01, 0x0a, 0x17, 0x45, 0x78, 0x74, 0x65, 0x6e,
4084	0x64, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f,
4085	0x6e, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x75, 0x74,
4086	0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41,
4087	0x75, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x75,
4088	0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74,
4089	0x41, 0x75, 0x74, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x73, 0x69, 0x67,
4090	0x6e, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x63, 0x6f, 0x64, 0x65,
4091	0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x29, 0x0a, 0x10, 0x65, 0x6d, 0x61, 0x69, 0x6c,
4092	0x5f, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28,
4093	0x08, 0x52, 0x0f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69,
4094	0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x6d, 0x70,
4095	0x69, 0x6e, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x53,
4096	0x74, 0x61, 0x6d, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x63, 0x73, 0x70, 0x5f,
4097	0x73, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6f,
4098	0x63, 0x73, 0x70, 0x53, 0x69, 0x67, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0x81, 0x02, 0x0a, 0x07, 0x53,
4099	0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72,
4100	0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f,
4101	0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x72, 0x67,
4102	0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
4103	0x0c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a,
4104	0x13, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f,
4105	0x75, 0x6e, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x6f, 0x72, 0x67, 0x61,
4106	0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x1a,
4107	0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
4108	0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72,
4109	0x6f, 0x76, 0x69, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72,
4110	0x6f, 0x76, 0x69, 0x6e, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x74, 0x72, 0x65, 0x65, 0x74,
4111	0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
4112	0x73, 0x74, 0x72, 0x65, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a,
4113	0x0b, 0x70, 0x6f, 0x73, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01,
4114	0x28, 0x09, 0x52, 0x0a, 0x70, 0x6f, 0x73, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x64, 0x65, 0x22, 0xe7,
4115	0x01, 0x0a, 0x0f, 0x53, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x6c, 0x74, 0x4e, 0x61, 0x6d,
4116	0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x6e, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18,
4117	0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x64, 0x6e, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12,
4118	0x12, 0x0a, 0x04, 0x75, 0x72, 0x69, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x75,
4119	0x72, 0x69, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x61, 0x64, 0x64,
4120	0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x6d,
4121	0x61, 0x69, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c,
4122	0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03,
4123	0x28, 0x09, 0x52, 0x0b, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12,
4124	0x57, 0x0a, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x73, 0x61, 0x6e, 0x73, 0x18, 0x05,
4125	0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
4126	0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x69,
4127	0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x58,
4128	0x35, 0x30, 0x39, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x63, 0x75,
4129	0x73, 0x74, 0x6f, 0x6d, 0x53, 0x61, 0x6e, 0x73, 0x2a, 0x87, 0x02, 0x0a, 0x10, 0x52, 0x65, 0x76,
4130	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x21, 0x0a,
4131	0x1d, 0x52, 0x45, 0x56, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x45, 0x41, 0x53,
4132	0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00,
4133	0x12, 0x12, 0x0a, 0x0e, 0x4b, 0x45, 0x59, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x4f, 0x4d, 0x49,
4134	0x53, 0x45, 0x10, 0x01, 0x12, 0x24, 0x0a, 0x20, 0x43, 0x45, 0x52, 0x54, 0x49, 0x46, 0x49, 0x43,
4135	0x41, 0x54, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x4f,
4136	0x4d, 0x50, 0x52, 0x4f, 0x4d, 0x49, 0x53, 0x45, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x46,
4137	0x46, 0x49, 0x4c, 0x49, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45,
4138	0x44, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x55, 0x50, 0x45, 0x52, 0x53, 0x45, 0x44, 0x45,
4139	0x44, 0x10, 0x04, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x45, 0x53, 0x53, 0x41, 0x54, 0x49, 0x4f, 0x4e,
4140	0x5f, 0x4f, 0x46, 0x5f, 0x4f, 0x50, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x05, 0x12,
4141	0x14, 0x0a, 0x10, 0x43, 0x45, 0x52, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x45, 0x5f, 0x48,
4142	0x4f, 0x4c, 0x44, 0x10, 0x06, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x52, 0x49, 0x56, 0x49, 0x4c, 0x45,
4143	0x47, 0x45, 0x5f, 0x57, 0x49, 0x54, 0x48, 0x44, 0x52, 0x41, 0x57, 0x4e, 0x10, 0x07, 0x12, 0x22,
4144	0x0a, 0x1e, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x45, 0x5f, 0x41, 0x55, 0x54, 0x48,
4145	0x4f, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x4f, 0x4d, 0x49, 0x53, 0x45,
4146	0x10, 0x08, 0x42, 0x9f, 0x02, 0x0a, 0x2b, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
4147	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
4148	0x2e, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
4149	0x61, 0x31, 0x42, 0x17, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x61, 0x52, 0x65, 0x73,
4150	0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x50, 0x67,
4151	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67,
4152	0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
4153	0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x73, 0x65, 0x63, 0x75, 0x72,
4154	0x69, 0x74, 0x79, 0x2f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0x2f, 0x76, 0x31,
4155	0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x63, 0x61, 0xf8,
4156	0x01, 0x01, 0xaa, 0x02, 0x27, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75,
4157	0x64, 0x2e, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x50, 0x72, 0x69, 0x76, 0x61,
4158	0x74, 0x65, 0x43, 0x41, 0x2e, 0x56, 0x31, 0x42, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x27, 0x47,
4159	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x53, 0x65, 0x63, 0x75,
4160	0x72, 0x69, 0x74, 0x79, 0x5c, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x41, 0x5c, 0x56,
4161	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xea, 0x02, 0x2b, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a,
4162	0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79,
4163	0x3a, 0x3a, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x41, 0x3a, 0x3a, 0x56, 0x31, 0x62,
4164	0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
4165}
4166
4167var (
4168	file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescOnce sync.Once
4169	file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescData = file_google_cloud_security_privateca_v1beta1_resources_proto_rawDesc
4170)
4171
4172func file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescGZIP() []byte {
4173	file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescOnce.Do(func() {
4174		file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescData)
4175	})
4176	return file_google_cloud_security_privateca_v1beta1_resources_proto_rawDescData
4177}
4178
4179var file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes = make([]protoimpl.EnumInfo, 7)
4180var file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes = make([]protoimpl.MessageInfo, 36)
4181var file_google_cloud_security_privateca_v1beta1_resources_proto_goTypes = []interface{}{
4182	(RevocationReason)(0),                                   // 0: google.cloud.security.privateca.v1beta1.RevocationReason
4183	(CertificateAuthority_Type)(0),                          // 1: google.cloud.security.privateca.v1beta1.CertificateAuthority.Type
4184	(CertificateAuthority_Tier)(0),                          // 2: google.cloud.security.privateca.v1beta1.CertificateAuthority.Tier
4185	(CertificateAuthority_State)(0),                         // 3: google.cloud.security.privateca.v1beta1.CertificateAuthority.State
4186	(CertificateAuthority_SignHashAlgorithm)(0),             // 4: google.cloud.security.privateca.v1beta1.CertificateAuthority.SignHashAlgorithm
4187	(CertificateRevocationList_State)(0),                    // 5: google.cloud.security.privateca.v1beta1.CertificateRevocationList.State
4188	(PublicKey_KeyType)(0),                                  // 6: google.cloud.security.privateca.v1beta1.PublicKey.KeyType
4189	(*CertificateAuthority)(nil),                            // 7: google.cloud.security.privateca.v1beta1.CertificateAuthority
4190	(*CertificateRevocationList)(nil),                       // 8: google.cloud.security.privateca.v1beta1.CertificateRevocationList
4191	(*Certificate)(nil),                                     // 9: google.cloud.security.privateca.v1beta1.Certificate
4192	(*ReusableConfig)(nil),                                  // 10: google.cloud.security.privateca.v1beta1.ReusableConfig
4193	(*ReusableConfigValues)(nil),                            // 11: google.cloud.security.privateca.v1beta1.ReusableConfigValues
4194	(*ReusableConfigWrapper)(nil),                           // 12: google.cloud.security.privateca.v1beta1.ReusableConfigWrapper
4195	(*SubordinateConfig)(nil),                               // 13: google.cloud.security.privateca.v1beta1.SubordinateConfig
4196	(*PublicKey)(nil),                                       // 14: google.cloud.security.privateca.v1beta1.PublicKey
4197	(*CertificateConfig)(nil),                               // 15: google.cloud.security.privateca.v1beta1.CertificateConfig
4198	(*CertificateDescription)(nil),                          // 16: google.cloud.security.privateca.v1beta1.CertificateDescription
4199	(*ObjectId)(nil),                                        // 17: google.cloud.security.privateca.v1beta1.ObjectId
4200	(*X509Extension)(nil),                                   // 18: google.cloud.security.privateca.v1beta1.X509Extension
4201	(*KeyUsage)(nil),                                        // 19: google.cloud.security.privateca.v1beta1.KeyUsage
4202	(*Subject)(nil),                                         // 20: google.cloud.security.privateca.v1beta1.Subject
4203	(*SubjectAltNames)(nil),                                 // 21: google.cloud.security.privateca.v1beta1.SubjectAltNames
4204	(*CertificateAuthority_IssuingOptions)(nil),             // 22: google.cloud.security.privateca.v1beta1.CertificateAuthority.IssuingOptions
4205	(*CertificateAuthority_CertificateAuthorityPolicy)(nil), // 23: google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy
4206	(*CertificateAuthority_AccessUrls)(nil),                 // 24: google.cloud.security.privateca.v1beta1.CertificateAuthority.AccessUrls
4207	(*CertificateAuthority_KeyVersionSpec)(nil),             // 25: google.cloud.security.privateca.v1beta1.CertificateAuthority.KeyVersionSpec
4208	nil, // 26: google.cloud.security.privateca.v1beta1.CertificateAuthority.LabelsEntry
4209	(*CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList)(nil),      // 27: google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.AllowedConfigList
4210	(*CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames)(nil), // 28: google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.AllowedSubjectAltNames
4211	(*CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes)(nil),          // 29: google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.IssuanceModes
4212	(*CertificateRevocationList_RevokedCertificate)(nil),                           // 30: google.cloud.security.privateca.v1beta1.CertificateRevocationList.RevokedCertificate
4213	nil,                                    // 31: google.cloud.security.privateca.v1beta1.CertificateRevocationList.LabelsEntry
4214	(*Certificate_RevocationDetails)(nil),  // 32: google.cloud.security.privateca.v1beta1.Certificate.RevocationDetails
4215	nil,                                    // 33: google.cloud.security.privateca.v1beta1.Certificate.LabelsEntry
4216	nil,                                    // 34: google.cloud.security.privateca.v1beta1.ReusableConfig.LabelsEntry
4217	(*ReusableConfigValues_CaOptions)(nil), // 35: google.cloud.security.privateca.v1beta1.ReusableConfigValues.CaOptions
4218	(*SubordinateConfig_SubordinateConfigChain)(nil),      // 36: google.cloud.security.privateca.v1beta1.SubordinateConfig.SubordinateConfigChain
4219	(*CertificateConfig_SubjectConfig)(nil),               // 37: google.cloud.security.privateca.v1beta1.CertificateConfig.SubjectConfig
4220	(*CertificateDescription_SubjectDescription)(nil),     // 38: google.cloud.security.privateca.v1beta1.CertificateDescription.SubjectDescription
4221	(*CertificateDescription_KeyId)(nil),                  // 39: google.cloud.security.privateca.v1beta1.CertificateDescription.KeyId
4222	(*CertificateDescription_CertificateFingerprint)(nil), // 40: google.cloud.security.privateca.v1beta1.CertificateDescription.CertificateFingerprint
4223	(*KeyUsage_KeyUsageOptions)(nil),                      // 41: google.cloud.security.privateca.v1beta1.KeyUsage.KeyUsageOptions
4224	(*KeyUsage_ExtendedKeyUsageOptions)(nil),              // 42: google.cloud.security.privateca.v1beta1.KeyUsage.ExtendedKeyUsageOptions
4225	(*durationpb.Duration)(nil),                           // 43: google.protobuf.Duration
4226	(*timestamppb.Timestamp)(nil),                         // 44: google.protobuf.Timestamp
4227	(*wrapperspb.BoolValue)(nil),                          // 45: google.protobuf.BoolValue
4228	(*wrapperspb.Int32Value)(nil),                         // 46: google.protobuf.Int32Value
4229}
4230var file_google_cloud_security_privateca_v1beta1_resources_proto_depIdxs = []int32{
4231	1,  // 0: google.cloud.security.privateca.v1beta1.CertificateAuthority.type:type_name -> google.cloud.security.privateca.v1beta1.CertificateAuthority.Type
4232	2,  // 1: google.cloud.security.privateca.v1beta1.CertificateAuthority.tier:type_name -> google.cloud.security.privateca.v1beta1.CertificateAuthority.Tier
4233	15, // 2: google.cloud.security.privateca.v1beta1.CertificateAuthority.config:type_name -> google.cloud.security.privateca.v1beta1.CertificateConfig
4234	43, // 3: google.cloud.security.privateca.v1beta1.CertificateAuthority.lifetime:type_name -> google.protobuf.Duration
4235	25, // 4: google.cloud.security.privateca.v1beta1.CertificateAuthority.key_spec:type_name -> google.cloud.security.privateca.v1beta1.CertificateAuthority.KeyVersionSpec
4236	23, // 5: google.cloud.security.privateca.v1beta1.CertificateAuthority.certificate_policy:type_name -> google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy
4237	22, // 6: google.cloud.security.privateca.v1beta1.CertificateAuthority.issuing_options:type_name -> google.cloud.security.privateca.v1beta1.CertificateAuthority.IssuingOptions
4238	13, // 7: google.cloud.security.privateca.v1beta1.CertificateAuthority.subordinate_config:type_name -> google.cloud.security.privateca.v1beta1.SubordinateConfig
4239	3,  // 8: google.cloud.security.privateca.v1beta1.CertificateAuthority.state:type_name -> google.cloud.security.privateca.v1beta1.CertificateAuthority.State
4240	16, // 9: google.cloud.security.privateca.v1beta1.CertificateAuthority.ca_certificate_descriptions:type_name -> google.cloud.security.privateca.v1beta1.CertificateDescription
4241	24, // 10: google.cloud.security.privateca.v1beta1.CertificateAuthority.access_urls:type_name -> google.cloud.security.privateca.v1beta1.CertificateAuthority.AccessUrls
4242	44, // 11: google.cloud.security.privateca.v1beta1.CertificateAuthority.create_time:type_name -> google.protobuf.Timestamp
4243	44, // 12: google.cloud.security.privateca.v1beta1.CertificateAuthority.update_time:type_name -> google.protobuf.Timestamp
4244	44, // 13: google.cloud.security.privateca.v1beta1.CertificateAuthority.delete_time:type_name -> google.protobuf.Timestamp
4245	26, // 14: google.cloud.security.privateca.v1beta1.CertificateAuthority.labels:type_name -> google.cloud.security.privateca.v1beta1.CertificateAuthority.LabelsEntry
4246	30, // 15: google.cloud.security.privateca.v1beta1.CertificateRevocationList.revoked_certificates:type_name -> google.cloud.security.privateca.v1beta1.CertificateRevocationList.RevokedCertificate
4247	5,  // 16: google.cloud.security.privateca.v1beta1.CertificateRevocationList.state:type_name -> google.cloud.security.privateca.v1beta1.CertificateRevocationList.State
4248	44, // 17: google.cloud.security.privateca.v1beta1.CertificateRevocationList.create_time:type_name -> google.protobuf.Timestamp
4249	44, // 18: google.cloud.security.privateca.v1beta1.CertificateRevocationList.update_time:type_name -> google.protobuf.Timestamp
4250	31, // 19: google.cloud.security.privateca.v1beta1.CertificateRevocationList.labels:type_name -> google.cloud.security.privateca.v1beta1.CertificateRevocationList.LabelsEntry
4251	15, // 20: google.cloud.security.privateca.v1beta1.Certificate.config:type_name -> google.cloud.security.privateca.v1beta1.CertificateConfig
4252	43, // 21: google.cloud.security.privateca.v1beta1.Certificate.lifetime:type_name -> google.protobuf.Duration
4253	32, // 22: google.cloud.security.privateca.v1beta1.Certificate.revocation_details:type_name -> google.cloud.security.privateca.v1beta1.Certificate.RevocationDetails
4254	16, // 23: google.cloud.security.privateca.v1beta1.Certificate.certificate_description:type_name -> google.cloud.security.privateca.v1beta1.CertificateDescription
4255	44, // 24: google.cloud.security.privateca.v1beta1.Certificate.create_time:type_name -> google.protobuf.Timestamp
4256	44, // 25: google.cloud.security.privateca.v1beta1.Certificate.update_time:type_name -> google.protobuf.Timestamp
4257	33, // 26: google.cloud.security.privateca.v1beta1.Certificate.labels:type_name -> google.cloud.security.privateca.v1beta1.Certificate.LabelsEntry
4258	11, // 27: google.cloud.security.privateca.v1beta1.ReusableConfig.values:type_name -> google.cloud.security.privateca.v1beta1.ReusableConfigValues
4259	44, // 28: google.cloud.security.privateca.v1beta1.ReusableConfig.create_time:type_name -> google.protobuf.Timestamp
4260	44, // 29: google.cloud.security.privateca.v1beta1.ReusableConfig.update_time:type_name -> google.protobuf.Timestamp
4261	34, // 30: google.cloud.security.privateca.v1beta1.ReusableConfig.labels:type_name -> google.cloud.security.privateca.v1beta1.ReusableConfig.LabelsEntry
4262	19, // 31: google.cloud.security.privateca.v1beta1.ReusableConfigValues.key_usage:type_name -> google.cloud.security.privateca.v1beta1.KeyUsage
4263	35, // 32: google.cloud.security.privateca.v1beta1.ReusableConfigValues.ca_options:type_name -> google.cloud.security.privateca.v1beta1.ReusableConfigValues.CaOptions
4264	17, // 33: google.cloud.security.privateca.v1beta1.ReusableConfigValues.policy_ids:type_name -> google.cloud.security.privateca.v1beta1.ObjectId
4265	18, // 34: google.cloud.security.privateca.v1beta1.ReusableConfigValues.additional_extensions:type_name -> google.cloud.security.privateca.v1beta1.X509Extension
4266	11, // 35: google.cloud.security.privateca.v1beta1.ReusableConfigWrapper.reusable_config_values:type_name -> google.cloud.security.privateca.v1beta1.ReusableConfigValues
4267	36, // 36: google.cloud.security.privateca.v1beta1.SubordinateConfig.pem_issuer_chain:type_name -> google.cloud.security.privateca.v1beta1.SubordinateConfig.SubordinateConfigChain
4268	6,  // 37: google.cloud.security.privateca.v1beta1.PublicKey.type:type_name -> google.cloud.security.privateca.v1beta1.PublicKey.KeyType
4269	37, // 38: google.cloud.security.privateca.v1beta1.CertificateConfig.subject_config:type_name -> google.cloud.security.privateca.v1beta1.CertificateConfig.SubjectConfig
4270	12, // 39: google.cloud.security.privateca.v1beta1.CertificateConfig.reusable_config:type_name -> google.cloud.security.privateca.v1beta1.ReusableConfigWrapper
4271	14, // 40: google.cloud.security.privateca.v1beta1.CertificateConfig.public_key:type_name -> google.cloud.security.privateca.v1beta1.PublicKey
4272	38, // 41: google.cloud.security.privateca.v1beta1.CertificateDescription.subject_description:type_name -> google.cloud.security.privateca.v1beta1.CertificateDescription.SubjectDescription
4273	11, // 42: google.cloud.security.privateca.v1beta1.CertificateDescription.config_values:type_name -> google.cloud.security.privateca.v1beta1.ReusableConfigValues
4274	14, // 43: google.cloud.security.privateca.v1beta1.CertificateDescription.public_key:type_name -> google.cloud.security.privateca.v1beta1.PublicKey
4275	39, // 44: google.cloud.security.privateca.v1beta1.CertificateDescription.subject_key_id:type_name -> google.cloud.security.privateca.v1beta1.CertificateDescription.KeyId
4276	39, // 45: google.cloud.security.privateca.v1beta1.CertificateDescription.authority_key_id:type_name -> google.cloud.security.privateca.v1beta1.CertificateDescription.KeyId
4277	40, // 46: google.cloud.security.privateca.v1beta1.CertificateDescription.cert_fingerprint:type_name -> google.cloud.security.privateca.v1beta1.CertificateDescription.CertificateFingerprint
4278	17, // 47: google.cloud.security.privateca.v1beta1.X509Extension.object_id:type_name -> google.cloud.security.privateca.v1beta1.ObjectId
4279	41, // 48: google.cloud.security.privateca.v1beta1.KeyUsage.base_key_usage:type_name -> google.cloud.security.privateca.v1beta1.KeyUsage.KeyUsageOptions
4280	42, // 49: google.cloud.security.privateca.v1beta1.KeyUsage.extended_key_usage:type_name -> google.cloud.security.privateca.v1beta1.KeyUsage.ExtendedKeyUsageOptions
4281	17, // 50: google.cloud.security.privateca.v1beta1.KeyUsage.unknown_extended_key_usages:type_name -> google.cloud.security.privateca.v1beta1.ObjectId
4282	18, // 51: google.cloud.security.privateca.v1beta1.SubjectAltNames.custom_sans:type_name -> google.cloud.security.privateca.v1beta1.X509Extension
4283	27, // 52: google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.allowed_config_list:type_name -> google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.AllowedConfigList
4284	12, // 53: google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.overwrite_config_values:type_name -> google.cloud.security.privateca.v1beta1.ReusableConfigWrapper
4285	20, // 54: google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.allowed_locations_and_organizations:type_name -> google.cloud.security.privateca.v1beta1.Subject
4286	28, // 55: google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.allowed_sans:type_name -> google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.AllowedSubjectAltNames
4287	43, // 56: google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.maximum_lifetime:type_name -> google.protobuf.Duration
4288	29, // 57: google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.allowed_issuance_modes:type_name -> google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.IssuanceModes
4289	4,  // 58: google.cloud.security.privateca.v1beta1.CertificateAuthority.KeyVersionSpec.algorithm:type_name -> google.cloud.security.privateca.v1beta1.CertificateAuthority.SignHashAlgorithm
4290	12, // 59: google.cloud.security.privateca.v1beta1.CertificateAuthority.CertificateAuthorityPolicy.AllowedConfigList.allowed_config_values:type_name -> google.cloud.security.privateca.v1beta1.ReusableConfigWrapper
4291	0,  // 60: google.cloud.security.privateca.v1beta1.CertificateRevocationList.RevokedCertificate.revocation_reason:type_name -> google.cloud.security.privateca.v1beta1.RevocationReason
4292	0,  // 61: google.cloud.security.privateca.v1beta1.Certificate.RevocationDetails.revocation_state:type_name -> google.cloud.security.privateca.v1beta1.RevocationReason
4293	44, // 62: google.cloud.security.privateca.v1beta1.Certificate.RevocationDetails.revocation_time:type_name -> google.protobuf.Timestamp
4294	45, // 63: google.cloud.security.privateca.v1beta1.ReusableConfigValues.CaOptions.is_ca:type_name -> google.protobuf.BoolValue
4295	46, // 64: google.cloud.security.privateca.v1beta1.ReusableConfigValues.CaOptions.max_issuer_path_length:type_name -> google.protobuf.Int32Value
4296	20, // 65: google.cloud.security.privateca.v1beta1.CertificateConfig.SubjectConfig.subject:type_name -> google.cloud.security.privateca.v1beta1.Subject
4297	21, // 66: google.cloud.security.privateca.v1beta1.CertificateConfig.SubjectConfig.subject_alt_name:type_name -> google.cloud.security.privateca.v1beta1.SubjectAltNames
4298	20, // 67: google.cloud.security.privateca.v1beta1.CertificateDescription.SubjectDescription.subject:type_name -> google.cloud.security.privateca.v1beta1.Subject
4299	21, // 68: google.cloud.security.privateca.v1beta1.CertificateDescription.SubjectDescription.subject_alt_name:type_name -> google.cloud.security.privateca.v1beta1.SubjectAltNames
4300	43, // 69: google.cloud.security.privateca.v1beta1.CertificateDescription.SubjectDescription.lifetime:type_name -> google.protobuf.Duration
4301	44, // 70: google.cloud.security.privateca.v1beta1.CertificateDescription.SubjectDescription.not_before_time:type_name -> google.protobuf.Timestamp
4302	44, // 71: google.cloud.security.privateca.v1beta1.CertificateDescription.SubjectDescription.not_after_time:type_name -> google.protobuf.Timestamp
4303	72, // [72:72] is the sub-list for method output_type
4304	72, // [72:72] is the sub-list for method input_type
4305	72, // [72:72] is the sub-list for extension type_name
4306	72, // [72:72] is the sub-list for extension extendee
4307	0,  // [0:72] is the sub-list for field type_name
4308}
4309
4310func init() { file_google_cloud_security_privateca_v1beta1_resources_proto_init() }
4311func file_google_cloud_security_privateca_v1beta1_resources_proto_init() {
4312	if File_google_cloud_security_privateca_v1beta1_resources_proto != nil {
4313		return
4314	}
4315	if !protoimpl.UnsafeEnabled {
4316		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
4317			switch v := v.(*CertificateAuthority); i {
4318			case 0:
4319				return &v.state
4320			case 1:
4321				return &v.sizeCache
4322			case 2:
4323				return &v.unknownFields
4324			default:
4325				return nil
4326			}
4327		}
4328		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
4329			switch v := v.(*CertificateRevocationList); i {
4330			case 0:
4331				return &v.state
4332			case 1:
4333				return &v.sizeCache
4334			case 2:
4335				return &v.unknownFields
4336			default:
4337				return nil
4338			}
4339		}
4340		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
4341			switch v := v.(*Certificate); i {
4342			case 0:
4343				return &v.state
4344			case 1:
4345				return &v.sizeCache
4346			case 2:
4347				return &v.unknownFields
4348			default:
4349				return nil
4350			}
4351		}
4352		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
4353			switch v := v.(*ReusableConfig); i {
4354			case 0:
4355				return &v.state
4356			case 1:
4357				return &v.sizeCache
4358			case 2:
4359				return &v.unknownFields
4360			default:
4361				return nil
4362			}
4363		}
4364		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
4365			switch v := v.(*ReusableConfigValues); i {
4366			case 0:
4367				return &v.state
4368			case 1:
4369				return &v.sizeCache
4370			case 2:
4371				return &v.unknownFields
4372			default:
4373				return nil
4374			}
4375		}
4376		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
4377			switch v := v.(*ReusableConfigWrapper); i {
4378			case 0:
4379				return &v.state
4380			case 1:
4381				return &v.sizeCache
4382			case 2:
4383				return &v.unknownFields
4384			default:
4385				return nil
4386			}
4387		}
4388		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
4389			switch v := v.(*SubordinateConfig); i {
4390			case 0:
4391				return &v.state
4392			case 1:
4393				return &v.sizeCache
4394			case 2:
4395				return &v.unknownFields
4396			default:
4397				return nil
4398			}
4399		}
4400		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
4401			switch v := v.(*PublicKey); i {
4402			case 0:
4403				return &v.state
4404			case 1:
4405				return &v.sizeCache
4406			case 2:
4407				return &v.unknownFields
4408			default:
4409				return nil
4410			}
4411		}
4412		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
4413			switch v := v.(*CertificateConfig); i {
4414			case 0:
4415				return &v.state
4416			case 1:
4417				return &v.sizeCache
4418			case 2:
4419				return &v.unknownFields
4420			default:
4421				return nil
4422			}
4423		}
4424		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
4425			switch v := v.(*CertificateDescription); i {
4426			case 0:
4427				return &v.state
4428			case 1:
4429				return &v.sizeCache
4430			case 2:
4431				return &v.unknownFields
4432			default:
4433				return nil
4434			}
4435		}
4436		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
4437			switch v := v.(*ObjectId); i {
4438			case 0:
4439				return &v.state
4440			case 1:
4441				return &v.sizeCache
4442			case 2:
4443				return &v.unknownFields
4444			default:
4445				return nil
4446			}
4447		}
4448		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
4449			switch v := v.(*X509Extension); i {
4450			case 0:
4451				return &v.state
4452			case 1:
4453				return &v.sizeCache
4454			case 2:
4455				return &v.unknownFields
4456			default:
4457				return nil
4458			}
4459		}
4460		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
4461			switch v := v.(*KeyUsage); i {
4462			case 0:
4463				return &v.state
4464			case 1:
4465				return &v.sizeCache
4466			case 2:
4467				return &v.unknownFields
4468			default:
4469				return nil
4470			}
4471		}
4472		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
4473			switch v := v.(*Subject); i {
4474			case 0:
4475				return &v.state
4476			case 1:
4477				return &v.sizeCache
4478			case 2:
4479				return &v.unknownFields
4480			default:
4481				return nil
4482			}
4483		}
4484		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
4485			switch v := v.(*SubjectAltNames); i {
4486			case 0:
4487				return &v.state
4488			case 1:
4489				return &v.sizeCache
4490			case 2:
4491				return &v.unknownFields
4492			default:
4493				return nil
4494			}
4495		}
4496		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
4497			switch v := v.(*CertificateAuthority_IssuingOptions); i {
4498			case 0:
4499				return &v.state
4500			case 1:
4501				return &v.sizeCache
4502			case 2:
4503				return &v.unknownFields
4504			default:
4505				return nil
4506			}
4507		}
4508		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
4509			switch v := v.(*CertificateAuthority_CertificateAuthorityPolicy); i {
4510			case 0:
4511				return &v.state
4512			case 1:
4513				return &v.sizeCache
4514			case 2:
4515				return &v.unknownFields
4516			default:
4517				return nil
4518			}
4519		}
4520		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
4521			switch v := v.(*CertificateAuthority_AccessUrls); i {
4522			case 0:
4523				return &v.state
4524			case 1:
4525				return &v.sizeCache
4526			case 2:
4527				return &v.unknownFields
4528			default:
4529				return nil
4530			}
4531		}
4532		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
4533			switch v := v.(*CertificateAuthority_KeyVersionSpec); i {
4534			case 0:
4535				return &v.state
4536			case 1:
4537				return &v.sizeCache
4538			case 2:
4539				return &v.unknownFields
4540			default:
4541				return nil
4542			}
4543		}
4544		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
4545			switch v := v.(*CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList); i {
4546			case 0:
4547				return &v.state
4548			case 1:
4549				return &v.sizeCache
4550			case 2:
4551				return &v.unknownFields
4552			default:
4553				return nil
4554			}
4555		}
4556		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
4557			switch v := v.(*CertificateAuthority_CertificateAuthorityPolicy_AllowedSubjectAltNames); i {
4558			case 0:
4559				return &v.state
4560			case 1:
4561				return &v.sizeCache
4562			case 2:
4563				return &v.unknownFields
4564			default:
4565				return nil
4566			}
4567		}
4568		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
4569			switch v := v.(*CertificateAuthority_CertificateAuthorityPolicy_IssuanceModes); i {
4570			case 0:
4571				return &v.state
4572			case 1:
4573				return &v.sizeCache
4574			case 2:
4575				return &v.unknownFields
4576			default:
4577				return nil
4578			}
4579		}
4580		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
4581			switch v := v.(*CertificateRevocationList_RevokedCertificate); i {
4582			case 0:
4583				return &v.state
4584			case 1:
4585				return &v.sizeCache
4586			case 2:
4587				return &v.unknownFields
4588			default:
4589				return nil
4590			}
4591		}
4592		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
4593			switch v := v.(*Certificate_RevocationDetails); i {
4594			case 0:
4595				return &v.state
4596			case 1:
4597				return &v.sizeCache
4598			case 2:
4599				return &v.unknownFields
4600			default:
4601				return nil
4602			}
4603		}
4604		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
4605			switch v := v.(*ReusableConfigValues_CaOptions); i {
4606			case 0:
4607				return &v.state
4608			case 1:
4609				return &v.sizeCache
4610			case 2:
4611				return &v.unknownFields
4612			default:
4613				return nil
4614			}
4615		}
4616		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
4617			switch v := v.(*SubordinateConfig_SubordinateConfigChain); i {
4618			case 0:
4619				return &v.state
4620			case 1:
4621				return &v.sizeCache
4622			case 2:
4623				return &v.unknownFields
4624			default:
4625				return nil
4626			}
4627		}
4628		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
4629			switch v := v.(*CertificateConfig_SubjectConfig); i {
4630			case 0:
4631				return &v.state
4632			case 1:
4633				return &v.sizeCache
4634			case 2:
4635				return &v.unknownFields
4636			default:
4637				return nil
4638			}
4639		}
4640		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
4641			switch v := v.(*CertificateDescription_SubjectDescription); i {
4642			case 0:
4643				return &v.state
4644			case 1:
4645				return &v.sizeCache
4646			case 2:
4647				return &v.unknownFields
4648			default:
4649				return nil
4650			}
4651		}
4652		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
4653			switch v := v.(*CertificateDescription_KeyId); i {
4654			case 0:
4655				return &v.state
4656			case 1:
4657				return &v.sizeCache
4658			case 2:
4659				return &v.unknownFields
4660			default:
4661				return nil
4662			}
4663		}
4664		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
4665			switch v := v.(*CertificateDescription_CertificateFingerprint); i {
4666			case 0:
4667				return &v.state
4668			case 1:
4669				return &v.sizeCache
4670			case 2:
4671				return &v.unknownFields
4672			default:
4673				return nil
4674			}
4675		}
4676		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
4677			switch v := v.(*KeyUsage_KeyUsageOptions); i {
4678			case 0:
4679				return &v.state
4680			case 1:
4681				return &v.sizeCache
4682			case 2:
4683				return &v.unknownFields
4684			default:
4685				return nil
4686			}
4687		}
4688		file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
4689			switch v := v.(*KeyUsage_ExtendedKeyUsageOptions); i {
4690			case 0:
4691				return &v.state
4692			case 1:
4693				return &v.sizeCache
4694			case 2:
4695				return &v.unknownFields
4696			default:
4697				return nil
4698			}
4699		}
4700	}
4701	file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[2].OneofWrappers = []interface{}{
4702		(*Certificate_PemCsr)(nil),
4703		(*Certificate_Config)(nil),
4704	}
4705	file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[5].OneofWrappers = []interface{}{
4706		(*ReusableConfigWrapper_ReusableConfig)(nil),
4707		(*ReusableConfigWrapper_ReusableConfigValues)(nil),
4708	}
4709	file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[6].OneofWrappers = []interface{}{
4710		(*SubordinateConfig_CertificateAuthority)(nil),
4711		(*SubordinateConfig_PemIssuerChain)(nil),
4712	}
4713	file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[16].OneofWrappers = []interface{}{
4714		(*CertificateAuthority_CertificateAuthorityPolicy_AllowedConfigList_)(nil),
4715		(*CertificateAuthority_CertificateAuthorityPolicy_OverwriteConfigValues)(nil),
4716	}
4717	file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes[18].OneofWrappers = []interface{}{
4718		(*CertificateAuthority_KeyVersionSpec_CloudKmsKeyVersion)(nil),
4719		(*CertificateAuthority_KeyVersionSpec_Algorithm)(nil),
4720	}
4721	type x struct{}
4722	out := protoimpl.TypeBuilder{
4723		File: protoimpl.DescBuilder{
4724			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
4725			RawDescriptor: file_google_cloud_security_privateca_v1beta1_resources_proto_rawDesc,
4726			NumEnums:      7,
4727			NumMessages:   36,
4728			NumExtensions: 0,
4729			NumServices:   0,
4730		},
4731		GoTypes:           file_google_cloud_security_privateca_v1beta1_resources_proto_goTypes,
4732		DependencyIndexes: file_google_cloud_security_privateca_v1beta1_resources_proto_depIdxs,
4733		EnumInfos:         file_google_cloud_security_privateca_v1beta1_resources_proto_enumTypes,
4734		MessageInfos:      file_google_cloud_security_privateca_v1beta1_resources_proto_msgTypes,
4735	}.Build()
4736	File_google_cloud_security_privateca_v1beta1_resources_proto = out.File
4737	file_google_cloud_security_privateca_v1beta1_resources_proto_rawDesc = nil
4738	file_google_cloud_security_privateca_v1beta1_resources_proto_goTypes = nil
4739	file_google_cloud_security_privateca_v1beta1_resources_proto_depIdxs = nil
4740}
4741