1// Code generated by protoc-gen-go. DO NOT EDIT.
2// source: google/bigtable/admin/cluster/v1/bigtable_cluster_service.proto
3
4package cluster
5
6import proto "github.com/golang/protobuf/proto"
7import fmt "fmt"
8import math "math"
9import _ "google.golang.org/genproto/googleapis/api/annotations"
10import google_longrunning "google.golang.org/genproto/googleapis/longrunning"
11import google_protobuf2 "github.com/golang/protobuf/ptypes/empty"
12
13import (
14	context "golang.org/x/net/context"
15	grpc "google.golang.org/grpc"
16)
17
18// Reference imports to suppress errors if they are not otherwise used.
19var _ = proto.Marshal
20var _ = fmt.Errorf
21var _ = math.Inf
22
23// Reference imports to suppress errors if they are not otherwise used.
24var _ context.Context
25var _ grpc.ClientConn
26
27// This is a compile-time assertion to ensure that this generated file
28// is compatible with the grpc package it is being compiled against.
29const _ = grpc.SupportPackageIsVersion4
30
31// Client API for BigtableClusterService service
32
33type BigtableClusterServiceClient interface {
34	// Lists the supported zones for the given project.
35	ListZones(ctx context.Context, in *ListZonesRequest, opts ...grpc.CallOption) (*ListZonesResponse, error)
36	// Gets information about a particular cluster.
37	GetCluster(ctx context.Context, in *GetClusterRequest, opts ...grpc.CallOption) (*Cluster, error)
38	// Lists all clusters in the given project, along with any zones for which
39	// cluster information could not be retrieved.
40	ListClusters(ctx context.Context, in *ListClustersRequest, opts ...grpc.CallOption) (*ListClustersResponse, error)
41	// Creates a cluster and begins preparing it to begin serving. The returned
42	// cluster embeds as its "current_operation" a long-running operation which
43	// can be used to track the progress of turning up the new cluster.
44	// Immediately upon completion of this request:
45	//  * The cluster will be readable via the API, with all requested attributes
46	//    but no allocated resources.
47	// Until completion of the embedded operation:
48	//  * Cancelling the operation will render the cluster immediately unreadable
49	//    via the API.
50	//  * All other attempts to modify or delete the cluster will be rejected.
51	// Upon completion of the embedded operation:
52	//  * Billing for all successfully-allocated resources will begin (some types
53	//    may have lower than the requested levels).
54	//  * New tables can be created in the cluster.
55	//  * The cluster's allocated resource levels will be readable via the API.
56	// The embedded operation's "metadata" field type is
57	// [CreateClusterMetadata][google.bigtable.admin.cluster.v1.CreateClusterMetadata] The embedded operation's "response" field type is
58	// [Cluster][google.bigtable.admin.cluster.v1.Cluster], if successful.
59	CreateCluster(ctx context.Context, in *CreateClusterRequest, opts ...grpc.CallOption) (*Cluster, error)
60	// Updates a cluster, and begins allocating or releasing resources as
61	// requested. The returned cluster embeds as its "current_operation" a
62	// long-running operation which can be used to track the progress of updating
63	// the cluster.
64	// Immediately upon completion of this request:
65	//  * For resource types where a decrease in the cluster's allocation has been
66	//    requested, billing will be based on the newly-requested level.
67	// Until completion of the embedded operation:
68	//  * Cancelling the operation will set its metadata's "cancelled_at_time",
69	//    and begin restoring resources to their pre-request values. The operation
70	//    is guaranteed to succeed at undoing all resource changes, after which
71	//    point it will terminate with a CANCELLED status.
72	//  * All other attempts to modify or delete the cluster will be rejected.
73	//  * Reading the cluster via the API will continue to give the pre-request
74	//    resource levels.
75	// Upon completion of the embedded operation:
76	//  * Billing will begin for all successfully-allocated resources (some types
77	//    may have lower than the requested levels).
78	//  * All newly-reserved resources will be available for serving the cluster's
79	//    tables.
80	//  * The cluster's new resource levels will be readable via the API.
81	// [UpdateClusterMetadata][google.bigtable.admin.cluster.v1.UpdateClusterMetadata] The embedded operation's "response" field type is
82	// [Cluster][google.bigtable.admin.cluster.v1.Cluster], if successful.
83	UpdateCluster(ctx context.Context, in *Cluster, opts ...grpc.CallOption) (*Cluster, error)
84	// Marks a cluster and all of its tables for permanent deletion in 7 days.
85	// Immediately upon completion of the request:
86	//  * Billing will cease for all of the cluster's reserved resources.
87	//  * The cluster's "delete_time" field will be set 7 days in the future.
88	// Soon afterward:
89	//  * All tables within the cluster will become unavailable.
90	// Prior to the cluster's "delete_time":
91	//  * The cluster can be recovered with a call to UndeleteCluster.
92	//  * All other attempts to modify or delete the cluster will be rejected.
93	// At the cluster's "delete_time":
94	//  * The cluster and *all of its tables* will immediately and irrevocably
95	//    disappear from the API, and their data will be permanently deleted.
96	DeleteCluster(ctx context.Context, in *DeleteClusterRequest, opts ...grpc.CallOption) (*google_protobuf2.Empty, error)
97	// Cancels the scheduled deletion of an cluster and begins preparing it to
98	// resume serving. The returned operation will also be embedded as the
99	// cluster's "current_operation".
100	// Immediately upon completion of this request:
101	//  * The cluster's "delete_time" field will be unset, protecting it from
102	//    automatic deletion.
103	// Until completion of the returned operation:
104	//  * The operation cannot be cancelled.
105	// Upon completion of the returned operation:
106	//  * Billing for the cluster's resources will resume.
107	//  * All tables within the cluster will be available.
108	// [UndeleteClusterMetadata][google.bigtable.admin.cluster.v1.UndeleteClusterMetadata] The embedded operation's "response" field type is
109	// [Cluster][google.bigtable.admin.cluster.v1.Cluster], if successful.
110	UndeleteCluster(ctx context.Context, in *UndeleteClusterRequest, opts ...grpc.CallOption) (*google_longrunning.Operation, error)
111}
112
113type bigtableClusterServiceClient struct {
114	cc *grpc.ClientConn
115}
116
117func NewBigtableClusterServiceClient(cc *grpc.ClientConn) BigtableClusterServiceClient {
118	return &bigtableClusterServiceClient{cc}
119}
120
121func (c *bigtableClusterServiceClient) ListZones(ctx context.Context, in *ListZonesRequest, opts ...grpc.CallOption) (*ListZonesResponse, error) {
122	out := new(ListZonesResponse)
123	err := grpc.Invoke(ctx, "/google.bigtable.admin.cluster.v1.BigtableClusterService/ListZones", in, out, c.cc, opts...)
124	if err != nil {
125		return nil, err
126	}
127	return out, nil
128}
129
130func (c *bigtableClusterServiceClient) GetCluster(ctx context.Context, in *GetClusterRequest, opts ...grpc.CallOption) (*Cluster, error) {
131	out := new(Cluster)
132	err := grpc.Invoke(ctx, "/google.bigtable.admin.cluster.v1.BigtableClusterService/GetCluster", in, out, c.cc, opts...)
133	if err != nil {
134		return nil, err
135	}
136	return out, nil
137}
138
139func (c *bigtableClusterServiceClient) ListClusters(ctx context.Context, in *ListClustersRequest, opts ...grpc.CallOption) (*ListClustersResponse, error) {
140	out := new(ListClustersResponse)
141	err := grpc.Invoke(ctx, "/google.bigtable.admin.cluster.v1.BigtableClusterService/ListClusters", in, out, c.cc, opts...)
142	if err != nil {
143		return nil, err
144	}
145	return out, nil
146}
147
148func (c *bigtableClusterServiceClient) CreateCluster(ctx context.Context, in *CreateClusterRequest, opts ...grpc.CallOption) (*Cluster, error) {
149	out := new(Cluster)
150	err := grpc.Invoke(ctx, "/google.bigtable.admin.cluster.v1.BigtableClusterService/CreateCluster", in, out, c.cc, opts...)
151	if err != nil {
152		return nil, err
153	}
154	return out, nil
155}
156
157func (c *bigtableClusterServiceClient) UpdateCluster(ctx context.Context, in *Cluster, opts ...grpc.CallOption) (*Cluster, error) {
158	out := new(Cluster)
159	err := grpc.Invoke(ctx, "/google.bigtable.admin.cluster.v1.BigtableClusterService/UpdateCluster", in, out, c.cc, opts...)
160	if err != nil {
161		return nil, err
162	}
163	return out, nil
164}
165
166func (c *bigtableClusterServiceClient) DeleteCluster(ctx context.Context, in *DeleteClusterRequest, opts ...grpc.CallOption) (*google_protobuf2.Empty, error) {
167	out := new(google_protobuf2.Empty)
168	err := grpc.Invoke(ctx, "/google.bigtable.admin.cluster.v1.BigtableClusterService/DeleteCluster", in, out, c.cc, opts...)
169	if err != nil {
170		return nil, err
171	}
172	return out, nil
173}
174
175func (c *bigtableClusterServiceClient) UndeleteCluster(ctx context.Context, in *UndeleteClusterRequest, opts ...grpc.CallOption) (*google_longrunning.Operation, error) {
176	out := new(google_longrunning.Operation)
177	err := grpc.Invoke(ctx, "/google.bigtable.admin.cluster.v1.BigtableClusterService/UndeleteCluster", in, out, c.cc, opts...)
178	if err != nil {
179		return nil, err
180	}
181	return out, nil
182}
183
184// Server API for BigtableClusterService service
185
186type BigtableClusterServiceServer interface {
187	// Lists the supported zones for the given project.
188	ListZones(context.Context, *ListZonesRequest) (*ListZonesResponse, error)
189	// Gets information about a particular cluster.
190	GetCluster(context.Context, *GetClusterRequest) (*Cluster, error)
191	// Lists all clusters in the given project, along with any zones for which
192	// cluster information could not be retrieved.
193	ListClusters(context.Context, *ListClustersRequest) (*ListClustersResponse, error)
194	// Creates a cluster and begins preparing it to begin serving. The returned
195	// cluster embeds as its "current_operation" a long-running operation which
196	// can be used to track the progress of turning up the new cluster.
197	// Immediately upon completion of this request:
198	//  * The cluster will be readable via the API, with all requested attributes
199	//    but no allocated resources.
200	// Until completion of the embedded operation:
201	//  * Cancelling the operation will render the cluster immediately unreadable
202	//    via the API.
203	//  * All other attempts to modify or delete the cluster will be rejected.
204	// Upon completion of the embedded operation:
205	//  * Billing for all successfully-allocated resources will begin (some types
206	//    may have lower than the requested levels).
207	//  * New tables can be created in the cluster.
208	//  * The cluster's allocated resource levels will be readable via the API.
209	// The embedded operation's "metadata" field type is
210	// [CreateClusterMetadata][google.bigtable.admin.cluster.v1.CreateClusterMetadata] The embedded operation's "response" field type is
211	// [Cluster][google.bigtable.admin.cluster.v1.Cluster], if successful.
212	CreateCluster(context.Context, *CreateClusterRequest) (*Cluster, error)
213	// Updates a cluster, and begins allocating or releasing resources as
214	// requested. The returned cluster embeds as its "current_operation" a
215	// long-running operation which can be used to track the progress of updating
216	// the cluster.
217	// Immediately upon completion of this request:
218	//  * For resource types where a decrease in the cluster's allocation has been
219	//    requested, billing will be based on the newly-requested level.
220	// Until completion of the embedded operation:
221	//  * Cancelling the operation will set its metadata's "cancelled_at_time",
222	//    and begin restoring resources to their pre-request values. The operation
223	//    is guaranteed to succeed at undoing all resource changes, after which
224	//    point it will terminate with a CANCELLED status.
225	//  * All other attempts to modify or delete the cluster will be rejected.
226	//  * Reading the cluster via the API will continue to give the pre-request
227	//    resource levels.
228	// Upon completion of the embedded operation:
229	//  * Billing will begin for all successfully-allocated resources (some types
230	//    may have lower than the requested levels).
231	//  * All newly-reserved resources will be available for serving the cluster's
232	//    tables.
233	//  * The cluster's new resource levels will be readable via the API.
234	// [UpdateClusterMetadata][google.bigtable.admin.cluster.v1.UpdateClusterMetadata] The embedded operation's "response" field type is
235	// [Cluster][google.bigtable.admin.cluster.v1.Cluster], if successful.
236	UpdateCluster(context.Context, *Cluster) (*Cluster, error)
237	// Marks a cluster and all of its tables for permanent deletion in 7 days.
238	// Immediately upon completion of the request:
239	//  * Billing will cease for all of the cluster's reserved resources.
240	//  * The cluster's "delete_time" field will be set 7 days in the future.
241	// Soon afterward:
242	//  * All tables within the cluster will become unavailable.
243	// Prior to the cluster's "delete_time":
244	//  * The cluster can be recovered with a call to UndeleteCluster.
245	//  * All other attempts to modify or delete the cluster will be rejected.
246	// At the cluster's "delete_time":
247	//  * The cluster and *all of its tables* will immediately and irrevocably
248	//    disappear from the API, and their data will be permanently deleted.
249	DeleteCluster(context.Context, *DeleteClusterRequest) (*google_protobuf2.Empty, error)
250	// Cancels the scheduled deletion of an cluster and begins preparing it to
251	// resume serving. The returned operation will also be embedded as the
252	// cluster's "current_operation".
253	// Immediately upon completion of this request:
254	//  * The cluster's "delete_time" field will be unset, protecting it from
255	//    automatic deletion.
256	// Until completion of the returned operation:
257	//  * The operation cannot be cancelled.
258	// Upon completion of the returned operation:
259	//  * Billing for the cluster's resources will resume.
260	//  * All tables within the cluster will be available.
261	// [UndeleteClusterMetadata][google.bigtable.admin.cluster.v1.UndeleteClusterMetadata] The embedded operation's "response" field type is
262	// [Cluster][google.bigtable.admin.cluster.v1.Cluster], if successful.
263	UndeleteCluster(context.Context, *UndeleteClusterRequest) (*google_longrunning.Operation, error)
264}
265
266func RegisterBigtableClusterServiceServer(s *grpc.Server, srv BigtableClusterServiceServer) {
267	s.RegisterService(&_BigtableClusterService_serviceDesc, srv)
268}
269
270func _BigtableClusterService_ListZones_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
271	in := new(ListZonesRequest)
272	if err := dec(in); err != nil {
273		return nil, err
274	}
275	if interceptor == nil {
276		return srv.(BigtableClusterServiceServer).ListZones(ctx, in)
277	}
278	info := &grpc.UnaryServerInfo{
279		Server:     srv,
280		FullMethod: "/google.bigtable.admin.cluster.v1.BigtableClusterService/ListZones",
281	}
282	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
283		return srv.(BigtableClusterServiceServer).ListZones(ctx, req.(*ListZonesRequest))
284	}
285	return interceptor(ctx, in, info, handler)
286}
287
288func _BigtableClusterService_GetCluster_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
289	in := new(GetClusterRequest)
290	if err := dec(in); err != nil {
291		return nil, err
292	}
293	if interceptor == nil {
294		return srv.(BigtableClusterServiceServer).GetCluster(ctx, in)
295	}
296	info := &grpc.UnaryServerInfo{
297		Server:     srv,
298		FullMethod: "/google.bigtable.admin.cluster.v1.BigtableClusterService/GetCluster",
299	}
300	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
301		return srv.(BigtableClusterServiceServer).GetCluster(ctx, req.(*GetClusterRequest))
302	}
303	return interceptor(ctx, in, info, handler)
304}
305
306func _BigtableClusterService_ListClusters_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
307	in := new(ListClustersRequest)
308	if err := dec(in); err != nil {
309		return nil, err
310	}
311	if interceptor == nil {
312		return srv.(BigtableClusterServiceServer).ListClusters(ctx, in)
313	}
314	info := &grpc.UnaryServerInfo{
315		Server:     srv,
316		FullMethod: "/google.bigtable.admin.cluster.v1.BigtableClusterService/ListClusters",
317	}
318	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
319		return srv.(BigtableClusterServiceServer).ListClusters(ctx, req.(*ListClustersRequest))
320	}
321	return interceptor(ctx, in, info, handler)
322}
323
324func _BigtableClusterService_CreateCluster_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
325	in := new(CreateClusterRequest)
326	if err := dec(in); err != nil {
327		return nil, err
328	}
329	if interceptor == nil {
330		return srv.(BigtableClusterServiceServer).CreateCluster(ctx, in)
331	}
332	info := &grpc.UnaryServerInfo{
333		Server:     srv,
334		FullMethod: "/google.bigtable.admin.cluster.v1.BigtableClusterService/CreateCluster",
335	}
336	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
337		return srv.(BigtableClusterServiceServer).CreateCluster(ctx, req.(*CreateClusterRequest))
338	}
339	return interceptor(ctx, in, info, handler)
340}
341
342func _BigtableClusterService_UpdateCluster_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
343	in := new(Cluster)
344	if err := dec(in); err != nil {
345		return nil, err
346	}
347	if interceptor == nil {
348		return srv.(BigtableClusterServiceServer).UpdateCluster(ctx, in)
349	}
350	info := &grpc.UnaryServerInfo{
351		Server:     srv,
352		FullMethod: "/google.bigtable.admin.cluster.v1.BigtableClusterService/UpdateCluster",
353	}
354	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
355		return srv.(BigtableClusterServiceServer).UpdateCluster(ctx, req.(*Cluster))
356	}
357	return interceptor(ctx, in, info, handler)
358}
359
360func _BigtableClusterService_DeleteCluster_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
361	in := new(DeleteClusterRequest)
362	if err := dec(in); err != nil {
363		return nil, err
364	}
365	if interceptor == nil {
366		return srv.(BigtableClusterServiceServer).DeleteCluster(ctx, in)
367	}
368	info := &grpc.UnaryServerInfo{
369		Server:     srv,
370		FullMethod: "/google.bigtable.admin.cluster.v1.BigtableClusterService/DeleteCluster",
371	}
372	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
373		return srv.(BigtableClusterServiceServer).DeleteCluster(ctx, req.(*DeleteClusterRequest))
374	}
375	return interceptor(ctx, in, info, handler)
376}
377
378func _BigtableClusterService_UndeleteCluster_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
379	in := new(UndeleteClusterRequest)
380	if err := dec(in); err != nil {
381		return nil, err
382	}
383	if interceptor == nil {
384		return srv.(BigtableClusterServiceServer).UndeleteCluster(ctx, in)
385	}
386	info := &grpc.UnaryServerInfo{
387		Server:     srv,
388		FullMethod: "/google.bigtable.admin.cluster.v1.BigtableClusterService/UndeleteCluster",
389	}
390	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
391		return srv.(BigtableClusterServiceServer).UndeleteCluster(ctx, req.(*UndeleteClusterRequest))
392	}
393	return interceptor(ctx, in, info, handler)
394}
395
396var _BigtableClusterService_serviceDesc = grpc.ServiceDesc{
397	ServiceName: "google.bigtable.admin.cluster.v1.BigtableClusterService",
398	HandlerType: (*BigtableClusterServiceServer)(nil),
399	Methods: []grpc.MethodDesc{
400		{
401			MethodName: "ListZones",
402			Handler:    _BigtableClusterService_ListZones_Handler,
403		},
404		{
405			MethodName: "GetCluster",
406			Handler:    _BigtableClusterService_GetCluster_Handler,
407		},
408		{
409			MethodName: "ListClusters",
410			Handler:    _BigtableClusterService_ListClusters_Handler,
411		},
412		{
413			MethodName: "CreateCluster",
414			Handler:    _BigtableClusterService_CreateCluster_Handler,
415		},
416		{
417			MethodName: "UpdateCluster",
418			Handler:    _BigtableClusterService_UpdateCluster_Handler,
419		},
420		{
421			MethodName: "DeleteCluster",
422			Handler:    _BigtableClusterService_DeleteCluster_Handler,
423		},
424		{
425			MethodName: "UndeleteCluster",
426			Handler:    _BigtableClusterService_UndeleteCluster_Handler,
427		},
428	},
429	Streams:  []grpc.StreamDesc{},
430	Metadata: "google/bigtable/admin/cluster/v1/bigtable_cluster_service.proto",
431}
432
433func init() {
434	proto.RegisterFile("google/bigtable/admin/cluster/v1/bigtable_cluster_service.proto", fileDescriptor1)
435}
436
437var fileDescriptor1 = []byte{
438	// 515 bytes of a gzipped FileDescriptorProto
439	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x94, 0x4f, 0x6b, 0x14, 0x31,
440	0x18, 0xc6, 0x89, 0x07, 0xa1, 0xc1, 0x45, 0xc8, 0xa1, 0x87, 0x6d, 0x0b, 0x32, 0x15, 0xb1, 0x23,
441	0x26, 0x6e, 0x17, 0xc5, 0xbf, 0x08, 0x5b, 0xa5, 0x1e, 0x04, 0x8b, 0xd2, 0x4b, 0x2f, 0x4b, 0x76,
442	0xe7, 0x35, 0x8c, 0xcc, 0x24, 0x31, 0xc9, 0x2c, 0xa8, 0xf4, 0xe2, 0xcd, 0x93, 0x88, 0x27, 0x3d,
443	0x78, 0xeb, 0xdd, 0xef, 0xe2, 0x57, 0xf0, 0x83, 0xc8, 0x64, 0x92, 0xb5, 0x2b, 0x6b, 0x77, 0xa6,
444	0xb7, 0x99, 0xc9, 0xfb, 0xbc, 0xcf, 0x6f, 0x9e, 0x24, 0x2f, 0x7e, 0x2c, 0x94, 0x12, 0x05, 0xb0,
445	0x49, 0x2e, 0x1c, 0x9f, 0x14, 0xc0, 0x78, 0x56, 0xe6, 0x92, 0x4d, 0x8b, 0xca, 0x3a, 0x30, 0x6c,
446	0x36, 0x98, 0xaf, 0x8c, 0xc3, 0xb7, 0xb1, 0x05, 0x33, 0xcb, 0xa7, 0x40, 0xb5, 0x51, 0x4e, 0x91,
447	0x2b, 0x4d, 0x03, 0x1a, 0xcb, 0xa8, 0x6f, 0x40, 0x43, 0x31, 0x9d, 0x0d, 0xfa, 0x9b, 0xc1, 0x82,
448	0xeb, 0x9c, 0x71, 0x29, 0x95, 0xe3, 0x2e, 0x57, 0xd2, 0x36, 0xfa, 0xfe, 0xc3, 0xee, 0x00, 0x19,
449	0x77, 0x3c, 0xa8, 0x9f, 0x9d, 0x1b, 0x7f, 0x5c, 0x82, 0xb5, 0x5c, 0x40, 0xe4, 0xd8, 0x0e, 0x9d,
450	0x0a, 0x25, 0x85, 0xa9, 0xa4, 0xcc, 0xa5, 0x60, 0x4a, 0x83, 0x59, 0x80, 0xdd, 0x08, 0x45, 0xfe,
451	0x6d, 0x52, 0xbd, 0x66, 0x50, 0x6a, 0xf7, 0xae, 0x59, 0xdc, 0xfd, 0xb4, 0x86, 0xd7, 0x47, 0xc1,
452	0x6d, 0xaf, 0x31, 0x7b, 0xd5, 0x78, 0x91, 0x6f, 0x08, 0xaf, 0x3d, 0xcf, 0xad, 0x3b, 0x52, 0x12,
453	0x2c, 0xd9, 0xa5, 0xab, 0x32, 0xa3, 0xf3, 0xe2, 0x97, 0xf0, 0xb6, 0x02, 0xeb, 0xfa, 0xc3, 0x4e,
454	0x1a, 0xab, 0x95, 0xb4, 0x90, 0x6c, 0x7f, 0xfc, 0xf5, 0xfb, 0xeb, 0x85, 0x2d, 0xb2, 0x51, 0x07,
455	0xf1, 0x41, 0xf2, 0x12, 0x1e, 0x69, 0xa3, 0xde, 0xc0, 0xd4, 0x59, 0x96, 0x1e, 0xb3, 0xf7, 0x9e,
456	0xe6, 0x07, 0xc2, 0x78, 0x1f, 0x5c, 0x20, 0x26, 0x2d, 0x8c, 0xfe, 0x56, 0x47, 0xba, 0x9d, 0xd5,
457	0xa2, 0xa0, 0x48, 0x6e, 0x79, 0xa6, 0x94, 0x5c, 0x5f, 0xc6, 0xd4, 0x20, 0xb1, 0x34, 0x6e, 0x60,
458	0x8d, 0x49, 0x7e, 0x22, 0x7c, 0xa9, 0xfe, 0xb7, 0xd0, 0xc1, 0x92, 0xdb, 0xed, 0xb2, 0x88, 0xf5,
459	0x11, 0xf2, 0x4e, 0x57, 0x59, 0x48, 0x71, 0xe0, 0x89, 0x6f, 0x90, 0x9d, 0xe5, 0x29, 0x72, 0x21,
460	0x0c, 0x08, 0xee, 0x20, 0x9b, 0x53, 0x93, 0x13, 0x84, 0x7b, 0x7b, 0x06, 0xb8, 0x8b, 0x07, 0x81,
461	0xb4, 0x30, 0x5f, 0x10, 0x9c, 0x23, 0xd9, 0xc0, 0x99, 0x5c, 0x3b, 0x2b, 0xd9, 0xe3, 0x39, 0xe4,
462	0x7d, 0x94, 0x92, 0xef, 0x08, 0xf7, 0x0e, 0x75, 0x76, 0x8a, 0xb3, 0xbd, 0x5f, 0x17, 0xb4, 0xa1,
463	0x47, 0xbb, 0xd9, 0x6f, 0xbd, 0xe9, 0x35, 0xdc, 0x17, 0x84, 0x7b, 0x4f, 0xa0, 0x80, 0x4e, 0x21,
464	0x2e, 0x08, 0x62, 0x88, 0xeb, 0x51, 0x17, 0xef, 0x2d, 0x7d, 0x5a, 0xdf, 0xdb, 0x78, 0x16, 0xd3,
465	0xf6, 0x67, 0xf1, 0x04, 0xe1, 0xcb, 0x87, 0x32, 0x5b, 0xa0, 0xba, 0xbb, 0x9a, 0xea, 0x1f, 0x49,
466	0xe4, 0xda, 0x8a, 0xca, 0x53, 0x43, 0x87, 0xbe, 0x88, 0x43, 0x27, 0xb9, 0xe7, 0xf1, 0x86, 0xc9,
467	0xa0, 0x75, 0x6a, 0x55, 0xf0, 0x19, 0x7d, 0x46, 0xf8, 0xea, 0x54, 0x95, 0x2b, 0xc9, 0x46, 0x9b,
468	0xcb, 0x27, 0x96, 0x3d, 0xa8, 0x93, 0x3a, 0x40, 0x47, 0xfb, 0xa1, 0x83, 0x50, 0x05, 0x97, 0x82,
469	0x2a, 0x23, 0x98, 0x00, 0xe9, 0x73, 0x64, 0xcd, 0x12, 0xd7, 0xb9, 0xfd, 0xff, 0xfc, 0x7d, 0x10,
470	0x1e, 0x27, 0x17, 0xbd, 0x66, 0xf8, 0x27, 0x00, 0x00, 0xff, 0xff, 0x50, 0x92, 0x91, 0x86, 0x71,
471	0x06, 0x00, 0x00,
472}
473