1// Code generated by protoc-gen-go. DO NOT EDIT.
2// source: google/cloud/dataproc/v1/clusters.proto
3
4package dataproc // import "google.golang.org/genproto/googleapis/cloud/dataproc/v1"
5
6import proto "github.com/golang/protobuf/proto"
7import fmt "fmt"
8import math "math"
9import duration "github.com/golang/protobuf/ptypes/duration"
10import timestamp "github.com/golang/protobuf/ptypes/timestamp"
11import _ "google.golang.org/genproto/googleapis/api/annotations"
12import longrunning "google.golang.org/genproto/googleapis/longrunning"
13import field_mask "google.golang.org/genproto/protobuf/field_mask"
14
15import (
16	context "golang.org/x/net/context"
17	grpc "google.golang.org/grpc"
18)
19
20// Reference imports to suppress errors if they are not otherwise used.
21var _ = proto.Marshal
22var _ = fmt.Errorf
23var _ = math.Inf
24
25// This is a compile-time assertion to ensure that this generated file
26// is compatible with the proto package it is being compiled against.
27// A compilation error at this line likely means your copy of the
28// proto package needs to be updated.
29const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
30
31// The cluster state.
32type ClusterStatus_State int32
33
34const (
35	// The cluster state is unknown.
36	ClusterStatus_UNKNOWN ClusterStatus_State = 0
37	// The cluster is being created and set up. It is not ready for use.
38	ClusterStatus_CREATING ClusterStatus_State = 1
39	// The cluster is currently running and healthy. It is ready for use.
40	ClusterStatus_RUNNING ClusterStatus_State = 2
41	// The cluster encountered an error. It is not ready for use.
42	ClusterStatus_ERROR ClusterStatus_State = 3
43	// The cluster is being deleted. It cannot be used.
44	ClusterStatus_DELETING ClusterStatus_State = 4
45	// The cluster is being updated. It continues to accept and process jobs.
46	ClusterStatus_UPDATING ClusterStatus_State = 5
47)
48
49var ClusterStatus_State_name = map[int32]string{
50	0: "UNKNOWN",
51	1: "CREATING",
52	2: "RUNNING",
53	3: "ERROR",
54	4: "DELETING",
55	5: "UPDATING",
56}
57var ClusterStatus_State_value = map[string]int32{
58	"UNKNOWN":  0,
59	"CREATING": 1,
60	"RUNNING":  2,
61	"ERROR":    3,
62	"DELETING": 4,
63	"UPDATING": 5,
64}
65
66func (x ClusterStatus_State) String() string {
67	return proto.EnumName(ClusterStatus_State_name, int32(x))
68}
69func (ClusterStatus_State) EnumDescriptor() ([]byte, []int) {
70	return fileDescriptor_clusters_eb8dcc455338db63, []int{9, 0}
71}
72
73// The cluster substate.
74type ClusterStatus_Substate int32
75
76const (
77	// The cluster substate is unknown.
78	ClusterStatus_UNSPECIFIED ClusterStatus_Substate = 0
79	// The cluster is known to be in an unhealthy state
80	// (for example, critical daemons are not running or HDFS capacity is
81	// exhausted).
82	//
83	// Applies to RUNNING state.
84	ClusterStatus_UNHEALTHY ClusterStatus_Substate = 1
85	// The agent-reported status is out of date (may occur if
86	// Cloud Dataproc loses communication with Agent).
87	//
88	// Applies to RUNNING state.
89	ClusterStatus_STALE_STATUS ClusterStatus_Substate = 2
90)
91
92var ClusterStatus_Substate_name = map[int32]string{
93	0: "UNSPECIFIED",
94	1: "UNHEALTHY",
95	2: "STALE_STATUS",
96}
97var ClusterStatus_Substate_value = map[string]int32{
98	"UNSPECIFIED":  0,
99	"UNHEALTHY":    1,
100	"STALE_STATUS": 2,
101}
102
103func (x ClusterStatus_Substate) String() string {
104	return proto.EnumName(ClusterStatus_Substate_name, int32(x))
105}
106func (ClusterStatus_Substate) EnumDescriptor() ([]byte, []int) {
107	return fileDescriptor_clusters_eb8dcc455338db63, []int{9, 1}
108}
109
110// Describes the identifying information, config, and status of
111// a cluster of Compute Engine instances.
112type Cluster struct {
113	// Required. The Google Cloud Platform project ID that the cluster belongs to.
114	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
115	// Required. The cluster name. Cluster names within a project must be
116	// unique. Names of deleted clusters can be reused.
117	ClusterName string `protobuf:"bytes,2,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
118	// Required. The cluster config. Note that Cloud Dataproc may set
119	// default values, and values may change when clusters are updated.
120	Config *ClusterConfig `protobuf:"bytes,3,opt,name=config,proto3" json:"config,omitempty"`
121	// Optional. The labels to associate with this cluster.
122	// Label **keys** must contain 1 to 63 characters, and must conform to
123	// [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt).
124	// Label **values** may be empty, but, if present, must contain 1 to 63
125	// characters, and must conform to [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt).
126	// No more than 32 labels can be associated with a cluster.
127	Labels map[string]string `protobuf:"bytes,8,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
128	// Output only. Cluster status.
129	Status *ClusterStatus `protobuf:"bytes,4,opt,name=status,proto3" json:"status,omitempty"`
130	// Output only. The previous cluster status.
131	StatusHistory []*ClusterStatus `protobuf:"bytes,7,rep,name=status_history,json=statusHistory,proto3" json:"status_history,omitempty"`
132	// Output only. A cluster UUID (Unique Universal Identifier). Cloud Dataproc
133	// generates this value when it creates the cluster.
134	ClusterUuid string `protobuf:"bytes,6,opt,name=cluster_uuid,json=clusterUuid,proto3" json:"cluster_uuid,omitempty"`
135	// Contains cluster daemon metrics such as HDFS and YARN stats.
136	//
137	// **Beta Feature**: This report is available for testing purposes only. It may
138	// be changed before final release.
139	Metrics              *ClusterMetrics `protobuf:"bytes,9,opt,name=metrics,proto3" json:"metrics,omitempty"`
140	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
141	XXX_unrecognized     []byte          `json:"-"`
142	XXX_sizecache        int32           `json:"-"`
143}
144
145func (m *Cluster) Reset()         { *m = Cluster{} }
146func (m *Cluster) String() string { return proto.CompactTextString(m) }
147func (*Cluster) ProtoMessage()    {}
148func (*Cluster) Descriptor() ([]byte, []int) {
149	return fileDescriptor_clusters_eb8dcc455338db63, []int{0}
150}
151func (m *Cluster) XXX_Unmarshal(b []byte) error {
152	return xxx_messageInfo_Cluster.Unmarshal(m, b)
153}
154func (m *Cluster) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
155	return xxx_messageInfo_Cluster.Marshal(b, m, deterministic)
156}
157func (dst *Cluster) XXX_Merge(src proto.Message) {
158	xxx_messageInfo_Cluster.Merge(dst, src)
159}
160func (m *Cluster) XXX_Size() int {
161	return xxx_messageInfo_Cluster.Size(m)
162}
163func (m *Cluster) XXX_DiscardUnknown() {
164	xxx_messageInfo_Cluster.DiscardUnknown(m)
165}
166
167var xxx_messageInfo_Cluster proto.InternalMessageInfo
168
169func (m *Cluster) GetProjectId() string {
170	if m != nil {
171		return m.ProjectId
172	}
173	return ""
174}
175
176func (m *Cluster) GetClusterName() string {
177	if m != nil {
178		return m.ClusterName
179	}
180	return ""
181}
182
183func (m *Cluster) GetConfig() *ClusterConfig {
184	if m != nil {
185		return m.Config
186	}
187	return nil
188}
189
190func (m *Cluster) GetLabels() map[string]string {
191	if m != nil {
192		return m.Labels
193	}
194	return nil
195}
196
197func (m *Cluster) GetStatus() *ClusterStatus {
198	if m != nil {
199		return m.Status
200	}
201	return nil
202}
203
204func (m *Cluster) GetStatusHistory() []*ClusterStatus {
205	if m != nil {
206		return m.StatusHistory
207	}
208	return nil
209}
210
211func (m *Cluster) GetClusterUuid() string {
212	if m != nil {
213		return m.ClusterUuid
214	}
215	return ""
216}
217
218func (m *Cluster) GetMetrics() *ClusterMetrics {
219	if m != nil {
220		return m.Metrics
221	}
222	return nil
223}
224
225// The cluster config.
226type ClusterConfig struct {
227	// Optional. A Cloud Storage staging bucket used for sharing generated
228	// SSH keys and config. If you do not specify a staging bucket, Cloud
229	// Dataproc will determine an appropriate Cloud Storage location (US,
230	// ASIA, or EU) for your cluster's staging bucket according to the Google
231	// Compute Engine zone where your cluster is deployed, and then it will create
232	// and manage this project-level, per-location bucket for you.
233	ConfigBucket string `protobuf:"bytes,1,opt,name=config_bucket,json=configBucket,proto3" json:"config_bucket,omitempty"`
234	// Required. The shared Compute Engine config settings for
235	// all instances in a cluster.
236	GceClusterConfig *GceClusterConfig `protobuf:"bytes,8,opt,name=gce_cluster_config,json=gceClusterConfig,proto3" json:"gce_cluster_config,omitempty"`
237	// Optional. The Compute Engine config settings for
238	// the master instance in a cluster.
239	MasterConfig *InstanceGroupConfig `protobuf:"bytes,9,opt,name=master_config,json=masterConfig,proto3" json:"master_config,omitempty"`
240	// Optional. The Compute Engine config settings for
241	// worker instances in a cluster.
242	WorkerConfig *InstanceGroupConfig `protobuf:"bytes,10,opt,name=worker_config,json=workerConfig,proto3" json:"worker_config,omitempty"`
243	// Optional. The Compute Engine config settings for
244	// additional worker instances in a cluster.
245	SecondaryWorkerConfig *InstanceGroupConfig `protobuf:"bytes,12,opt,name=secondary_worker_config,json=secondaryWorkerConfig,proto3" json:"secondary_worker_config,omitempty"`
246	// Optional. The config settings for software inside the cluster.
247	SoftwareConfig *SoftwareConfig `protobuf:"bytes,13,opt,name=software_config,json=softwareConfig,proto3" json:"software_config,omitempty"`
248	// Optional. Commands to execute on each node after config is
249	// completed. By default, executables are run on master and all worker nodes.
250	// You can test a node's `role` metadata to run an executable on
251	// a master or worker node, as shown below using `curl` (you can also use `wget`):
252	//
253	//     ROLE=$(curl -H Metadata-Flavor:Google http://metadata/computeMetadata/v1/instance/attributes/dataproc-role)
254	//     if [[ "${ROLE}" == 'Master' ]]; then
255	//       ... master specific actions ...
256	//     else
257	//       ... worker specific actions ...
258	//     fi
259	InitializationActions []*NodeInitializationAction `protobuf:"bytes,11,rep,name=initialization_actions,json=initializationActions,proto3" json:"initialization_actions,omitempty"`
260	// Optional. Encryption settings for the cluster.
261	EncryptionConfig     *EncryptionConfig `protobuf:"bytes,15,opt,name=encryption_config,json=encryptionConfig,proto3" json:"encryption_config,omitempty"`
262	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
263	XXX_unrecognized     []byte            `json:"-"`
264	XXX_sizecache        int32             `json:"-"`
265}
266
267func (m *ClusterConfig) Reset()         { *m = ClusterConfig{} }
268func (m *ClusterConfig) String() string { return proto.CompactTextString(m) }
269func (*ClusterConfig) ProtoMessage()    {}
270func (*ClusterConfig) Descriptor() ([]byte, []int) {
271	return fileDescriptor_clusters_eb8dcc455338db63, []int{1}
272}
273func (m *ClusterConfig) XXX_Unmarshal(b []byte) error {
274	return xxx_messageInfo_ClusterConfig.Unmarshal(m, b)
275}
276func (m *ClusterConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
277	return xxx_messageInfo_ClusterConfig.Marshal(b, m, deterministic)
278}
279func (dst *ClusterConfig) XXX_Merge(src proto.Message) {
280	xxx_messageInfo_ClusterConfig.Merge(dst, src)
281}
282func (m *ClusterConfig) XXX_Size() int {
283	return xxx_messageInfo_ClusterConfig.Size(m)
284}
285func (m *ClusterConfig) XXX_DiscardUnknown() {
286	xxx_messageInfo_ClusterConfig.DiscardUnknown(m)
287}
288
289var xxx_messageInfo_ClusterConfig proto.InternalMessageInfo
290
291func (m *ClusterConfig) GetConfigBucket() string {
292	if m != nil {
293		return m.ConfigBucket
294	}
295	return ""
296}
297
298func (m *ClusterConfig) GetGceClusterConfig() *GceClusterConfig {
299	if m != nil {
300		return m.GceClusterConfig
301	}
302	return nil
303}
304
305func (m *ClusterConfig) GetMasterConfig() *InstanceGroupConfig {
306	if m != nil {
307		return m.MasterConfig
308	}
309	return nil
310}
311
312func (m *ClusterConfig) GetWorkerConfig() *InstanceGroupConfig {
313	if m != nil {
314		return m.WorkerConfig
315	}
316	return nil
317}
318
319func (m *ClusterConfig) GetSecondaryWorkerConfig() *InstanceGroupConfig {
320	if m != nil {
321		return m.SecondaryWorkerConfig
322	}
323	return nil
324}
325
326func (m *ClusterConfig) GetSoftwareConfig() *SoftwareConfig {
327	if m != nil {
328		return m.SoftwareConfig
329	}
330	return nil
331}
332
333func (m *ClusterConfig) GetInitializationActions() []*NodeInitializationAction {
334	if m != nil {
335		return m.InitializationActions
336	}
337	return nil
338}
339
340func (m *ClusterConfig) GetEncryptionConfig() *EncryptionConfig {
341	if m != nil {
342		return m.EncryptionConfig
343	}
344	return nil
345}
346
347// Encryption settings for the cluster.
348type EncryptionConfig struct {
349	// Optional. The Cloud KMS key name to use for PD disk encryption for all
350	// instances in the cluster.
351	GcePdKmsKeyName      string   `protobuf:"bytes,1,opt,name=gce_pd_kms_key_name,json=gcePdKmsKeyName,proto3" json:"gce_pd_kms_key_name,omitempty"`
352	XXX_NoUnkeyedLiteral struct{} `json:"-"`
353	XXX_unrecognized     []byte   `json:"-"`
354	XXX_sizecache        int32    `json:"-"`
355}
356
357func (m *EncryptionConfig) Reset()         { *m = EncryptionConfig{} }
358func (m *EncryptionConfig) String() string { return proto.CompactTextString(m) }
359func (*EncryptionConfig) ProtoMessage()    {}
360func (*EncryptionConfig) Descriptor() ([]byte, []int) {
361	return fileDescriptor_clusters_eb8dcc455338db63, []int{2}
362}
363func (m *EncryptionConfig) XXX_Unmarshal(b []byte) error {
364	return xxx_messageInfo_EncryptionConfig.Unmarshal(m, b)
365}
366func (m *EncryptionConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
367	return xxx_messageInfo_EncryptionConfig.Marshal(b, m, deterministic)
368}
369func (dst *EncryptionConfig) XXX_Merge(src proto.Message) {
370	xxx_messageInfo_EncryptionConfig.Merge(dst, src)
371}
372func (m *EncryptionConfig) XXX_Size() int {
373	return xxx_messageInfo_EncryptionConfig.Size(m)
374}
375func (m *EncryptionConfig) XXX_DiscardUnknown() {
376	xxx_messageInfo_EncryptionConfig.DiscardUnknown(m)
377}
378
379var xxx_messageInfo_EncryptionConfig proto.InternalMessageInfo
380
381func (m *EncryptionConfig) GetGcePdKmsKeyName() string {
382	if m != nil {
383		return m.GcePdKmsKeyName
384	}
385	return ""
386}
387
388// Common config settings for resources of Compute Engine cluster
389// instances, applicable to all instances in the cluster.
390type GceClusterConfig struct {
391	// Optional. The zone where the Compute Engine cluster will be located.
392	// On a create request, it is required in the "global" region. If omitted
393	// in a non-global Cloud Dataproc region, the service will pick a zone in the
394	// corresponding Compute Engine region. On a get request, zone will
395	// always be present.
396	//
397	// A full URL, partial URI, or short name are valid. Examples:
398	//
399	// * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]`
400	// * `projects/[project_id]/zones/[zone]`
401	// * `us-central1-f`
402	ZoneUri string `protobuf:"bytes,1,opt,name=zone_uri,json=zoneUri,proto3" json:"zone_uri,omitempty"`
403	// Optional. The Compute Engine network to be used for machine
404	// communications. Cannot be specified with subnetwork_uri. If neither
405	// `network_uri` nor `subnetwork_uri` is specified, the "default" network of
406	// the project is used, if it exists. Cannot be a "Custom Subnet Network" (see
407	// [Using Subnetworks](/compute/docs/subnetworks) for more information).
408	//
409	// A full URL, partial URI, or short name are valid. Examples:
410	//
411	// * `https://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default`
412	// * `projects/[project_id]/regions/global/default`
413	// * `default`
414	NetworkUri string `protobuf:"bytes,2,opt,name=network_uri,json=networkUri,proto3" json:"network_uri,omitempty"`
415	// Optional. The Compute Engine subnetwork to be used for machine
416	// communications. Cannot be specified with network_uri.
417	//
418	// A full URL, partial URI, or short name are valid. Examples:
419	//
420	// * `https://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0`
421	// * `projects/[project_id]/regions/us-east1/sub0`
422	// * `sub0`
423	SubnetworkUri string `protobuf:"bytes,6,opt,name=subnetwork_uri,json=subnetworkUri,proto3" json:"subnetwork_uri,omitempty"`
424	// Optional. If true, all instances in the cluster will only have internal IP
425	// addresses. By default, clusters are not restricted to internal IP addresses,
426	// and will have ephemeral external IP addresses assigned to each instance.
427	// This `internal_ip_only` restriction can only be enabled for subnetwork
428	// enabled networks, and all off-cluster dependencies must be configured to be
429	// accessible without external IP addresses.
430	InternalIpOnly bool `protobuf:"varint,7,opt,name=internal_ip_only,json=internalIpOnly,proto3" json:"internal_ip_only,omitempty"`
431	// Optional. The service account of the instances. Defaults to the default
432	// Compute Engine service account. Custom service accounts need
433	// permissions equivalent to the following IAM roles:
434	//
435	// * roles/logging.logWriter
436	// * roles/storage.objectAdmin
437	//
438	// (see https://cloud.google.com/compute/docs/access/service-accounts#custom_service_accounts
439	// for more information).
440	// Example: `[account_id]@[project_id].iam.gserviceaccount.com`
441	ServiceAccount string `protobuf:"bytes,8,opt,name=service_account,json=serviceAccount,proto3" json:"service_account,omitempty"`
442	// Optional. The URIs of service account scopes to be included in
443	// Compute Engine instances. The following base set of scopes is always
444	// included:
445	//
446	// * https://www.googleapis.com/auth/cloud.useraccounts.readonly
447	// * https://www.googleapis.com/auth/devstorage.read_write
448	// * https://www.googleapis.com/auth/logging.write
449	//
450	// If no scopes are specified, the following defaults are also provided:
451	//
452	// * https://www.googleapis.com/auth/bigquery
453	// * https://www.googleapis.com/auth/bigtable.admin.table
454	// * https://www.googleapis.com/auth/bigtable.data
455	// * https://www.googleapis.com/auth/devstorage.full_control
456	ServiceAccountScopes []string `protobuf:"bytes,3,rep,name=service_account_scopes,json=serviceAccountScopes,proto3" json:"service_account_scopes,omitempty"`
457	// The Compute Engine tags to add to all instances (see
458	// [Tagging instances](/compute/docs/label-or-tag-resources#tags)).
459	Tags []string `protobuf:"bytes,4,rep,name=tags,proto3" json:"tags,omitempty"`
460	// The Compute Engine metadata entries to add to all instances (see
461	// [Project and instance metadata](https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata)).
462	Metadata             map[string]string `protobuf:"bytes,5,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
463	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
464	XXX_unrecognized     []byte            `json:"-"`
465	XXX_sizecache        int32             `json:"-"`
466}
467
468func (m *GceClusterConfig) Reset()         { *m = GceClusterConfig{} }
469func (m *GceClusterConfig) String() string { return proto.CompactTextString(m) }
470func (*GceClusterConfig) ProtoMessage()    {}
471func (*GceClusterConfig) Descriptor() ([]byte, []int) {
472	return fileDescriptor_clusters_eb8dcc455338db63, []int{3}
473}
474func (m *GceClusterConfig) XXX_Unmarshal(b []byte) error {
475	return xxx_messageInfo_GceClusterConfig.Unmarshal(m, b)
476}
477func (m *GceClusterConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
478	return xxx_messageInfo_GceClusterConfig.Marshal(b, m, deterministic)
479}
480func (dst *GceClusterConfig) XXX_Merge(src proto.Message) {
481	xxx_messageInfo_GceClusterConfig.Merge(dst, src)
482}
483func (m *GceClusterConfig) XXX_Size() int {
484	return xxx_messageInfo_GceClusterConfig.Size(m)
485}
486func (m *GceClusterConfig) XXX_DiscardUnknown() {
487	xxx_messageInfo_GceClusterConfig.DiscardUnknown(m)
488}
489
490var xxx_messageInfo_GceClusterConfig proto.InternalMessageInfo
491
492func (m *GceClusterConfig) GetZoneUri() string {
493	if m != nil {
494		return m.ZoneUri
495	}
496	return ""
497}
498
499func (m *GceClusterConfig) GetNetworkUri() string {
500	if m != nil {
501		return m.NetworkUri
502	}
503	return ""
504}
505
506func (m *GceClusterConfig) GetSubnetworkUri() string {
507	if m != nil {
508		return m.SubnetworkUri
509	}
510	return ""
511}
512
513func (m *GceClusterConfig) GetInternalIpOnly() bool {
514	if m != nil {
515		return m.InternalIpOnly
516	}
517	return false
518}
519
520func (m *GceClusterConfig) GetServiceAccount() string {
521	if m != nil {
522		return m.ServiceAccount
523	}
524	return ""
525}
526
527func (m *GceClusterConfig) GetServiceAccountScopes() []string {
528	if m != nil {
529		return m.ServiceAccountScopes
530	}
531	return nil
532}
533
534func (m *GceClusterConfig) GetTags() []string {
535	if m != nil {
536		return m.Tags
537	}
538	return nil
539}
540
541func (m *GceClusterConfig) GetMetadata() map[string]string {
542	if m != nil {
543		return m.Metadata
544	}
545	return nil
546}
547
548// Optional. The config settings for Compute Engine resources in
549// an instance group, such as a master or worker group.
550type InstanceGroupConfig struct {
551	// Optional. The number of VM instances in the instance group.
552	// For master instance groups, must be set to 1.
553	NumInstances int32 `protobuf:"varint,1,opt,name=num_instances,json=numInstances,proto3" json:"num_instances,omitempty"`
554	// Output only. The list of instance names. Cloud Dataproc derives the names
555	// from `cluster_name`, `num_instances`, and the instance group.
556	InstanceNames []string `protobuf:"bytes,2,rep,name=instance_names,json=instanceNames,proto3" json:"instance_names,omitempty"`
557	// Optional. The Compute Engine image resource used for cluster
558	// instances. It can be specified or may be inferred from
559	// `SoftwareConfig.image_version`.
560	ImageUri string `protobuf:"bytes,3,opt,name=image_uri,json=imageUri,proto3" json:"image_uri,omitempty"`
561	// Optional. The Compute Engine machine type used for cluster instances.
562	//
563	// A full URL, partial URI, or short name are valid. Examples:
564	//
565	// * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2`
566	// * `projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2`
567	// * `n1-standard-2`
568	//
569	// **Auto Zone Exception**: If you are using the Cloud Dataproc
570	// [Auto Zone Placement](/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement)
571	// feature, you must use the short name of the machine type
572	// resource, for example, `n1-standard-2`.
573	MachineTypeUri string `protobuf:"bytes,4,opt,name=machine_type_uri,json=machineTypeUri,proto3" json:"machine_type_uri,omitempty"`
574	// Optional. Disk option config settings.
575	DiskConfig *DiskConfig `protobuf:"bytes,5,opt,name=disk_config,json=diskConfig,proto3" json:"disk_config,omitempty"`
576	// Optional. Specifies that this instance group contains preemptible instances.
577	IsPreemptible bool `protobuf:"varint,6,opt,name=is_preemptible,json=isPreemptible,proto3" json:"is_preemptible,omitempty"`
578	// Output only. The config for Compute Engine Instance Group
579	// Manager that manages this group.
580	// This is only used for preemptible instance groups.
581	ManagedGroupConfig *ManagedGroupConfig `protobuf:"bytes,7,opt,name=managed_group_config,json=managedGroupConfig,proto3" json:"managed_group_config,omitempty"`
582	// Optional. The Compute Engine accelerator configuration for these
583	// instances.
584	//
585	// **Beta Feature**: This feature is still under development. It may be
586	// changed before final release.
587	Accelerators         []*AcceleratorConfig `protobuf:"bytes,8,rep,name=accelerators,proto3" json:"accelerators,omitempty"`
588	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
589	XXX_unrecognized     []byte               `json:"-"`
590	XXX_sizecache        int32                `json:"-"`
591}
592
593func (m *InstanceGroupConfig) Reset()         { *m = InstanceGroupConfig{} }
594func (m *InstanceGroupConfig) String() string { return proto.CompactTextString(m) }
595func (*InstanceGroupConfig) ProtoMessage()    {}
596func (*InstanceGroupConfig) Descriptor() ([]byte, []int) {
597	return fileDescriptor_clusters_eb8dcc455338db63, []int{4}
598}
599func (m *InstanceGroupConfig) XXX_Unmarshal(b []byte) error {
600	return xxx_messageInfo_InstanceGroupConfig.Unmarshal(m, b)
601}
602func (m *InstanceGroupConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
603	return xxx_messageInfo_InstanceGroupConfig.Marshal(b, m, deterministic)
604}
605func (dst *InstanceGroupConfig) XXX_Merge(src proto.Message) {
606	xxx_messageInfo_InstanceGroupConfig.Merge(dst, src)
607}
608func (m *InstanceGroupConfig) XXX_Size() int {
609	return xxx_messageInfo_InstanceGroupConfig.Size(m)
610}
611func (m *InstanceGroupConfig) XXX_DiscardUnknown() {
612	xxx_messageInfo_InstanceGroupConfig.DiscardUnknown(m)
613}
614
615var xxx_messageInfo_InstanceGroupConfig proto.InternalMessageInfo
616
617func (m *InstanceGroupConfig) GetNumInstances() int32 {
618	if m != nil {
619		return m.NumInstances
620	}
621	return 0
622}
623
624func (m *InstanceGroupConfig) GetInstanceNames() []string {
625	if m != nil {
626		return m.InstanceNames
627	}
628	return nil
629}
630
631func (m *InstanceGroupConfig) GetImageUri() string {
632	if m != nil {
633		return m.ImageUri
634	}
635	return ""
636}
637
638func (m *InstanceGroupConfig) GetMachineTypeUri() string {
639	if m != nil {
640		return m.MachineTypeUri
641	}
642	return ""
643}
644
645func (m *InstanceGroupConfig) GetDiskConfig() *DiskConfig {
646	if m != nil {
647		return m.DiskConfig
648	}
649	return nil
650}
651
652func (m *InstanceGroupConfig) GetIsPreemptible() bool {
653	if m != nil {
654		return m.IsPreemptible
655	}
656	return false
657}
658
659func (m *InstanceGroupConfig) GetManagedGroupConfig() *ManagedGroupConfig {
660	if m != nil {
661		return m.ManagedGroupConfig
662	}
663	return nil
664}
665
666func (m *InstanceGroupConfig) GetAccelerators() []*AcceleratorConfig {
667	if m != nil {
668		return m.Accelerators
669	}
670	return nil
671}
672
673// Specifies the resources used to actively manage an instance group.
674type ManagedGroupConfig struct {
675	// Output only. The name of the Instance Template used for the Managed
676	// Instance Group.
677	InstanceTemplateName string `protobuf:"bytes,1,opt,name=instance_template_name,json=instanceTemplateName,proto3" json:"instance_template_name,omitempty"`
678	// Output only. The name of the Instance Group Manager for this group.
679	InstanceGroupManagerName string   `protobuf:"bytes,2,opt,name=instance_group_manager_name,json=instanceGroupManagerName,proto3" json:"instance_group_manager_name,omitempty"`
680	XXX_NoUnkeyedLiteral     struct{} `json:"-"`
681	XXX_unrecognized         []byte   `json:"-"`
682	XXX_sizecache            int32    `json:"-"`
683}
684
685func (m *ManagedGroupConfig) Reset()         { *m = ManagedGroupConfig{} }
686func (m *ManagedGroupConfig) String() string { return proto.CompactTextString(m) }
687func (*ManagedGroupConfig) ProtoMessage()    {}
688func (*ManagedGroupConfig) Descriptor() ([]byte, []int) {
689	return fileDescriptor_clusters_eb8dcc455338db63, []int{5}
690}
691func (m *ManagedGroupConfig) XXX_Unmarshal(b []byte) error {
692	return xxx_messageInfo_ManagedGroupConfig.Unmarshal(m, b)
693}
694func (m *ManagedGroupConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
695	return xxx_messageInfo_ManagedGroupConfig.Marshal(b, m, deterministic)
696}
697func (dst *ManagedGroupConfig) XXX_Merge(src proto.Message) {
698	xxx_messageInfo_ManagedGroupConfig.Merge(dst, src)
699}
700func (m *ManagedGroupConfig) XXX_Size() int {
701	return xxx_messageInfo_ManagedGroupConfig.Size(m)
702}
703func (m *ManagedGroupConfig) XXX_DiscardUnknown() {
704	xxx_messageInfo_ManagedGroupConfig.DiscardUnknown(m)
705}
706
707var xxx_messageInfo_ManagedGroupConfig proto.InternalMessageInfo
708
709func (m *ManagedGroupConfig) GetInstanceTemplateName() string {
710	if m != nil {
711		return m.InstanceTemplateName
712	}
713	return ""
714}
715
716func (m *ManagedGroupConfig) GetInstanceGroupManagerName() string {
717	if m != nil {
718		return m.InstanceGroupManagerName
719	}
720	return ""
721}
722
723// Specifies the type and number of accelerator cards attached to the instances
724// of an instance. See [GPUs on Compute Engine](/compute/docs/gpus/).
725type AcceleratorConfig struct {
726	// Full URL, partial URI, or short name of the accelerator type resource to
727	// expose to this instance. See
728	// [Compute Engine AcceleratorTypes](/compute/docs/reference/beta/acceleratorTypes).
729	//
730	// Examples:
731	//
732	// * `https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80`
733	// * `projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80`
734	// * `nvidia-tesla-k80`
735	//
736	// **Auto Zone Exception**: If you are using the Cloud Dataproc
737	// [Auto Zone Placement](/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement)
738	// feature, you must use the short name of the accelerator type
739	// resource, for example, `nvidia-tesla-k80`.
740	AcceleratorTypeUri string `protobuf:"bytes,1,opt,name=accelerator_type_uri,json=acceleratorTypeUri,proto3" json:"accelerator_type_uri,omitempty"`
741	// The number of the accelerator cards of this type exposed to this instance.
742	AcceleratorCount     int32    `protobuf:"varint,2,opt,name=accelerator_count,json=acceleratorCount,proto3" json:"accelerator_count,omitempty"`
743	XXX_NoUnkeyedLiteral struct{} `json:"-"`
744	XXX_unrecognized     []byte   `json:"-"`
745	XXX_sizecache        int32    `json:"-"`
746}
747
748func (m *AcceleratorConfig) Reset()         { *m = AcceleratorConfig{} }
749func (m *AcceleratorConfig) String() string { return proto.CompactTextString(m) }
750func (*AcceleratorConfig) ProtoMessage()    {}
751func (*AcceleratorConfig) Descriptor() ([]byte, []int) {
752	return fileDescriptor_clusters_eb8dcc455338db63, []int{6}
753}
754func (m *AcceleratorConfig) XXX_Unmarshal(b []byte) error {
755	return xxx_messageInfo_AcceleratorConfig.Unmarshal(m, b)
756}
757func (m *AcceleratorConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
758	return xxx_messageInfo_AcceleratorConfig.Marshal(b, m, deterministic)
759}
760func (dst *AcceleratorConfig) XXX_Merge(src proto.Message) {
761	xxx_messageInfo_AcceleratorConfig.Merge(dst, src)
762}
763func (m *AcceleratorConfig) XXX_Size() int {
764	return xxx_messageInfo_AcceleratorConfig.Size(m)
765}
766func (m *AcceleratorConfig) XXX_DiscardUnknown() {
767	xxx_messageInfo_AcceleratorConfig.DiscardUnknown(m)
768}
769
770var xxx_messageInfo_AcceleratorConfig proto.InternalMessageInfo
771
772func (m *AcceleratorConfig) GetAcceleratorTypeUri() string {
773	if m != nil {
774		return m.AcceleratorTypeUri
775	}
776	return ""
777}
778
779func (m *AcceleratorConfig) GetAcceleratorCount() int32 {
780	if m != nil {
781		return m.AcceleratorCount
782	}
783	return 0
784}
785
786// Specifies the config of disk options for a group of VM instances.
787type DiskConfig struct {
788	// Optional. Type of the boot disk (default is "pd-standard").
789	// Valid values: "pd-ssd" (Persistent Disk Solid State Drive) or
790	// "pd-standard" (Persistent Disk Hard Disk Drive).
791	BootDiskType string `protobuf:"bytes,3,opt,name=boot_disk_type,json=bootDiskType,proto3" json:"boot_disk_type,omitempty"`
792	// Optional. Size in GB of the boot disk (default is 500GB).
793	BootDiskSizeGb int32 `protobuf:"varint,1,opt,name=boot_disk_size_gb,json=bootDiskSizeGb,proto3" json:"boot_disk_size_gb,omitempty"`
794	// Optional. Number of attached SSDs, from 0 to 4 (default is 0).
795	// If SSDs are not attached, the boot disk is used to store runtime logs and
796	// [HDFS](https://hadoop.apache.org/docs/r1.2.1/hdfs_user_guide.html) data.
797	// If one or more SSDs are attached, this runtime bulk
798	// data is spread across them, and the boot disk contains only basic
799	// config and installed binaries.
800	NumLocalSsds         int32    `protobuf:"varint,2,opt,name=num_local_ssds,json=numLocalSsds,proto3" json:"num_local_ssds,omitempty"`
801	XXX_NoUnkeyedLiteral struct{} `json:"-"`
802	XXX_unrecognized     []byte   `json:"-"`
803	XXX_sizecache        int32    `json:"-"`
804}
805
806func (m *DiskConfig) Reset()         { *m = DiskConfig{} }
807func (m *DiskConfig) String() string { return proto.CompactTextString(m) }
808func (*DiskConfig) ProtoMessage()    {}
809func (*DiskConfig) Descriptor() ([]byte, []int) {
810	return fileDescriptor_clusters_eb8dcc455338db63, []int{7}
811}
812func (m *DiskConfig) XXX_Unmarshal(b []byte) error {
813	return xxx_messageInfo_DiskConfig.Unmarshal(m, b)
814}
815func (m *DiskConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
816	return xxx_messageInfo_DiskConfig.Marshal(b, m, deterministic)
817}
818func (dst *DiskConfig) XXX_Merge(src proto.Message) {
819	xxx_messageInfo_DiskConfig.Merge(dst, src)
820}
821func (m *DiskConfig) XXX_Size() int {
822	return xxx_messageInfo_DiskConfig.Size(m)
823}
824func (m *DiskConfig) XXX_DiscardUnknown() {
825	xxx_messageInfo_DiskConfig.DiscardUnknown(m)
826}
827
828var xxx_messageInfo_DiskConfig proto.InternalMessageInfo
829
830func (m *DiskConfig) GetBootDiskType() string {
831	if m != nil {
832		return m.BootDiskType
833	}
834	return ""
835}
836
837func (m *DiskConfig) GetBootDiskSizeGb() int32 {
838	if m != nil {
839		return m.BootDiskSizeGb
840	}
841	return 0
842}
843
844func (m *DiskConfig) GetNumLocalSsds() int32 {
845	if m != nil {
846		return m.NumLocalSsds
847	}
848	return 0
849}
850
851// Specifies an executable to run on a fully configured node and a
852// timeout period for executable completion.
853type NodeInitializationAction struct {
854	// Required. Cloud Storage URI of executable file.
855	ExecutableFile string `protobuf:"bytes,1,opt,name=executable_file,json=executableFile,proto3" json:"executable_file,omitempty"`
856	// Optional. Amount of time executable has to complete. Default is
857	// 10 minutes. Cluster creation fails with an explanatory error message (the
858	// name of the executable that caused the error and the exceeded timeout
859	// period) if the executable is not completed at end of the timeout period.
860	ExecutionTimeout     *duration.Duration `protobuf:"bytes,2,opt,name=execution_timeout,json=executionTimeout,proto3" json:"execution_timeout,omitempty"`
861	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
862	XXX_unrecognized     []byte             `json:"-"`
863	XXX_sizecache        int32              `json:"-"`
864}
865
866func (m *NodeInitializationAction) Reset()         { *m = NodeInitializationAction{} }
867func (m *NodeInitializationAction) String() string { return proto.CompactTextString(m) }
868func (*NodeInitializationAction) ProtoMessage()    {}
869func (*NodeInitializationAction) Descriptor() ([]byte, []int) {
870	return fileDescriptor_clusters_eb8dcc455338db63, []int{8}
871}
872func (m *NodeInitializationAction) XXX_Unmarshal(b []byte) error {
873	return xxx_messageInfo_NodeInitializationAction.Unmarshal(m, b)
874}
875func (m *NodeInitializationAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
876	return xxx_messageInfo_NodeInitializationAction.Marshal(b, m, deterministic)
877}
878func (dst *NodeInitializationAction) XXX_Merge(src proto.Message) {
879	xxx_messageInfo_NodeInitializationAction.Merge(dst, src)
880}
881func (m *NodeInitializationAction) XXX_Size() int {
882	return xxx_messageInfo_NodeInitializationAction.Size(m)
883}
884func (m *NodeInitializationAction) XXX_DiscardUnknown() {
885	xxx_messageInfo_NodeInitializationAction.DiscardUnknown(m)
886}
887
888var xxx_messageInfo_NodeInitializationAction proto.InternalMessageInfo
889
890func (m *NodeInitializationAction) GetExecutableFile() string {
891	if m != nil {
892		return m.ExecutableFile
893	}
894	return ""
895}
896
897func (m *NodeInitializationAction) GetExecutionTimeout() *duration.Duration {
898	if m != nil {
899		return m.ExecutionTimeout
900	}
901	return nil
902}
903
904// The status of a cluster and its instances.
905type ClusterStatus struct {
906	// Output only. The cluster's state.
907	State ClusterStatus_State `protobuf:"varint,1,opt,name=state,proto3,enum=google.cloud.dataproc.v1.ClusterStatus_State" json:"state,omitempty"`
908	// Output only. Optional details of cluster's state.
909	Detail string `protobuf:"bytes,2,opt,name=detail,proto3" json:"detail,omitempty"`
910	// Output only. Time when this state was entered.
911	StateStartTime *timestamp.Timestamp `protobuf:"bytes,3,opt,name=state_start_time,json=stateStartTime,proto3" json:"state_start_time,omitempty"`
912	// Output only. Additional state information that includes
913	// status reported by the agent.
914	Substate             ClusterStatus_Substate `protobuf:"varint,4,opt,name=substate,proto3,enum=google.cloud.dataproc.v1.ClusterStatus_Substate" json:"substate,omitempty"`
915	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
916	XXX_unrecognized     []byte                 `json:"-"`
917	XXX_sizecache        int32                  `json:"-"`
918}
919
920func (m *ClusterStatus) Reset()         { *m = ClusterStatus{} }
921func (m *ClusterStatus) String() string { return proto.CompactTextString(m) }
922func (*ClusterStatus) ProtoMessage()    {}
923func (*ClusterStatus) Descriptor() ([]byte, []int) {
924	return fileDescriptor_clusters_eb8dcc455338db63, []int{9}
925}
926func (m *ClusterStatus) XXX_Unmarshal(b []byte) error {
927	return xxx_messageInfo_ClusterStatus.Unmarshal(m, b)
928}
929func (m *ClusterStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
930	return xxx_messageInfo_ClusterStatus.Marshal(b, m, deterministic)
931}
932func (dst *ClusterStatus) XXX_Merge(src proto.Message) {
933	xxx_messageInfo_ClusterStatus.Merge(dst, src)
934}
935func (m *ClusterStatus) XXX_Size() int {
936	return xxx_messageInfo_ClusterStatus.Size(m)
937}
938func (m *ClusterStatus) XXX_DiscardUnknown() {
939	xxx_messageInfo_ClusterStatus.DiscardUnknown(m)
940}
941
942var xxx_messageInfo_ClusterStatus proto.InternalMessageInfo
943
944func (m *ClusterStatus) GetState() ClusterStatus_State {
945	if m != nil {
946		return m.State
947	}
948	return ClusterStatus_UNKNOWN
949}
950
951func (m *ClusterStatus) GetDetail() string {
952	if m != nil {
953		return m.Detail
954	}
955	return ""
956}
957
958func (m *ClusterStatus) GetStateStartTime() *timestamp.Timestamp {
959	if m != nil {
960		return m.StateStartTime
961	}
962	return nil
963}
964
965func (m *ClusterStatus) GetSubstate() ClusterStatus_Substate {
966	if m != nil {
967		return m.Substate
968	}
969	return ClusterStatus_UNSPECIFIED
970}
971
972// Specifies the selection and config of software inside the cluster.
973type SoftwareConfig struct {
974	// Optional. The version of software inside the cluster. It must be one of the supported
975	// [Cloud Dataproc Versions](/dataproc/docs/concepts/versioning/dataproc-versions#supported_cloud_dataproc_versions),
976	// such as "1.2" (including a subminor version, such as "1.2.29"), or the
977	// ["preview" version](/dataproc/docs/concepts/versioning/dataproc-versions#other_versions).
978	// If unspecified, it defaults to the latest version.
979	ImageVersion string `protobuf:"bytes,1,opt,name=image_version,json=imageVersion,proto3" json:"image_version,omitempty"`
980	// Optional. The properties to set on daemon config files.
981	//
982	// Property keys are specified in `prefix:property` format, such as
983	// `core:fs.defaultFS`. The following are supported prefixes
984	// and their mappings:
985	//
986	// * capacity-scheduler: `capacity-scheduler.xml`
987	// * core:   `core-site.xml`
988	// * distcp: `distcp-default.xml`
989	// * hdfs:   `hdfs-site.xml`
990	// * hive:   `hive-site.xml`
991	// * mapred: `mapred-site.xml`
992	// * pig:    `pig.properties`
993	// * spark:  `spark-defaults.conf`
994	// * yarn:   `yarn-site.xml`
995	//
996	// For more information, see
997	// [Cluster properties](/dataproc/docs/concepts/cluster-properties).
998	Properties           map[string]string `protobuf:"bytes,2,rep,name=properties,proto3" json:"properties,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
999	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
1000	XXX_unrecognized     []byte            `json:"-"`
1001	XXX_sizecache        int32             `json:"-"`
1002}
1003
1004func (m *SoftwareConfig) Reset()         { *m = SoftwareConfig{} }
1005func (m *SoftwareConfig) String() string { return proto.CompactTextString(m) }
1006func (*SoftwareConfig) ProtoMessage()    {}
1007func (*SoftwareConfig) Descriptor() ([]byte, []int) {
1008	return fileDescriptor_clusters_eb8dcc455338db63, []int{10}
1009}
1010func (m *SoftwareConfig) XXX_Unmarshal(b []byte) error {
1011	return xxx_messageInfo_SoftwareConfig.Unmarshal(m, b)
1012}
1013func (m *SoftwareConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1014	return xxx_messageInfo_SoftwareConfig.Marshal(b, m, deterministic)
1015}
1016func (dst *SoftwareConfig) XXX_Merge(src proto.Message) {
1017	xxx_messageInfo_SoftwareConfig.Merge(dst, src)
1018}
1019func (m *SoftwareConfig) XXX_Size() int {
1020	return xxx_messageInfo_SoftwareConfig.Size(m)
1021}
1022func (m *SoftwareConfig) XXX_DiscardUnknown() {
1023	xxx_messageInfo_SoftwareConfig.DiscardUnknown(m)
1024}
1025
1026var xxx_messageInfo_SoftwareConfig proto.InternalMessageInfo
1027
1028func (m *SoftwareConfig) GetImageVersion() string {
1029	if m != nil {
1030		return m.ImageVersion
1031	}
1032	return ""
1033}
1034
1035func (m *SoftwareConfig) GetProperties() map[string]string {
1036	if m != nil {
1037		return m.Properties
1038	}
1039	return nil
1040}
1041
1042// Contains cluster daemon metrics, such as HDFS and YARN stats.
1043//
1044// **Beta Feature**: This report is available for testing purposes only. It may
1045// be changed before final release.
1046type ClusterMetrics struct {
1047	// The HDFS metrics.
1048	HdfsMetrics map[string]int64 `protobuf:"bytes,1,rep,name=hdfs_metrics,json=hdfsMetrics,proto3" json:"hdfs_metrics,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
1049	// The YARN metrics.
1050	YarnMetrics          map[string]int64 `protobuf:"bytes,2,rep,name=yarn_metrics,json=yarnMetrics,proto3" json:"yarn_metrics,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
1051	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
1052	XXX_unrecognized     []byte           `json:"-"`
1053	XXX_sizecache        int32            `json:"-"`
1054}
1055
1056func (m *ClusterMetrics) Reset()         { *m = ClusterMetrics{} }
1057func (m *ClusterMetrics) String() string { return proto.CompactTextString(m) }
1058func (*ClusterMetrics) ProtoMessage()    {}
1059func (*ClusterMetrics) Descriptor() ([]byte, []int) {
1060	return fileDescriptor_clusters_eb8dcc455338db63, []int{11}
1061}
1062func (m *ClusterMetrics) XXX_Unmarshal(b []byte) error {
1063	return xxx_messageInfo_ClusterMetrics.Unmarshal(m, b)
1064}
1065func (m *ClusterMetrics) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1066	return xxx_messageInfo_ClusterMetrics.Marshal(b, m, deterministic)
1067}
1068func (dst *ClusterMetrics) XXX_Merge(src proto.Message) {
1069	xxx_messageInfo_ClusterMetrics.Merge(dst, src)
1070}
1071func (m *ClusterMetrics) XXX_Size() int {
1072	return xxx_messageInfo_ClusterMetrics.Size(m)
1073}
1074func (m *ClusterMetrics) XXX_DiscardUnknown() {
1075	xxx_messageInfo_ClusterMetrics.DiscardUnknown(m)
1076}
1077
1078var xxx_messageInfo_ClusterMetrics proto.InternalMessageInfo
1079
1080func (m *ClusterMetrics) GetHdfsMetrics() map[string]int64 {
1081	if m != nil {
1082		return m.HdfsMetrics
1083	}
1084	return nil
1085}
1086
1087func (m *ClusterMetrics) GetYarnMetrics() map[string]int64 {
1088	if m != nil {
1089		return m.YarnMetrics
1090	}
1091	return nil
1092}
1093
1094// A request to create a cluster.
1095type CreateClusterRequest struct {
1096	// Required. The ID of the Google Cloud Platform project that the cluster
1097	// belongs to.
1098	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
1099	// Required. The Cloud Dataproc region in which to handle the request.
1100	Region string `protobuf:"bytes,3,opt,name=region,proto3" json:"region,omitempty"`
1101	// Required. The cluster to create.
1102	Cluster *Cluster `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"`
1103	// Optional. A unique id used to identify the request. If the server
1104	// receives two [CreateClusterRequest][google.cloud.dataproc.v1.CreateClusterRequest] requests  with the same
1105	// id, then the second request will be ignored and the
1106	// first [google.longrunning.Operation][google.longrunning.Operation] created and stored in the backend
1107	// is returned.
1108	//
1109	// It is recommended to always set this value to a
1110	// [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
1111	//
1112	// The id must contain only letters (a-z, A-Z), numbers (0-9),
1113	// underscores (_), and hyphens (-). The maximum length is 40 characters.
1114	RequestId            string   `protobuf:"bytes,4,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
1115	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1116	XXX_unrecognized     []byte   `json:"-"`
1117	XXX_sizecache        int32    `json:"-"`
1118}
1119
1120func (m *CreateClusterRequest) Reset()         { *m = CreateClusterRequest{} }
1121func (m *CreateClusterRequest) String() string { return proto.CompactTextString(m) }
1122func (*CreateClusterRequest) ProtoMessage()    {}
1123func (*CreateClusterRequest) Descriptor() ([]byte, []int) {
1124	return fileDescriptor_clusters_eb8dcc455338db63, []int{12}
1125}
1126func (m *CreateClusterRequest) XXX_Unmarshal(b []byte) error {
1127	return xxx_messageInfo_CreateClusterRequest.Unmarshal(m, b)
1128}
1129func (m *CreateClusterRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1130	return xxx_messageInfo_CreateClusterRequest.Marshal(b, m, deterministic)
1131}
1132func (dst *CreateClusterRequest) XXX_Merge(src proto.Message) {
1133	xxx_messageInfo_CreateClusterRequest.Merge(dst, src)
1134}
1135func (m *CreateClusterRequest) XXX_Size() int {
1136	return xxx_messageInfo_CreateClusterRequest.Size(m)
1137}
1138func (m *CreateClusterRequest) XXX_DiscardUnknown() {
1139	xxx_messageInfo_CreateClusterRequest.DiscardUnknown(m)
1140}
1141
1142var xxx_messageInfo_CreateClusterRequest proto.InternalMessageInfo
1143
1144func (m *CreateClusterRequest) GetProjectId() string {
1145	if m != nil {
1146		return m.ProjectId
1147	}
1148	return ""
1149}
1150
1151func (m *CreateClusterRequest) GetRegion() string {
1152	if m != nil {
1153		return m.Region
1154	}
1155	return ""
1156}
1157
1158func (m *CreateClusterRequest) GetCluster() *Cluster {
1159	if m != nil {
1160		return m.Cluster
1161	}
1162	return nil
1163}
1164
1165func (m *CreateClusterRequest) GetRequestId() string {
1166	if m != nil {
1167		return m.RequestId
1168	}
1169	return ""
1170}
1171
1172// A request to update a cluster.
1173type UpdateClusterRequest struct {
1174	// Required. The ID of the Google Cloud Platform project the
1175	// cluster belongs to.
1176	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
1177	// Required. The Cloud Dataproc region in which to handle the request.
1178	Region string `protobuf:"bytes,5,opt,name=region,proto3" json:"region,omitempty"`
1179	// Required. The cluster name.
1180	ClusterName string `protobuf:"bytes,2,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
1181	// Required. The changes to the cluster.
1182	Cluster *Cluster `protobuf:"bytes,3,opt,name=cluster,proto3" json:"cluster,omitempty"`
1183	// Optional. Timeout for graceful YARN decomissioning. Graceful
1184	// decommissioning allows removing nodes from the cluster without
1185	// interrupting jobs in progress. Timeout specifies how long to wait for jobs
1186	// in progress to finish before forcefully removing nodes (and potentially
1187	// interrupting jobs). Default timeout is 0 (for forceful decommission), and
1188	// the maximum allowed timeout is 1 day.
1189	//
1190	// Only supported on Dataproc image versions 1.2 and higher.
1191	GracefulDecommissionTimeout *duration.Duration `protobuf:"bytes,6,opt,name=graceful_decommission_timeout,json=gracefulDecommissionTimeout,proto3" json:"graceful_decommission_timeout,omitempty"`
1192	// Required. Specifies the path, relative to `Cluster`, of
1193	// the field to update. For example, to change the number of workers
1194	// in a cluster to 5, the `update_mask` parameter would be
1195	// specified as `config.worker_config.num_instances`,
1196	// and the `PATCH` request body would specify the new value, as follows:
1197	//
1198	//     {
1199	//       "config":{
1200	//         "workerConfig":{
1201	//           "numInstances":"5"
1202	//         }
1203	//       }
1204	//     }
1205	// Similarly, to change the number of preemptible workers in a cluster to 5,
1206	// the `update_mask` parameter would be
1207	// `config.secondary_worker_config.num_instances`, and the `PATCH` request
1208	// body would be set as follows:
1209	//
1210	//     {
1211	//       "config":{
1212	//         "secondaryWorkerConfig":{
1213	//           "numInstances":"5"
1214	//         }
1215	//       }
1216	//     }
1217	// <strong>Note:</strong> Currently, only the following fields can be updated:
1218	//
1219	//  <table>
1220	//  <tbody>
1221	//  <tr>
1222	//  <td><strong>Mask</strong></td>
1223	//  <td><strong>Purpose</strong></td>
1224	//  </tr>
1225	//  <tr>
1226	//  <td><strong><em>labels</em></strong></td>
1227	//  <td>Update labels</td>
1228	//  </tr>
1229	//  <tr>
1230	//  <td><strong><em>config.worker_config.num_instances</em></strong></td>
1231	//  <td>Resize primary worker group</td>
1232	//  </tr>
1233	//  <tr>
1234	//  <td><strong><em>config.secondary_worker_config.num_instances</em></strong></td>
1235	//  <td>Resize secondary worker group</td>
1236	//  </tr>
1237	//  </tbody>
1238	//  </table>
1239	UpdateMask *field_mask.FieldMask `protobuf:"bytes,4,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
1240	// Optional. A unique id used to identify the request. If the server
1241	// receives two [UpdateClusterRequest][google.cloud.dataproc.v1.UpdateClusterRequest] requests  with the same
1242	// id, then the second request will be ignored and the
1243	// first [google.longrunning.Operation][google.longrunning.Operation] created and stored in the
1244	// backend is returned.
1245	//
1246	// It is recommended to always set this value to a
1247	// [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
1248	//
1249	// The id must contain only letters (a-z, A-Z), numbers (0-9),
1250	// underscores (_), and hyphens (-). The maximum length is 40 characters.
1251	RequestId            string   `protobuf:"bytes,7,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
1252	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1253	XXX_unrecognized     []byte   `json:"-"`
1254	XXX_sizecache        int32    `json:"-"`
1255}
1256
1257func (m *UpdateClusterRequest) Reset()         { *m = UpdateClusterRequest{} }
1258func (m *UpdateClusterRequest) String() string { return proto.CompactTextString(m) }
1259func (*UpdateClusterRequest) ProtoMessage()    {}
1260func (*UpdateClusterRequest) Descriptor() ([]byte, []int) {
1261	return fileDescriptor_clusters_eb8dcc455338db63, []int{13}
1262}
1263func (m *UpdateClusterRequest) XXX_Unmarshal(b []byte) error {
1264	return xxx_messageInfo_UpdateClusterRequest.Unmarshal(m, b)
1265}
1266func (m *UpdateClusterRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1267	return xxx_messageInfo_UpdateClusterRequest.Marshal(b, m, deterministic)
1268}
1269func (dst *UpdateClusterRequest) XXX_Merge(src proto.Message) {
1270	xxx_messageInfo_UpdateClusterRequest.Merge(dst, src)
1271}
1272func (m *UpdateClusterRequest) XXX_Size() int {
1273	return xxx_messageInfo_UpdateClusterRequest.Size(m)
1274}
1275func (m *UpdateClusterRequest) XXX_DiscardUnknown() {
1276	xxx_messageInfo_UpdateClusterRequest.DiscardUnknown(m)
1277}
1278
1279var xxx_messageInfo_UpdateClusterRequest proto.InternalMessageInfo
1280
1281func (m *UpdateClusterRequest) GetProjectId() string {
1282	if m != nil {
1283		return m.ProjectId
1284	}
1285	return ""
1286}
1287
1288func (m *UpdateClusterRequest) GetRegion() string {
1289	if m != nil {
1290		return m.Region
1291	}
1292	return ""
1293}
1294
1295func (m *UpdateClusterRequest) GetClusterName() string {
1296	if m != nil {
1297		return m.ClusterName
1298	}
1299	return ""
1300}
1301
1302func (m *UpdateClusterRequest) GetCluster() *Cluster {
1303	if m != nil {
1304		return m.Cluster
1305	}
1306	return nil
1307}
1308
1309func (m *UpdateClusterRequest) GetGracefulDecommissionTimeout() *duration.Duration {
1310	if m != nil {
1311		return m.GracefulDecommissionTimeout
1312	}
1313	return nil
1314}
1315
1316func (m *UpdateClusterRequest) GetUpdateMask() *field_mask.FieldMask {
1317	if m != nil {
1318		return m.UpdateMask
1319	}
1320	return nil
1321}
1322
1323func (m *UpdateClusterRequest) GetRequestId() string {
1324	if m != nil {
1325		return m.RequestId
1326	}
1327	return ""
1328}
1329
1330// A request to delete a cluster.
1331type DeleteClusterRequest struct {
1332	// Required. The ID of the Google Cloud Platform project that the cluster
1333	// belongs to.
1334	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
1335	// Required. The Cloud Dataproc region in which to handle the request.
1336	Region string `protobuf:"bytes,3,opt,name=region,proto3" json:"region,omitempty"`
1337	// Required. The cluster name.
1338	ClusterName string `protobuf:"bytes,2,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
1339	// Optional. Specifying the `cluster_uuid` means the RPC should fail
1340	// (with error NOT_FOUND) if cluster with specified UUID does not exist.
1341	ClusterUuid string `protobuf:"bytes,4,opt,name=cluster_uuid,json=clusterUuid,proto3" json:"cluster_uuid,omitempty"`
1342	// Optional. A unique id used to identify the request. If the server
1343	// receives two [DeleteClusterRequest][google.cloud.dataproc.v1.DeleteClusterRequest] requests  with the same
1344	// id, then the second request will be ignored and the
1345	// first [google.longrunning.Operation][google.longrunning.Operation] created and stored in the
1346	// backend is returned.
1347	//
1348	// It is recommended to always set this value to a
1349	// [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
1350	//
1351	// The id must contain only letters (a-z, A-Z), numbers (0-9),
1352	// underscores (_), and hyphens (-). The maximum length is 40 characters.
1353	RequestId            string   `protobuf:"bytes,5,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
1354	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1355	XXX_unrecognized     []byte   `json:"-"`
1356	XXX_sizecache        int32    `json:"-"`
1357}
1358
1359func (m *DeleteClusterRequest) Reset()         { *m = DeleteClusterRequest{} }
1360func (m *DeleteClusterRequest) String() string { return proto.CompactTextString(m) }
1361func (*DeleteClusterRequest) ProtoMessage()    {}
1362func (*DeleteClusterRequest) Descriptor() ([]byte, []int) {
1363	return fileDescriptor_clusters_eb8dcc455338db63, []int{14}
1364}
1365func (m *DeleteClusterRequest) XXX_Unmarshal(b []byte) error {
1366	return xxx_messageInfo_DeleteClusterRequest.Unmarshal(m, b)
1367}
1368func (m *DeleteClusterRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1369	return xxx_messageInfo_DeleteClusterRequest.Marshal(b, m, deterministic)
1370}
1371func (dst *DeleteClusterRequest) XXX_Merge(src proto.Message) {
1372	xxx_messageInfo_DeleteClusterRequest.Merge(dst, src)
1373}
1374func (m *DeleteClusterRequest) XXX_Size() int {
1375	return xxx_messageInfo_DeleteClusterRequest.Size(m)
1376}
1377func (m *DeleteClusterRequest) XXX_DiscardUnknown() {
1378	xxx_messageInfo_DeleteClusterRequest.DiscardUnknown(m)
1379}
1380
1381var xxx_messageInfo_DeleteClusterRequest proto.InternalMessageInfo
1382
1383func (m *DeleteClusterRequest) GetProjectId() string {
1384	if m != nil {
1385		return m.ProjectId
1386	}
1387	return ""
1388}
1389
1390func (m *DeleteClusterRequest) GetRegion() string {
1391	if m != nil {
1392		return m.Region
1393	}
1394	return ""
1395}
1396
1397func (m *DeleteClusterRequest) GetClusterName() string {
1398	if m != nil {
1399		return m.ClusterName
1400	}
1401	return ""
1402}
1403
1404func (m *DeleteClusterRequest) GetClusterUuid() string {
1405	if m != nil {
1406		return m.ClusterUuid
1407	}
1408	return ""
1409}
1410
1411func (m *DeleteClusterRequest) GetRequestId() string {
1412	if m != nil {
1413		return m.RequestId
1414	}
1415	return ""
1416}
1417
1418// Request to get the resource representation for a cluster in a project.
1419type GetClusterRequest struct {
1420	// Required. The ID of the Google Cloud Platform project that the cluster
1421	// belongs to.
1422	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
1423	// Required. The Cloud Dataproc region in which to handle the request.
1424	Region string `protobuf:"bytes,3,opt,name=region,proto3" json:"region,omitempty"`
1425	// Required. The cluster name.
1426	ClusterName          string   `protobuf:"bytes,2,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
1427	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1428	XXX_unrecognized     []byte   `json:"-"`
1429	XXX_sizecache        int32    `json:"-"`
1430}
1431
1432func (m *GetClusterRequest) Reset()         { *m = GetClusterRequest{} }
1433func (m *GetClusterRequest) String() string { return proto.CompactTextString(m) }
1434func (*GetClusterRequest) ProtoMessage()    {}
1435func (*GetClusterRequest) Descriptor() ([]byte, []int) {
1436	return fileDescriptor_clusters_eb8dcc455338db63, []int{15}
1437}
1438func (m *GetClusterRequest) XXX_Unmarshal(b []byte) error {
1439	return xxx_messageInfo_GetClusterRequest.Unmarshal(m, b)
1440}
1441func (m *GetClusterRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1442	return xxx_messageInfo_GetClusterRequest.Marshal(b, m, deterministic)
1443}
1444func (dst *GetClusterRequest) XXX_Merge(src proto.Message) {
1445	xxx_messageInfo_GetClusterRequest.Merge(dst, src)
1446}
1447func (m *GetClusterRequest) XXX_Size() int {
1448	return xxx_messageInfo_GetClusterRequest.Size(m)
1449}
1450func (m *GetClusterRequest) XXX_DiscardUnknown() {
1451	xxx_messageInfo_GetClusterRequest.DiscardUnknown(m)
1452}
1453
1454var xxx_messageInfo_GetClusterRequest proto.InternalMessageInfo
1455
1456func (m *GetClusterRequest) GetProjectId() string {
1457	if m != nil {
1458		return m.ProjectId
1459	}
1460	return ""
1461}
1462
1463func (m *GetClusterRequest) GetRegion() string {
1464	if m != nil {
1465		return m.Region
1466	}
1467	return ""
1468}
1469
1470func (m *GetClusterRequest) GetClusterName() string {
1471	if m != nil {
1472		return m.ClusterName
1473	}
1474	return ""
1475}
1476
1477// A request to list the clusters in a project.
1478type ListClustersRequest struct {
1479	// Required. The ID of the Google Cloud Platform project that the cluster
1480	// belongs to.
1481	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
1482	// Required. The Cloud Dataproc region in which to handle the request.
1483	Region string `protobuf:"bytes,4,opt,name=region,proto3" json:"region,omitempty"`
1484	// Optional. A filter constraining the clusters to list. Filters are
1485	// case-sensitive and have the following syntax:
1486	//
1487	// field = value [AND [field = value]] ...
1488	//
1489	// where **field** is one of `status.state`, `clusterName`, or `labels.[KEY]`,
1490	// and `[KEY]` is a label key. **value** can be `*` to match all values.
1491	// `status.state` can be one of the following: `ACTIVE`, `INACTIVE`,
1492	// `CREATING`, `RUNNING`, `ERROR`, `DELETING`, or `UPDATING`. `ACTIVE`
1493	// contains the `CREATING`, `UPDATING`, and `RUNNING` states. `INACTIVE`
1494	// contains the `DELETING` and `ERROR` states.
1495	// `clusterName` is the name of the cluster provided at creation time.
1496	// Only the logical `AND` operator is supported; space-separated items are
1497	// treated as having an implicit `AND` operator.
1498	//
1499	// Example filter:
1500	//
1501	// status.state = ACTIVE AND clusterName = mycluster
1502	// AND labels.env = staging AND labels.starred = *
1503	Filter string `protobuf:"bytes,5,opt,name=filter,proto3" json:"filter,omitempty"`
1504	// Optional. The standard List page size.
1505	PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
1506	// Optional. The standard List page token.
1507	PageToken            string   `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
1508	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1509	XXX_unrecognized     []byte   `json:"-"`
1510	XXX_sizecache        int32    `json:"-"`
1511}
1512
1513func (m *ListClustersRequest) Reset()         { *m = ListClustersRequest{} }
1514func (m *ListClustersRequest) String() string { return proto.CompactTextString(m) }
1515func (*ListClustersRequest) ProtoMessage()    {}
1516func (*ListClustersRequest) Descriptor() ([]byte, []int) {
1517	return fileDescriptor_clusters_eb8dcc455338db63, []int{16}
1518}
1519func (m *ListClustersRequest) XXX_Unmarshal(b []byte) error {
1520	return xxx_messageInfo_ListClustersRequest.Unmarshal(m, b)
1521}
1522func (m *ListClustersRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1523	return xxx_messageInfo_ListClustersRequest.Marshal(b, m, deterministic)
1524}
1525func (dst *ListClustersRequest) XXX_Merge(src proto.Message) {
1526	xxx_messageInfo_ListClustersRequest.Merge(dst, src)
1527}
1528func (m *ListClustersRequest) XXX_Size() int {
1529	return xxx_messageInfo_ListClustersRequest.Size(m)
1530}
1531func (m *ListClustersRequest) XXX_DiscardUnknown() {
1532	xxx_messageInfo_ListClustersRequest.DiscardUnknown(m)
1533}
1534
1535var xxx_messageInfo_ListClustersRequest proto.InternalMessageInfo
1536
1537func (m *ListClustersRequest) GetProjectId() string {
1538	if m != nil {
1539		return m.ProjectId
1540	}
1541	return ""
1542}
1543
1544func (m *ListClustersRequest) GetRegion() string {
1545	if m != nil {
1546		return m.Region
1547	}
1548	return ""
1549}
1550
1551func (m *ListClustersRequest) GetFilter() string {
1552	if m != nil {
1553		return m.Filter
1554	}
1555	return ""
1556}
1557
1558func (m *ListClustersRequest) GetPageSize() int32 {
1559	if m != nil {
1560		return m.PageSize
1561	}
1562	return 0
1563}
1564
1565func (m *ListClustersRequest) GetPageToken() string {
1566	if m != nil {
1567		return m.PageToken
1568	}
1569	return ""
1570}
1571
1572// The list of all clusters in a project.
1573type ListClustersResponse struct {
1574	// Output only. The clusters in the project.
1575	Clusters []*Cluster `protobuf:"bytes,1,rep,name=clusters,proto3" json:"clusters,omitempty"`
1576	// Output only. This token is included in the response if there are more
1577	// results to fetch. To fetch additional results, provide this value as the
1578	// `page_token` in a subsequent `ListClustersRequest`.
1579	NextPageToken        string   `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
1580	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1581	XXX_unrecognized     []byte   `json:"-"`
1582	XXX_sizecache        int32    `json:"-"`
1583}
1584
1585func (m *ListClustersResponse) Reset()         { *m = ListClustersResponse{} }
1586func (m *ListClustersResponse) String() string { return proto.CompactTextString(m) }
1587func (*ListClustersResponse) ProtoMessage()    {}
1588func (*ListClustersResponse) Descriptor() ([]byte, []int) {
1589	return fileDescriptor_clusters_eb8dcc455338db63, []int{17}
1590}
1591func (m *ListClustersResponse) XXX_Unmarshal(b []byte) error {
1592	return xxx_messageInfo_ListClustersResponse.Unmarshal(m, b)
1593}
1594func (m *ListClustersResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1595	return xxx_messageInfo_ListClustersResponse.Marshal(b, m, deterministic)
1596}
1597func (dst *ListClustersResponse) XXX_Merge(src proto.Message) {
1598	xxx_messageInfo_ListClustersResponse.Merge(dst, src)
1599}
1600func (m *ListClustersResponse) XXX_Size() int {
1601	return xxx_messageInfo_ListClustersResponse.Size(m)
1602}
1603func (m *ListClustersResponse) XXX_DiscardUnknown() {
1604	xxx_messageInfo_ListClustersResponse.DiscardUnknown(m)
1605}
1606
1607var xxx_messageInfo_ListClustersResponse proto.InternalMessageInfo
1608
1609func (m *ListClustersResponse) GetClusters() []*Cluster {
1610	if m != nil {
1611		return m.Clusters
1612	}
1613	return nil
1614}
1615
1616func (m *ListClustersResponse) GetNextPageToken() string {
1617	if m != nil {
1618		return m.NextPageToken
1619	}
1620	return ""
1621}
1622
1623// A request to collect cluster diagnostic information.
1624type DiagnoseClusterRequest struct {
1625	// Required. The ID of the Google Cloud Platform project that the cluster
1626	// belongs to.
1627	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
1628	// Required. The Cloud Dataproc region in which to handle the request.
1629	Region string `protobuf:"bytes,3,opt,name=region,proto3" json:"region,omitempty"`
1630	// Required. The cluster name.
1631	ClusterName          string   `protobuf:"bytes,2,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
1632	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1633	XXX_unrecognized     []byte   `json:"-"`
1634	XXX_sizecache        int32    `json:"-"`
1635}
1636
1637func (m *DiagnoseClusterRequest) Reset()         { *m = DiagnoseClusterRequest{} }
1638func (m *DiagnoseClusterRequest) String() string { return proto.CompactTextString(m) }
1639func (*DiagnoseClusterRequest) ProtoMessage()    {}
1640func (*DiagnoseClusterRequest) Descriptor() ([]byte, []int) {
1641	return fileDescriptor_clusters_eb8dcc455338db63, []int{18}
1642}
1643func (m *DiagnoseClusterRequest) XXX_Unmarshal(b []byte) error {
1644	return xxx_messageInfo_DiagnoseClusterRequest.Unmarshal(m, b)
1645}
1646func (m *DiagnoseClusterRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1647	return xxx_messageInfo_DiagnoseClusterRequest.Marshal(b, m, deterministic)
1648}
1649func (dst *DiagnoseClusterRequest) XXX_Merge(src proto.Message) {
1650	xxx_messageInfo_DiagnoseClusterRequest.Merge(dst, src)
1651}
1652func (m *DiagnoseClusterRequest) XXX_Size() int {
1653	return xxx_messageInfo_DiagnoseClusterRequest.Size(m)
1654}
1655func (m *DiagnoseClusterRequest) XXX_DiscardUnknown() {
1656	xxx_messageInfo_DiagnoseClusterRequest.DiscardUnknown(m)
1657}
1658
1659var xxx_messageInfo_DiagnoseClusterRequest proto.InternalMessageInfo
1660
1661func (m *DiagnoseClusterRequest) GetProjectId() string {
1662	if m != nil {
1663		return m.ProjectId
1664	}
1665	return ""
1666}
1667
1668func (m *DiagnoseClusterRequest) GetRegion() string {
1669	if m != nil {
1670		return m.Region
1671	}
1672	return ""
1673}
1674
1675func (m *DiagnoseClusterRequest) GetClusterName() string {
1676	if m != nil {
1677		return m.ClusterName
1678	}
1679	return ""
1680}
1681
1682// The location of diagnostic output.
1683type DiagnoseClusterResults struct {
1684	// Output only. The Cloud Storage URI of the diagnostic output.
1685	// The output report is a plain text file with a summary of collected
1686	// diagnostics.
1687	OutputUri            string   `protobuf:"bytes,1,opt,name=output_uri,json=outputUri,proto3" json:"output_uri,omitempty"`
1688	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1689	XXX_unrecognized     []byte   `json:"-"`
1690	XXX_sizecache        int32    `json:"-"`
1691}
1692
1693func (m *DiagnoseClusterResults) Reset()         { *m = DiagnoseClusterResults{} }
1694func (m *DiagnoseClusterResults) String() string { return proto.CompactTextString(m) }
1695func (*DiagnoseClusterResults) ProtoMessage()    {}
1696func (*DiagnoseClusterResults) Descriptor() ([]byte, []int) {
1697	return fileDescriptor_clusters_eb8dcc455338db63, []int{19}
1698}
1699func (m *DiagnoseClusterResults) XXX_Unmarshal(b []byte) error {
1700	return xxx_messageInfo_DiagnoseClusterResults.Unmarshal(m, b)
1701}
1702func (m *DiagnoseClusterResults) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1703	return xxx_messageInfo_DiagnoseClusterResults.Marshal(b, m, deterministic)
1704}
1705func (dst *DiagnoseClusterResults) XXX_Merge(src proto.Message) {
1706	xxx_messageInfo_DiagnoseClusterResults.Merge(dst, src)
1707}
1708func (m *DiagnoseClusterResults) XXX_Size() int {
1709	return xxx_messageInfo_DiagnoseClusterResults.Size(m)
1710}
1711func (m *DiagnoseClusterResults) XXX_DiscardUnknown() {
1712	xxx_messageInfo_DiagnoseClusterResults.DiscardUnknown(m)
1713}
1714
1715var xxx_messageInfo_DiagnoseClusterResults proto.InternalMessageInfo
1716
1717func (m *DiagnoseClusterResults) GetOutputUri() string {
1718	if m != nil {
1719		return m.OutputUri
1720	}
1721	return ""
1722}
1723
1724func init() {
1725	proto.RegisterType((*Cluster)(nil), "google.cloud.dataproc.v1.Cluster")
1726	proto.RegisterMapType((map[string]string)(nil), "google.cloud.dataproc.v1.Cluster.LabelsEntry")
1727	proto.RegisterType((*ClusterConfig)(nil), "google.cloud.dataproc.v1.ClusterConfig")
1728	proto.RegisterType((*EncryptionConfig)(nil), "google.cloud.dataproc.v1.EncryptionConfig")
1729	proto.RegisterType((*GceClusterConfig)(nil), "google.cloud.dataproc.v1.GceClusterConfig")
1730	proto.RegisterMapType((map[string]string)(nil), "google.cloud.dataproc.v1.GceClusterConfig.MetadataEntry")
1731	proto.RegisterType((*InstanceGroupConfig)(nil), "google.cloud.dataproc.v1.InstanceGroupConfig")
1732	proto.RegisterType((*ManagedGroupConfig)(nil), "google.cloud.dataproc.v1.ManagedGroupConfig")
1733	proto.RegisterType((*AcceleratorConfig)(nil), "google.cloud.dataproc.v1.AcceleratorConfig")
1734	proto.RegisterType((*DiskConfig)(nil), "google.cloud.dataproc.v1.DiskConfig")
1735	proto.RegisterType((*NodeInitializationAction)(nil), "google.cloud.dataproc.v1.NodeInitializationAction")
1736	proto.RegisterType((*ClusterStatus)(nil), "google.cloud.dataproc.v1.ClusterStatus")
1737	proto.RegisterType((*SoftwareConfig)(nil), "google.cloud.dataproc.v1.SoftwareConfig")
1738	proto.RegisterMapType((map[string]string)(nil), "google.cloud.dataproc.v1.SoftwareConfig.PropertiesEntry")
1739	proto.RegisterType((*ClusterMetrics)(nil), "google.cloud.dataproc.v1.ClusterMetrics")
1740	proto.RegisterMapType((map[string]int64)(nil), "google.cloud.dataproc.v1.ClusterMetrics.HdfsMetricsEntry")
1741	proto.RegisterMapType((map[string]int64)(nil), "google.cloud.dataproc.v1.ClusterMetrics.YarnMetricsEntry")
1742	proto.RegisterType((*CreateClusterRequest)(nil), "google.cloud.dataproc.v1.CreateClusterRequest")
1743	proto.RegisterType((*UpdateClusterRequest)(nil), "google.cloud.dataproc.v1.UpdateClusterRequest")
1744	proto.RegisterType((*DeleteClusterRequest)(nil), "google.cloud.dataproc.v1.DeleteClusterRequest")
1745	proto.RegisterType((*GetClusterRequest)(nil), "google.cloud.dataproc.v1.GetClusterRequest")
1746	proto.RegisterType((*ListClustersRequest)(nil), "google.cloud.dataproc.v1.ListClustersRequest")
1747	proto.RegisterType((*ListClustersResponse)(nil), "google.cloud.dataproc.v1.ListClustersResponse")
1748	proto.RegisterType((*DiagnoseClusterRequest)(nil), "google.cloud.dataproc.v1.DiagnoseClusterRequest")
1749	proto.RegisterType((*DiagnoseClusterResults)(nil), "google.cloud.dataproc.v1.DiagnoseClusterResults")
1750	proto.RegisterEnum("google.cloud.dataproc.v1.ClusterStatus_State", ClusterStatus_State_name, ClusterStatus_State_value)
1751	proto.RegisterEnum("google.cloud.dataproc.v1.ClusterStatus_Substate", ClusterStatus_Substate_name, ClusterStatus_Substate_value)
1752}
1753
1754// Reference imports to suppress errors if they are not otherwise used.
1755var _ context.Context
1756var _ grpc.ClientConn
1757
1758// This is a compile-time assertion to ensure that this generated file
1759// is compatible with the grpc package it is being compiled against.
1760const _ = grpc.SupportPackageIsVersion4
1761
1762// ClusterControllerClient is the client API for ClusterController service.
1763//
1764// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
1765type ClusterControllerClient interface {
1766	// Creates a cluster in a project.
1767	CreateCluster(ctx context.Context, in *CreateClusterRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
1768	// Updates a cluster in a project.
1769	UpdateCluster(ctx context.Context, in *UpdateClusterRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
1770	// Deletes a cluster in a project.
1771	DeleteCluster(ctx context.Context, in *DeleteClusterRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
1772	// Gets the resource representation for a cluster in a project.
1773	GetCluster(ctx context.Context, in *GetClusterRequest, opts ...grpc.CallOption) (*Cluster, error)
1774	// Lists all regions/{region}/clusters in a project.
1775	ListClusters(ctx context.Context, in *ListClustersRequest, opts ...grpc.CallOption) (*ListClustersResponse, error)
1776	// Gets cluster diagnostic information.
1777	// After the operation completes, the Operation.response field
1778	// contains `DiagnoseClusterOutputLocation`.
1779	DiagnoseCluster(ctx context.Context, in *DiagnoseClusterRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
1780}
1781
1782type clusterControllerClient struct {
1783	cc *grpc.ClientConn
1784}
1785
1786func NewClusterControllerClient(cc *grpc.ClientConn) ClusterControllerClient {
1787	return &clusterControllerClient{cc}
1788}
1789
1790func (c *clusterControllerClient) CreateCluster(ctx context.Context, in *CreateClusterRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
1791	out := new(longrunning.Operation)
1792	err := c.cc.Invoke(ctx, "/google.cloud.dataproc.v1.ClusterController/CreateCluster", in, out, opts...)
1793	if err != nil {
1794		return nil, err
1795	}
1796	return out, nil
1797}
1798
1799func (c *clusterControllerClient) UpdateCluster(ctx context.Context, in *UpdateClusterRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
1800	out := new(longrunning.Operation)
1801	err := c.cc.Invoke(ctx, "/google.cloud.dataproc.v1.ClusterController/UpdateCluster", in, out, opts...)
1802	if err != nil {
1803		return nil, err
1804	}
1805	return out, nil
1806}
1807
1808func (c *clusterControllerClient) DeleteCluster(ctx context.Context, in *DeleteClusterRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
1809	out := new(longrunning.Operation)
1810	err := c.cc.Invoke(ctx, "/google.cloud.dataproc.v1.ClusterController/DeleteCluster", in, out, opts...)
1811	if err != nil {
1812		return nil, err
1813	}
1814	return out, nil
1815}
1816
1817func (c *clusterControllerClient) GetCluster(ctx context.Context, in *GetClusterRequest, opts ...grpc.CallOption) (*Cluster, error) {
1818	out := new(Cluster)
1819	err := c.cc.Invoke(ctx, "/google.cloud.dataproc.v1.ClusterController/GetCluster", in, out, opts...)
1820	if err != nil {
1821		return nil, err
1822	}
1823	return out, nil
1824}
1825
1826func (c *clusterControllerClient) ListClusters(ctx context.Context, in *ListClustersRequest, opts ...grpc.CallOption) (*ListClustersResponse, error) {
1827	out := new(ListClustersResponse)
1828	err := c.cc.Invoke(ctx, "/google.cloud.dataproc.v1.ClusterController/ListClusters", in, out, opts...)
1829	if err != nil {
1830		return nil, err
1831	}
1832	return out, nil
1833}
1834
1835func (c *clusterControllerClient) DiagnoseCluster(ctx context.Context, in *DiagnoseClusterRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
1836	out := new(longrunning.Operation)
1837	err := c.cc.Invoke(ctx, "/google.cloud.dataproc.v1.ClusterController/DiagnoseCluster", in, out, opts...)
1838	if err != nil {
1839		return nil, err
1840	}
1841	return out, nil
1842}
1843
1844// ClusterControllerServer is the server API for ClusterController service.
1845type ClusterControllerServer interface {
1846	// Creates a cluster in a project.
1847	CreateCluster(context.Context, *CreateClusterRequest) (*longrunning.Operation, error)
1848	// Updates a cluster in a project.
1849	UpdateCluster(context.Context, *UpdateClusterRequest) (*longrunning.Operation, error)
1850	// Deletes a cluster in a project.
1851	DeleteCluster(context.Context, *DeleteClusterRequest) (*longrunning.Operation, error)
1852	// Gets the resource representation for a cluster in a project.
1853	GetCluster(context.Context, *GetClusterRequest) (*Cluster, error)
1854	// Lists all regions/{region}/clusters in a project.
1855	ListClusters(context.Context, *ListClustersRequest) (*ListClustersResponse, error)
1856	// Gets cluster diagnostic information.
1857	// After the operation completes, the Operation.response field
1858	// contains `DiagnoseClusterOutputLocation`.
1859	DiagnoseCluster(context.Context, *DiagnoseClusterRequest) (*longrunning.Operation, error)
1860}
1861
1862func RegisterClusterControllerServer(s *grpc.Server, srv ClusterControllerServer) {
1863	s.RegisterService(&_ClusterController_serviceDesc, srv)
1864}
1865
1866func _ClusterController_CreateCluster_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
1867	in := new(CreateClusterRequest)
1868	if err := dec(in); err != nil {
1869		return nil, err
1870	}
1871	if interceptor == nil {
1872		return srv.(ClusterControllerServer).CreateCluster(ctx, in)
1873	}
1874	info := &grpc.UnaryServerInfo{
1875		Server:     srv,
1876		FullMethod: "/google.cloud.dataproc.v1.ClusterController/CreateCluster",
1877	}
1878	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
1879		return srv.(ClusterControllerServer).CreateCluster(ctx, req.(*CreateClusterRequest))
1880	}
1881	return interceptor(ctx, in, info, handler)
1882}
1883
1884func _ClusterController_UpdateCluster_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
1885	in := new(UpdateClusterRequest)
1886	if err := dec(in); err != nil {
1887		return nil, err
1888	}
1889	if interceptor == nil {
1890		return srv.(ClusterControllerServer).UpdateCluster(ctx, in)
1891	}
1892	info := &grpc.UnaryServerInfo{
1893		Server:     srv,
1894		FullMethod: "/google.cloud.dataproc.v1.ClusterController/UpdateCluster",
1895	}
1896	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
1897		return srv.(ClusterControllerServer).UpdateCluster(ctx, req.(*UpdateClusterRequest))
1898	}
1899	return interceptor(ctx, in, info, handler)
1900}
1901
1902func _ClusterController_DeleteCluster_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
1903	in := new(DeleteClusterRequest)
1904	if err := dec(in); err != nil {
1905		return nil, err
1906	}
1907	if interceptor == nil {
1908		return srv.(ClusterControllerServer).DeleteCluster(ctx, in)
1909	}
1910	info := &grpc.UnaryServerInfo{
1911		Server:     srv,
1912		FullMethod: "/google.cloud.dataproc.v1.ClusterController/DeleteCluster",
1913	}
1914	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
1915		return srv.(ClusterControllerServer).DeleteCluster(ctx, req.(*DeleteClusterRequest))
1916	}
1917	return interceptor(ctx, in, info, handler)
1918}
1919
1920func _ClusterController_GetCluster_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
1921	in := new(GetClusterRequest)
1922	if err := dec(in); err != nil {
1923		return nil, err
1924	}
1925	if interceptor == nil {
1926		return srv.(ClusterControllerServer).GetCluster(ctx, in)
1927	}
1928	info := &grpc.UnaryServerInfo{
1929		Server:     srv,
1930		FullMethod: "/google.cloud.dataproc.v1.ClusterController/GetCluster",
1931	}
1932	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
1933		return srv.(ClusterControllerServer).GetCluster(ctx, req.(*GetClusterRequest))
1934	}
1935	return interceptor(ctx, in, info, handler)
1936}
1937
1938func _ClusterController_ListClusters_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
1939	in := new(ListClustersRequest)
1940	if err := dec(in); err != nil {
1941		return nil, err
1942	}
1943	if interceptor == nil {
1944		return srv.(ClusterControllerServer).ListClusters(ctx, in)
1945	}
1946	info := &grpc.UnaryServerInfo{
1947		Server:     srv,
1948		FullMethod: "/google.cloud.dataproc.v1.ClusterController/ListClusters",
1949	}
1950	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
1951		return srv.(ClusterControllerServer).ListClusters(ctx, req.(*ListClustersRequest))
1952	}
1953	return interceptor(ctx, in, info, handler)
1954}
1955
1956func _ClusterController_DiagnoseCluster_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
1957	in := new(DiagnoseClusterRequest)
1958	if err := dec(in); err != nil {
1959		return nil, err
1960	}
1961	if interceptor == nil {
1962		return srv.(ClusterControllerServer).DiagnoseCluster(ctx, in)
1963	}
1964	info := &grpc.UnaryServerInfo{
1965		Server:     srv,
1966		FullMethod: "/google.cloud.dataproc.v1.ClusterController/DiagnoseCluster",
1967	}
1968	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
1969		return srv.(ClusterControllerServer).DiagnoseCluster(ctx, req.(*DiagnoseClusterRequest))
1970	}
1971	return interceptor(ctx, in, info, handler)
1972}
1973
1974var _ClusterController_serviceDesc = grpc.ServiceDesc{
1975	ServiceName: "google.cloud.dataproc.v1.ClusterController",
1976	HandlerType: (*ClusterControllerServer)(nil),
1977	Methods: []grpc.MethodDesc{
1978		{
1979			MethodName: "CreateCluster",
1980			Handler:    _ClusterController_CreateCluster_Handler,
1981		},
1982		{
1983			MethodName: "UpdateCluster",
1984			Handler:    _ClusterController_UpdateCluster_Handler,
1985		},
1986		{
1987			MethodName: "DeleteCluster",
1988			Handler:    _ClusterController_DeleteCluster_Handler,
1989		},
1990		{
1991			MethodName: "GetCluster",
1992			Handler:    _ClusterController_GetCluster_Handler,
1993		},
1994		{
1995			MethodName: "ListClusters",
1996			Handler:    _ClusterController_ListClusters_Handler,
1997		},
1998		{
1999			MethodName: "DiagnoseCluster",
2000			Handler:    _ClusterController_DiagnoseCluster_Handler,
2001		},
2002	},
2003	Streams:  []grpc.StreamDesc{},
2004	Metadata: "google/cloud/dataproc/v1/clusters.proto",
2005}
2006
2007func init() {
2008	proto.RegisterFile("google/cloud/dataproc/v1/clusters.proto", fileDescriptor_clusters_eb8dcc455338db63)
2009}
2010
2011var fileDescriptor_clusters_eb8dcc455338db63 = []byte{
2012	// 2079 bytes of a gzipped FileDescriptorProto
2013	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x59, 0xcd, 0x73, 0x1c, 0x47,
2014	0x15, 0xcf, 0x68, 0xb5, 0xd2, 0xea, 0xed, 0x87, 0x56, 0x1d, 0x45, 0x6c, 0x94, 0x84, 0x38, 0x93,
2015	0x80, 0x15, 0x27, 0xec, 0xda, 0x0a, 0x14, 0x89, 0x4d, 0x42, 0x64, 0xed, 0xda, 0x16, 0x96, 0xd7,
2016	0x62, 0x76, 0x65, 0x27, 0x14, 0x30, 0xd5, 0x3b, 0xd3, 0x5a, 0x37, 0x9a, 0xaf, 0x4c, 0xf7, 0x28,
2017	0x59, 0xbb, 0x7c, 0x81, 0x2a, 0xaa, 0x28, 0x8e, 0x54, 0x71, 0xe6, 0x00, 0x55, 0x90, 0x63, 0xe0,
2018	0xc4, 0x3f, 0xc0, 0x85, 0xe2, 0xc2, 0xbf, 0xc0, 0x81, 0x3f, 0x83, 0xea, 0x8f, 0xd9, 0x9d, 0x59,
2019	0x7d, 0xac, 0x64, 0x5c, 0x39, 0x69, 0xe6, 0xf5, 0xef, 0xbd, 0xf7, 0xeb, 0xee, 0xd7, 0xbf, 0x79,
2020	0xbd, 0x82, 0xcb, 0xc3, 0x30, 0x1c, 0x7a, 0xa4, 0xe5, 0x78, 0x61, 0xe2, 0xb6, 0x5c, 0xcc, 0x71,
2021	0x14, 0x87, 0x4e, 0xeb, 0xe8, 0x5a, 0xcb, 0xf1, 0x12, 0xc6, 0x49, 0xcc, 0x9a, 0x51, 0x1c, 0xf2,
2022	0x10, 0x35, 0x14, 0xb0, 0x29, 0x81, 0xcd, 0x14, 0xd8, 0x3c, 0xba, 0xb6, 0xfe, 0xaa, 0x0e, 0x81,
2023	0x23, 0xda, 0xc2, 0x41, 0x10, 0x72, 0xcc, 0x69, 0x18, 0x68, 0xbf, 0xf5, 0xb7, 0x4f, 0x4d, 0x10,
2024	0x46, 0x24, 0xce, 0x41, 0xdf, 0xd4, 0x50, 0x2f, 0x0c, 0x86, 0x71, 0x12, 0x04, 0x34, 0x18, 0x1e,
2025	0x07, 0x7d, 0x53, 0x83, 0xe4, 0xdb, 0x20, 0x39, 0x68, 0xb9, 0x89, 0x02, 0xe8, 0xf1, 0x4b, 0xd3,
2026	0xe3, 0x07, 0x94, 0x78, 0xae, 0xed, 0x63, 0x76, 0xa8, 0x11, 0xaf, 0x4f, 0x23, 0x38, 0xf5, 0x09,
2027	0xe3, 0xd8, 0x8f, 0x14, 0xc0, 0xfc, 0xf5, 0x3c, 0x2c, 0x6e, 0xab, 0xd9, 0xa3, 0xd7, 0x00, 0xa2,
2028	0x38, 0xfc, 0x05, 0x71, 0xb8, 0x4d, 0xdd, 0x86, 0x71, 0xc9, 0xd8, 0x58, 0xb2, 0x96, 0xb4, 0x65,
2029	0xc7, 0x45, 0x6f, 0x40, 0x45, 0xaf, 0x93, 0x1d, 0x60, 0x9f, 0x34, 0xe6, 0x24, 0xa0, 0xac, 0x6d,
2030	0x5d, 0xec, 0x13, 0xf4, 0x43, 0x58, 0x70, 0xc2, 0xe0, 0x80, 0x0e, 0x1b, 0x85, 0x4b, 0xc6, 0x46,
2031	0x79, 0xf3, 0x72, 0xf3, 0xb4, 0x95, 0x6c, 0xea, 0xa4, 0xdb, 0x12, 0x6e, 0x69, 0x37, 0xd4, 0x81,
2032	0x05, 0x0f, 0x0f, 0x88, 0xc7, 0x1a, 0xa5, 0x4b, 0x85, 0x8d, 0xf2, 0xe6, 0x77, 0x66, 0x06, 0x68,
2033	0xee, 0x4a, 0x7c, 0x27, 0xe0, 0xf1, 0xc8, 0xd2, 0xce, 0x82, 0x07, 0xe3, 0x98, 0x27, 0xac, 0x31,
2034	0x7f, 0x4e, 0x1e, 0x3d, 0x09, 0xb7, 0xb4, 0x1b, 0xea, 0x42, 0x4d, 0x3d, 0xd9, 0x8f, 0x28, 0xe3,
2035	0x61, 0x3c, 0x6a, 0x2c, 0x4a, 0x3e, 0xe7, 0x0e, 0x54, 0x55, 0xee, 0x77, 0x94, 0x77, 0x76, 0xed,
2036	0x92, 0x84, 0xba, 0x8d, 0x85, 0xdc, 0xda, 0xed, 0x27, 0xd4, 0x45, 0x37, 0x61, 0xd1, 0x27, 0x3c,
2037	0xa6, 0x0e, 0x6b, 0x2c, 0x49, 0xd2, 0x1b, 0x33, 0x73, 0xdd, 0x53, 0x78, 0x2b, 0x75, 0x5c, 0xff,
2038	0x00, 0xca, 0x99, 0xe5, 0x40, 0x75, 0x28, 0x1c, 0x92, 0x91, 0xde, 0x49, 0xf1, 0x88, 0x56, 0xa1,
2039	0x78, 0x84, 0xbd, 0x24, 0xdd, 0x3c, 0xf5, 0x72, 0x7d, 0xee, 0x7d, 0xc3, 0xfc, 0x5b, 0x11, 0xaa,
2040	0xb9, 0x3d, 0x41, 0x6f, 0x42, 0x55, 0xed, 0x8a, 0x3d, 0x48, 0x9c, 0x43, 0xc2, 0x75, 0x9c, 0x8a,
2041	0x32, 0xde, 0x94, 0x36, 0xf4, 0x09, 0xa0, 0xa1, 0x43, 0xec, 0x74, 0x72, 0x7a, 0xf7, 0x4b, 0x72,
2042	0x02, 0x57, 0x4e, 0x9f, 0xc0, 0x6d, 0x87, 0xe4, 0x0b, 0xa0, 0x3e, 0x9c, 0xb2, 0x20, 0x0b, 0xaa,
2043	0x3e, 0xce, 0x06, 0x55, 0xab, 0x72, 0x46, 0x45, 0xec, 0x04, 0x8c, 0xe3, 0xc0, 0x21, 0xb7, 0xe3,
2044	0x30, 0x89, 0x74, 0xdc, 0x8a, 0x8a, 0x31, 0x89, 0xf9, 0x79, 0x18, 0x1f, 0x4e, 0x62, 0xc2, 0x33,
2045	0xc5, 0x54, 0x31, 0x74, 0x4c, 0x02, 0xdf, 0x60, 0xc4, 0x09, 0x03, 0x17, 0xc7, 0x23, 0x3b, 0x1f,
2046	0xbd, 0xf2, 0x2c, 0xd1, 0x5f, 0x1a, 0x47, 0x7b, 0x98, 0x4d, 0xf3, 0x63, 0x58, 0x66, 0xe1, 0x01,
2047	0xff, 0x1c, 0xc7, 0x24, 0x0d, 0x5f, 0x9d, 0x55, 0x26, 0x3d, 0xed, 0xa0, 0x23, 0xd7, 0x58, 0xee,
2048	0x1d, 0x51, 0x58, 0xa3, 0x01, 0xe5, 0x14, 0x7b, 0xf4, 0xb1, 0x94, 0x15, 0x1b, 0x3b, 0x52, 0x7e,
2049	0x1a, 0x65, 0x59, 0xec, 0x9b, 0xa7, 0x47, 0xee, 0x86, 0x2e, 0xd9, 0xc9, 0xf9, 0x6e, 0x49, 0x57,
2050	0xeb, 0x25, 0x7a, 0x82, 0x95, 0xa1, 0x87, 0xb0, 0x42, 0x02, 0x27, 0x1e, 0x45, 0x32, 0x8d, 0xe6,
2051	0xbf, 0x3c, 0xab, 0x4a, 0x3a, 0x63, 0x97, 0xb4, 0x4a, 0xc8, 0x94, 0xc5, 0xfc, 0x18, 0xea, 0xd3,
2052	0x28, 0xf4, 0x2e, 0xbc, 0x28, 0x6a, 0x32, 0x72, 0xed, 0x43, 0x9f, 0xd9, 0x87, 0x64, 0xa4, 0xf4,
2053	0x4a, 0x95, 0xef, 0xf2, 0xd0, 0x21, 0x7b, 0xee, 0x5d, 0x9f, 0xdd, 0x25, 0x23, 0xa1, 0x59, 0xe6,
2054	0x9f, 0x0a, 0x50, 0x9f, 0x2e, 0x47, 0xf4, 0x32, 0x94, 0x1e, 0x87, 0x01, 0xb1, 0x93, 0x98, 0x6a,
2055	0xbf, 0x45, 0xf1, 0xbe, 0x1f, 0x53, 0xf4, 0x3a, 0x94, 0x03, 0xc2, 0xc5, 0x46, 0xcb, 0x51, 0x75,
2056	0x90, 0x40, 0x9b, 0x04, 0xe0, 0x5b, 0x50, 0x63, 0xc9, 0x20, 0x8b, 0x51, 0xa7, 0xbd, 0x3a, 0xb1,
2057	0x0a, 0xd8, 0x06, 0xd4, 0x69, 0xc0, 0x49, 0x1c, 0x60, 0xcf, 0xa6, 0x91, 0x1d, 0x06, 0x9e, 0x10,
2058	0x19, 0x63, 0xa3, 0x64, 0xd5, 0x52, 0xfb, 0x4e, 0x74, 0x3f, 0xf0, 0x46, 0xe8, 0x32, 0x2c, 0x33,
2059	0x12, 0x1f, 0x51, 0x87, 0xd8, 0xd8, 0x71, 0xc2, 0x24, 0xe0, 0xf2, 0x80, 0x2d, 0x59, 0x35, 0x6d,
2060	0xde, 0x52, 0x56, 0xf4, 0x5d, 0x58, 0x9b, 0x02, 0xda, 0xcc, 0x09, 0x23, 0xc2, 0x1a, 0x85, 0x4b,
2061	0x85, 0x8d, 0x25, 0x6b, 0x35, 0x8f, 0xef, 0xc9, 0x31, 0x84, 0x60, 0x9e, 0xe3, 0xa1, 0x90, 0x4a,
2062	0x81, 0x91, 0xcf, 0xa8, 0x0f, 0x25, 0x9f, 0x70, 0x2c, 0x36, 0xa3, 0x51, 0x94, 0xc5, 0xf0, 0xfe,
2063	0xf9, 0x0f, 0x73, 0xf3, 0x9e, 0x76, 0x55, 0xa2, 0x3c, 0x8e, 0xb4, 0x7e, 0x03, 0xaa, 0xb9, 0xa1,
2064	0x0b, 0x09, 0xd4, 0x3f, 0x0a, 0xf0, 0xe2, 0x09, 0xe7, 0x45, 0xc8, 0x54, 0x90, 0xf8, 0x36, 0xd5,
2065	0x43, 0x4c, 0x46, 0x2b, 0x5a, 0x95, 0x20, 0xf1, 0x53, 0x38, 0x13, 0x7b, 0x92, 0x02, 0x64, 0x31,
2066	0xb0, 0xc6, 0x9c, 0x9c, 0x6d, 0x35, 0xb5, 0x8a, 0x52, 0x60, 0xe8, 0x15, 0x58, 0xa2, 0x3e, 0x1e,
2067	0xaa, 0x7d, 0x2f, 0x48, 0x06, 0x25, 0x69, 0xd0, 0x1b, 0xe6, 0x63, 0xe7, 0x11, 0x0d, 0x88, 0xcd,
2068	0x47, 0x91, 0xc2, 0xcc, 0xab, 0x7d, 0xd0, 0xf6, 0xfe, 0x28, 0x92, 0xc8, 0x0e, 0x94, 0x5d, 0xca,
2069	0x0e, 0xd3, 0x3a, 0x2f, 0xca, 0x3a, 0x7f, 0xeb, 0xf4, 0x05, 0x6c, 0x53, 0x76, 0xa8, 0x2b, 0x1c,
2070	0xdc, 0xf1, 0xb3, 0x24, 0xcd, 0xec, 0x28, 0x26, 0xc4, 0x8f, 0x38, 0x1d, 0x78, 0x44, 0x16, 0x52,
2071	0xc9, 0xaa, 0x52, 0xb6, 0x37, 0x31, 0xa2, 0x9f, 0xc3, 0xaa, 0x8f, 0x03, 0x3c, 0x24, 0xae, 0x3d,
2072	0x14, 0xeb, 0x92, 0xa6, 0x5d, 0x94, 0x69, 0xdf, 0x3d, 0x3d, 0xed, 0x3d, 0xe5, 0x95, 0x15, 0x1f,
2073	0xe4, 0x1f, 0xb3, 0xa1, 0xfb, 0x50, 0xc1, 0x8e, 0x43, 0x3c, 0xd1, 0x9c, 0x84, 0x71, 0xfa, 0x65,
2074	0x7e, 0xe7, 0xf4, 0xb8, 0x5b, 0x13, 0x74, 0xaa, 0x98, 0xd9, 0x00, 0xe6, 0x6f, 0x0c, 0x40, 0xc7,
2075	0x73, 0x8b, 0xea, 0x1d, 0xef, 0x11, 0x27, 0x7e, 0xe4, 0x61, 0x4e, 0xb2, 0x27, 0x77, 0x35, 0x1d,
2076	0xed, 0xeb, 0x41, 0xd9, 0x72, 0x7c, 0x08, 0xaf, 0x8c, 0xbd, 0xd4, 0xf4, 0xd5, 0x14, 0x72, 0x4d,
2077	0x4a, 0x83, 0x66, 0x0b, 0x47, 0xe5, 0x96, 0x1d, 0x8b, 0x19, 0xc3, 0xca, 0x31, 0xba, 0xe8, 0x2a,
2078	0xac, 0x66, 0x08, 0x4f, 0x76, 0x5b, 0xf1, 0x40, 0x99, 0xb1, 0x74, 0xc7, 0xdf, 0x81, 0x95, 0xac,
2079	0x87, 0x3a, 0xa4, 0x73, 0xb2, 0x10, 0xeb, 0x38, 0x1b, 0x3f, 0x09, 0xb8, 0xf9, 0x2b, 0x03, 0x60,
2080	0xb2, 0xe5, 0xe8, 0x2d, 0xa8, 0x0d, 0xc2, 0x90, 0xdb, 0xb2, 0x64, 0x44, 0x2e, 0x5d, 0x79, 0x15,
2081	0x61, 0x15, 0x38, 0x91, 0x04, 0xbd, 0x0d, 0x2b, 0x13, 0x14, 0xa3, 0x8f, 0x89, 0x3d, 0x1c, 0xe8,
2082	0x52, 0xaf, 0xa5, 0xc0, 0x1e, 0x7d, 0x4c, 0x6e, 0x0f, 0x44, 0x40, 0x71, 0x22, 0xbc, 0xd0, 0xc1,
2083	0x9e, 0xcd, 0x98, 0xcb, 0x34, 0x13, 0x71, 0x24, 0x76, 0x85, 0xb1, 0xc7, 0x5c, 0x66, 0xfe, 0xd6,
2084	0x80, 0xc6, 0x69, 0x32, 0x2e, 0x24, 0x87, 0x7c, 0x41, 0x9c, 0x84, 0xe3, 0x81, 0x47, 0xec, 0x03,
2085	0xea, 0xa5, 0x9b, 0x50, 0x9b, 0x98, 0x6f, 0x51, 0x8f, 0xa0, 0x5b, 0xb0, 0xa2, 0x2c, 0x42, 0xd7,
2086	0x45, 0x73, 0x19, 0x26, 0x6a, 0xe2, 0xe5, 0xcd, 0x97, 0xd3, 0x0a, 0x49, 0x9b, 0xcf, 0x66, 0x5b,
2087	0xb7, 0xaf, 0x56, 0x7d, 0xec, 0xd3, 0x57, 0x2e, 0xe6, 0xef, 0x0b, 0xe3, 0xf6, 0x43, 0x75, 0x50,
2088	0x68, 0x1b, 0x8a, 0xa2, 0x87, 0x52, 0x89, 0x6b, 0xe7, 0xe8, 0x04, 0x95, 0x5f, 0x53, 0xfc, 0x21,
2089	0x96, 0xf2, 0x45, 0x6b, 0xb0, 0xe0, 0x12, 0x8e, 0xa9, 0xa7, 0x0b, 0x41, 0xbf, 0xa1, 0x36, 0xd4,
2090	0x25, 0xc0, 0x66, 0x1c, 0xc7, 0x5c, 0x12, 0xd7, 0x2d, 0xeb, 0xfa, 0x31, 0xd6, 0xfd, 0xb4, 0x65,
2091	0xb6, 0x64, 0x4f, 0x48, 0x7a, 0xc2, 0x45, 0x18, 0xd1, 0x2e, 0x94, 0x58, 0x32, 0x50, 0x2c, 0xe7,
2092	0x25, 0xcb, 0xab, 0xe7, 0x66, 0xa9, 0xfd, 0xac, 0x71, 0x04, 0xf3, 0x01, 0x14, 0x25, 0x77, 0x54,
2093	0x86, 0xc5, 0xfd, 0xee, 0xdd, 0xee, 0xfd, 0x87, 0xdd, 0xfa, 0x0b, 0xa8, 0x02, 0xa5, 0x6d, 0xab,
2094	0xb3, 0xd5, 0xdf, 0xe9, 0xde, 0xae, 0x1b, 0x62, 0xc8, 0xda, 0xef, 0x76, 0xc5, 0xcb, 0x1c, 0x5a,
2095	0x82, 0x62, 0xc7, 0xb2, 0xee, 0x5b, 0xf5, 0x82, 0x40, 0xb5, 0x3b, 0xbb, 0x1d, 0x89, 0x9a, 0x17,
2096	0x6f, 0xfb, 0x7b, 0x6d, 0xe5, 0x53, 0x34, 0x7f, 0x00, 0xa5, 0x34, 0x1b, 0x5a, 0x86, 0xf2, 0x7e,
2097	0xb7, 0xb7, 0xd7, 0xd9, 0xde, 0xb9, 0xb5, 0xd3, 0x69, 0xd7, 0x5f, 0x40, 0x55, 0x58, 0xda, 0xef,
2098	0xde, 0xe9, 0x6c, 0xed, 0xf6, 0xef, 0x7c, 0x5a, 0x37, 0x50, 0x1d, 0x2a, 0xbd, 0xfe, 0xd6, 0x6e,
2099	0xc7, 0xee, 0xf5, 0xb7, 0xfa, 0xfb, 0xbd, 0xfa, 0x9c, 0xf9, 0x2f, 0x03, 0x6a, 0xf9, 0x3e, 0x42,
2100	0x28, 0xae, 0x52, 0xc9, 0x23, 0x12, 0x33, 0x1a, 0x06, 0x69, 0x63, 0x28, 0x8d, 0x0f, 0x94, 0x0d,
2101	0x7d, 0x22, 0x2f, 0x13, 0x11, 0x89, 0x39, 0xd5, 0x6a, 0x7b, 0xe6, 0x37, 0x24, 0x9f, 0xa2, 0xb9,
2102	0x37, 0x76, 0x55, 0xdf, 0x90, 0x4c, 0xac, 0xf5, 0x0f, 0x61, 0x79, 0x6a, 0xf8, 0x42, 0xdf, 0x91,
2103	0x7f, 0xce, 0x41, 0x2d, 0xdf, 0x3f, 0xa3, 0x9f, 0x42, 0xe5, 0x91, 0x7b, 0xc0, 0xec, 0xb4, 0xff,
2104	0x36, 0x24, 0xdb, 0x0f, 0xce, 0xdb, 0x7f, 0x37, 0xef, 0xb8, 0x07, 0x4c, 0x3f, 0x2b, 0xba, 0xe5,
2105	0x47, 0x13, 0x8b, 0x88, 0x3e, 0xc2, 0x71, 0x30, 0x8e, 0x3e, 0x77, 0xc1, 0xe8, 0x9f, 0xe2, 0x38,
2106	0xc8, 0x47, 0x1f, 0x4d, 0x2c, 0xeb, 0x1f, 0x41, 0x7d, 0x3a, 0xfd, 0xac, 0xe5, 0x28, 0x64, 0x96,
2107	0x43, 0xf8, 0x4f, 0x27, 0xb8, 0x88, 0xbf, 0xf9, 0x17, 0x03, 0x56, 0xb7, 0x63, 0x82, 0x79, 0xda,
2108	0x03, 0x58, 0xe4, 0xb3, 0x84, 0x30, 0x3e, 0xeb, 0x36, 0xb9, 0x06, 0x0b, 0x31, 0x19, 0x8a, 0xea,
2109	0x51, 0x6a, 0xa7, 0xdf, 0xd0, 0x0d, 0x58, 0xd4, 0x97, 0x09, 0x2d, 0x23, 0x6f, 0xcc, 0x5c, 0x28,
2110	0x2b, 0xf5, 0x10, 0x39, 0x63, 0x95, 0x5e, 0xe4, 0x54, 0x1f, 0xe7, 0x25, 0x6d, 0xd9, 0x71, 0xcd,
2111	0xff, 0xce, 0xc1, 0xea, 0x7e, 0xe4, 0xfe, 0x1f, 0x5c, 0x8b, 0x39, 0xae, 0xe7, 0xb8, 0x11, 0x67,
2112	0xa6, 0x53, 0xb8, 0xf0, 0x74, 0x7e, 0x06, 0xaf, 0x0d, 0x63, 0xec, 0x90, 0x83, 0xc4, 0xb3, 0x5d,
2113	0xe2, 0x84, 0xbe, 0x4f, 0x19, 0xcb, 0x0a, 0xed, 0xc2, 0x2c, 0xa1, 0x7d, 0x25, 0xf5, 0x6f, 0x67,
2114	0xdc, 0xb5, 0xe6, 0xa2, 0x1b, 0x50, 0x4e, 0xe4, 0x6a, 0xc8, 0x5f, 0x0c, 0xf4, 0x55, 0xf9, 0xb8,
2115	0xfe, 0xdd, 0xa2, 0xc4, 0x73, 0xef, 0x61, 0x76, 0x68, 0x81, 0x82, 0x8b, 0xe7, 0xa9, 0xa5, 0x5e,
2116	0x9c, 0x5e, 0xea, 0xaf, 0x0c, 0x58, 0x6d, 0x13, 0x8f, 0x3c, 0xaf, 0xb2, 0x38, 0xc7, 0x52, 0x4f,
2117	0xdf, 0xb1, 0xe7, 0x8f, 0xdf, 0xb1, 0xf3, 0xa4, 0x8b, 0xd3, 0xa4, 0x7d, 0x58, 0xb9, 0x4d, 0xf8,
2118	0xd7, 0x45, 0xd8, 0xfc, 0x83, 0x01, 0x2f, 0xee, 0x52, 0x96, 0x26, 0x64, 0x17, 0xce, 0x38, 0x9f,
2119	0xcb, 0xb8, 0x06, 0x0b, 0x07, 0xd4, 0x13, 0x95, 0xa6, 0xab, 0x54, 0xbd, 0x89, 0xa6, 0x36, 0x12,
2120	0x6a, 0x2d, 0x9a, 0x06, 0xdd, 0x09, 0x94, 0x84, 0x41, 0x74, 0x0b, 0x32, 0x97, 0x18, 0xe4, 0xe1,
2121	0x21, 0x49, 0xa7, 0x20, 0xe1, 0x7d, 0x61, 0x30, 0x9f, 0xc2, 0x6a, 0x9e, 0x21, 0x8b, 0xc2, 0x80,
2122	0x89, 0xae, 0xab, 0x94, 0xfe, 0x66, 0xa6, 0xd5, 0xf2, 0x1c, 0x75, 0x3d, 0x76, 0x41, 0xdf, 0x86,
2123	0xe5, 0x80, 0x7c, 0xc1, 0xed, 0x4c, 0x6a, 0xb5, 0x3e, 0x55, 0x61, 0xde, 0x1b, 0xa7, 0x8f, 0x61,
2124	0xad, 0x4d, 0xf1, 0x30, 0x08, 0xd9, 0xd7, 0x56, 0x46, 0xe6, 0xf7, 0x4f, 0xc8, 0xc9, 0x12, 0x8f,
2125	0x33, 0x91, 0x33, 0x4c, 0x78, 0x94, 0xf0, 0x4c, 0x33, 0xb8, 0xa4, 0x2c, 0xfb, 0x31, 0xdd, 0xfc,
2126	0xaa, 0x04, 0x2b, 0x93, 0x7b, 0x10, 0x8f, 0x43, 0xcf, 0x23, 0x31, 0xfa, 0xa3, 0x01, 0xd5, 0x9c,
2127	0x3e, 0xa2, 0xe6, 0x19, 0x2b, 0x75, 0x82, 0x90, 0xae, 0xbf, 0x96, 0xe2, 0x33, 0xbf, 0x15, 0x36,
2128	0xef, 0xa7, 0xbf, 0x15, 0x9a, 0xed, 0x5f, 0xfe, 0xfb, 0x3f, 0xbf, 0x9b, 0xfb, 0xc8, 0x7c, 0xaf,
2129	0x75, 0x74, 0xad, 0xa5, 0x57, 0x80, 0xb5, 0x9e, 0x4c, 0x56, 0xe7, 0x69, 0x4b, 0x4d, 0x9e, 0xb5,
2130	0x9e, 0xa8, 0x87, 0xa7, 0xe3, 0xdf, 0x3b, 0xaf, 0x8f, 0xa5, 0xe6, 0xaf, 0x06, 0x54, 0x73, 0xd2,
2131	0x78, 0x16, 0xcd, 0x93, 0x34, 0x74, 0x16, 0xcd, 0x9e, 0xa4, 0x79, 0x6f, 0xf3, 0xe6, 0x33, 0xd0,
2132	0x6c, 0x3d, 0xc9, 0x6e, 0xda, 0xd3, 0x09, 0xeb, 0x2f, 0x0d, 0xa8, 0xe6, 0x54, 0xe6, 0x2c, 0xd6,
2133	0x27, 0xc9, 0xd1, 0x2c, 0xd6, 0x3f, 0x92, 0xac, 0xdb, 0x57, 0x9e, 0x03, 0x6b, 0xf4, 0x67, 0x03,
2134	0x60, 0x22, 0x2f, 0xe8, 0x8c, 0x0b, 0xd4, 0x31, 0x11, 0x5a, 0x9f, 0x7d, 0xba, 0x52, 0xaa, 0xe8,
2135	0x79, 0x50, 0xfd, 0xd2, 0x80, 0x4a, 0xf6, 0xdc, 0xa3, 0x33, 0xba, 0xef, 0x13, 0x14, 0x6c, 0xbd,
2136	0x79, 0x5e, 0xb8, 0x92, 0x13, 0xf3, 0x86, 0xe4, 0xfe, 0x3d, 0xf4, 0x2c, 0x35, 0x8c, 0xfe, 0x6e,
2137	0xc0, 0xf2, 0xd4, 0x89, 0x45, 0x57, 0xcf, 0xba, 0x6c, 0x9f, 0x24, 0x28, 0xb3, 0x0a, 0xe1, 0x81,
2138	0x64, 0xb8, 0x67, 0xde, 0x7d, 0x0e, 0xe5, 0xeb, 0x6a, 0x06, 0xd7, 0x8d, 0x2b, 0x37, 0x3f, 0x83,
2139	0x57, 0x9d, 0xd0, 0x3f, 0x95, 0xed, 0xcd, 0xf4, 0x52, 0xc4, 0xf6, 0xc4, 0xe7, 0x78, 0xcf, 0xf8,
2140	0xc9, 0xc7, 0x1a, 0x3a, 0x0c, 0x3d, 0x1c, 0x0c, 0x9b, 0x61, 0x3c, 0x6c, 0x0d, 0x49, 0x20, 0x3f,
2141	0xd6, 0x2d, 0x35, 0x84, 0x23, 0xca, 0x8e, 0xff, 0x0b, 0xe2, 0x46, 0xfa, 0x3c, 0x58, 0x90, 0xe0,
2142	0xf7, 0xfe, 0x17, 0x00, 0x00, 0xff, 0xff, 0xf6, 0x97, 0xd2, 0xcf, 0x0f, 0x19, 0x00, 0x00,
2143}
2144