1// Code generated by protoc-gen-go. DO NOT EDIT.
2// source: google/cloud/websecurityscanner/v1alpha/scan_config.proto
3
4package websecurityscanner
5
6import (
7	fmt "fmt"
8	math "math"
9
10	proto "github.com/golang/protobuf/proto"
11	timestamp "github.com/golang/protobuf/ptypes/timestamp"
12	_ "google.golang.org/genproto/googleapis/api/annotations"
13)
14
15// Reference imports to suppress errors if they are not otherwise used.
16var _ = proto.Marshal
17var _ = fmt.Errorf
18var _ = math.Inf
19
20// This is a compile-time assertion to ensure that this generated file
21// is compatible with the proto package it is being compiled against.
22// A compilation error at this line likely means your copy of the
23// proto package needs to be updated.
24const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
25
26// Type of user agents used for scanning.
27type ScanConfig_UserAgent int32
28
29const (
30	// The user agent is unknown. Service will default to CHROME_LINUX.
31	ScanConfig_USER_AGENT_UNSPECIFIED ScanConfig_UserAgent = 0
32	// Chrome on Linux. This is the service default if unspecified.
33	ScanConfig_CHROME_LINUX ScanConfig_UserAgent = 1
34	// Chrome on Android.
35	ScanConfig_CHROME_ANDROID ScanConfig_UserAgent = 2
36	// Safari on IPhone.
37	ScanConfig_SAFARI_IPHONE ScanConfig_UserAgent = 3
38)
39
40var ScanConfig_UserAgent_name = map[int32]string{
41	0: "USER_AGENT_UNSPECIFIED",
42	1: "CHROME_LINUX",
43	2: "CHROME_ANDROID",
44	3: "SAFARI_IPHONE",
45}
46
47var ScanConfig_UserAgent_value = map[string]int32{
48	"USER_AGENT_UNSPECIFIED": 0,
49	"CHROME_LINUX":           1,
50	"CHROME_ANDROID":         2,
51	"SAFARI_IPHONE":          3,
52}
53
54func (x ScanConfig_UserAgent) String() string {
55	return proto.EnumName(ScanConfig_UserAgent_name, int32(x))
56}
57
58func (ScanConfig_UserAgent) EnumDescriptor() ([]byte, []int) {
59	return fileDescriptor_50b1b6d7cca97898, []int{0, 0}
60}
61
62// Cloud platforms supported by Cloud Web Security Scanner.
63type ScanConfig_TargetPlatform int32
64
65const (
66	// The target platform is unknown. Requests with this enum value will be
67	// rejected with INVALID_ARGUMENT error.
68	ScanConfig_TARGET_PLATFORM_UNSPECIFIED ScanConfig_TargetPlatform = 0
69	// Google App Engine service.
70	ScanConfig_APP_ENGINE ScanConfig_TargetPlatform = 1
71	// Google Compute Engine service.
72	ScanConfig_COMPUTE ScanConfig_TargetPlatform = 2
73)
74
75var ScanConfig_TargetPlatform_name = map[int32]string{
76	0: "TARGET_PLATFORM_UNSPECIFIED",
77	1: "APP_ENGINE",
78	2: "COMPUTE",
79}
80
81var ScanConfig_TargetPlatform_value = map[string]int32{
82	"TARGET_PLATFORM_UNSPECIFIED": 0,
83	"APP_ENGINE":                  1,
84	"COMPUTE":                     2,
85}
86
87func (x ScanConfig_TargetPlatform) String() string {
88	return proto.EnumName(ScanConfig_TargetPlatform_name, int32(x))
89}
90
91func (ScanConfig_TargetPlatform) EnumDescriptor() ([]byte, []int) {
92	return fileDescriptor_50b1b6d7cca97898, []int{0, 1}
93}
94
95// A ScanConfig resource contains the configurations to launch a scan.
96// next id: 12
97type ScanConfig struct {
98	// The resource name of the ScanConfig. The name follows the format of
99	// 'projects/{projectId}/scanConfigs/{scanConfigId}'. The ScanConfig IDs are
100	// generated by the system.
101	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
102	// Required. The user provided display name of the ScanConfig.
103	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
104	// The maximum QPS during scanning. A valid value ranges from 5 to 20
105	// inclusively. If the field is unspecified or its value is set 0, server will
106	// default to 15. Other values outside of [5, 20] range will be rejected with
107	// INVALID_ARGUMENT error.
108	MaxQps int32 `protobuf:"varint,3,opt,name=max_qps,json=maxQps,proto3" json:"max_qps,omitempty"`
109	// Required. The starting URLs from which the scanner finds site pages.
110	StartingUrls []string `protobuf:"bytes,4,rep,name=starting_urls,json=startingUrls,proto3" json:"starting_urls,omitempty"`
111	// The authentication configuration. If specified, service will use the
112	// authentication configuration during scanning.
113	Authentication *ScanConfig_Authentication `protobuf:"bytes,5,opt,name=authentication,proto3" json:"authentication,omitempty"`
114	// The user agent used during scanning.
115	UserAgent ScanConfig_UserAgent `protobuf:"varint,6,opt,name=user_agent,json=userAgent,proto3,enum=google.cloud.websecurityscanner.v1alpha.ScanConfig_UserAgent" json:"user_agent,omitempty"`
116	// The blacklist URL patterns as described in
117	// https://cloud.google.com/security-scanner/docs/excluded-urls
118	BlacklistPatterns []string `protobuf:"bytes,7,rep,name=blacklist_patterns,json=blacklistPatterns,proto3" json:"blacklist_patterns,omitempty"`
119	// The schedule of the ScanConfig.
120	Schedule *ScanConfig_Schedule `protobuf:"bytes,8,opt,name=schedule,proto3" json:"schedule,omitempty"`
121	// Set of Cloud Platforms targeted by the scan. If empty, APP_ENGINE will be
122	// used as a default.
123	TargetPlatforms []ScanConfig_TargetPlatform `protobuf:"varint,9,rep,packed,name=target_platforms,json=targetPlatforms,proto3,enum=google.cloud.websecurityscanner.v1alpha.ScanConfig_TargetPlatform" json:"target_platforms,omitempty"`
124	// Latest ScanRun if available.
125	LatestRun            *ScanRun `protobuf:"bytes,11,opt,name=latest_run,json=latestRun,proto3" json:"latest_run,omitempty"`
126	XXX_NoUnkeyedLiteral struct{} `json:"-"`
127	XXX_unrecognized     []byte   `json:"-"`
128	XXX_sizecache        int32    `json:"-"`
129}
130
131func (m *ScanConfig) Reset()         { *m = ScanConfig{} }
132func (m *ScanConfig) String() string { return proto.CompactTextString(m) }
133func (*ScanConfig) ProtoMessage()    {}
134func (*ScanConfig) Descriptor() ([]byte, []int) {
135	return fileDescriptor_50b1b6d7cca97898, []int{0}
136}
137
138func (m *ScanConfig) XXX_Unmarshal(b []byte) error {
139	return xxx_messageInfo_ScanConfig.Unmarshal(m, b)
140}
141func (m *ScanConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
142	return xxx_messageInfo_ScanConfig.Marshal(b, m, deterministic)
143}
144func (m *ScanConfig) XXX_Merge(src proto.Message) {
145	xxx_messageInfo_ScanConfig.Merge(m, src)
146}
147func (m *ScanConfig) XXX_Size() int {
148	return xxx_messageInfo_ScanConfig.Size(m)
149}
150func (m *ScanConfig) XXX_DiscardUnknown() {
151	xxx_messageInfo_ScanConfig.DiscardUnknown(m)
152}
153
154var xxx_messageInfo_ScanConfig proto.InternalMessageInfo
155
156func (m *ScanConfig) GetName() string {
157	if m != nil {
158		return m.Name
159	}
160	return ""
161}
162
163func (m *ScanConfig) GetDisplayName() string {
164	if m != nil {
165		return m.DisplayName
166	}
167	return ""
168}
169
170func (m *ScanConfig) GetMaxQps() int32 {
171	if m != nil {
172		return m.MaxQps
173	}
174	return 0
175}
176
177func (m *ScanConfig) GetStartingUrls() []string {
178	if m != nil {
179		return m.StartingUrls
180	}
181	return nil
182}
183
184func (m *ScanConfig) GetAuthentication() *ScanConfig_Authentication {
185	if m != nil {
186		return m.Authentication
187	}
188	return nil
189}
190
191func (m *ScanConfig) GetUserAgent() ScanConfig_UserAgent {
192	if m != nil {
193		return m.UserAgent
194	}
195	return ScanConfig_USER_AGENT_UNSPECIFIED
196}
197
198func (m *ScanConfig) GetBlacklistPatterns() []string {
199	if m != nil {
200		return m.BlacklistPatterns
201	}
202	return nil
203}
204
205func (m *ScanConfig) GetSchedule() *ScanConfig_Schedule {
206	if m != nil {
207		return m.Schedule
208	}
209	return nil
210}
211
212func (m *ScanConfig) GetTargetPlatforms() []ScanConfig_TargetPlatform {
213	if m != nil {
214		return m.TargetPlatforms
215	}
216	return nil
217}
218
219func (m *ScanConfig) GetLatestRun() *ScanRun {
220	if m != nil {
221		return m.LatestRun
222	}
223	return nil
224}
225
226// Scan authentication configuration.
227type ScanConfig_Authentication struct {
228	// Required.
229	// Authentication configuration
230	//
231	// Types that are valid to be assigned to Authentication:
232	//	*ScanConfig_Authentication_GoogleAccount_
233	//	*ScanConfig_Authentication_CustomAccount_
234	Authentication       isScanConfig_Authentication_Authentication `protobuf_oneof:"authentication"`
235	XXX_NoUnkeyedLiteral struct{}                                   `json:"-"`
236	XXX_unrecognized     []byte                                     `json:"-"`
237	XXX_sizecache        int32                                      `json:"-"`
238}
239
240func (m *ScanConfig_Authentication) Reset()         { *m = ScanConfig_Authentication{} }
241func (m *ScanConfig_Authentication) String() string { return proto.CompactTextString(m) }
242func (*ScanConfig_Authentication) ProtoMessage()    {}
243func (*ScanConfig_Authentication) Descriptor() ([]byte, []int) {
244	return fileDescriptor_50b1b6d7cca97898, []int{0, 0}
245}
246
247func (m *ScanConfig_Authentication) XXX_Unmarshal(b []byte) error {
248	return xxx_messageInfo_ScanConfig_Authentication.Unmarshal(m, b)
249}
250func (m *ScanConfig_Authentication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
251	return xxx_messageInfo_ScanConfig_Authentication.Marshal(b, m, deterministic)
252}
253func (m *ScanConfig_Authentication) XXX_Merge(src proto.Message) {
254	xxx_messageInfo_ScanConfig_Authentication.Merge(m, src)
255}
256func (m *ScanConfig_Authentication) XXX_Size() int {
257	return xxx_messageInfo_ScanConfig_Authentication.Size(m)
258}
259func (m *ScanConfig_Authentication) XXX_DiscardUnknown() {
260	xxx_messageInfo_ScanConfig_Authentication.DiscardUnknown(m)
261}
262
263var xxx_messageInfo_ScanConfig_Authentication proto.InternalMessageInfo
264
265type isScanConfig_Authentication_Authentication interface {
266	isScanConfig_Authentication_Authentication()
267}
268
269type ScanConfig_Authentication_GoogleAccount_ struct {
270	GoogleAccount *ScanConfig_Authentication_GoogleAccount `protobuf:"bytes,1,opt,name=google_account,json=googleAccount,proto3,oneof"`
271}
272
273type ScanConfig_Authentication_CustomAccount_ struct {
274	CustomAccount *ScanConfig_Authentication_CustomAccount `protobuf:"bytes,2,opt,name=custom_account,json=customAccount,proto3,oneof"`
275}
276
277func (*ScanConfig_Authentication_GoogleAccount_) isScanConfig_Authentication_Authentication() {}
278
279func (*ScanConfig_Authentication_CustomAccount_) isScanConfig_Authentication_Authentication() {}
280
281func (m *ScanConfig_Authentication) GetAuthentication() isScanConfig_Authentication_Authentication {
282	if m != nil {
283		return m.Authentication
284	}
285	return nil
286}
287
288func (m *ScanConfig_Authentication) GetGoogleAccount() *ScanConfig_Authentication_GoogleAccount {
289	if x, ok := m.GetAuthentication().(*ScanConfig_Authentication_GoogleAccount_); ok {
290		return x.GoogleAccount
291	}
292	return nil
293}
294
295func (m *ScanConfig_Authentication) GetCustomAccount() *ScanConfig_Authentication_CustomAccount {
296	if x, ok := m.GetAuthentication().(*ScanConfig_Authentication_CustomAccount_); ok {
297		return x.CustomAccount
298	}
299	return nil
300}
301
302// XXX_OneofWrappers is for the internal use of the proto package.
303func (*ScanConfig_Authentication) XXX_OneofWrappers() []interface{} {
304	return []interface{}{
305		(*ScanConfig_Authentication_GoogleAccount_)(nil),
306		(*ScanConfig_Authentication_CustomAccount_)(nil),
307	}
308}
309
310// Describes authentication configuration that uses a Google account.
311type ScanConfig_Authentication_GoogleAccount struct {
312	// Required. The user name of the Google account.
313	Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
314	// Required. Input only. The password of the Google account. The credential is stored encrypted
315	// and not returned in any response nor included in audit logs.
316	Password             string   `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"`
317	XXX_NoUnkeyedLiteral struct{} `json:"-"`
318	XXX_unrecognized     []byte   `json:"-"`
319	XXX_sizecache        int32    `json:"-"`
320}
321
322func (m *ScanConfig_Authentication_GoogleAccount) Reset() {
323	*m = ScanConfig_Authentication_GoogleAccount{}
324}
325func (m *ScanConfig_Authentication_GoogleAccount) String() string { return proto.CompactTextString(m) }
326func (*ScanConfig_Authentication_GoogleAccount) ProtoMessage()    {}
327func (*ScanConfig_Authentication_GoogleAccount) Descriptor() ([]byte, []int) {
328	return fileDescriptor_50b1b6d7cca97898, []int{0, 0, 0}
329}
330
331func (m *ScanConfig_Authentication_GoogleAccount) XXX_Unmarshal(b []byte) error {
332	return xxx_messageInfo_ScanConfig_Authentication_GoogleAccount.Unmarshal(m, b)
333}
334func (m *ScanConfig_Authentication_GoogleAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
335	return xxx_messageInfo_ScanConfig_Authentication_GoogleAccount.Marshal(b, m, deterministic)
336}
337func (m *ScanConfig_Authentication_GoogleAccount) XXX_Merge(src proto.Message) {
338	xxx_messageInfo_ScanConfig_Authentication_GoogleAccount.Merge(m, src)
339}
340func (m *ScanConfig_Authentication_GoogleAccount) XXX_Size() int {
341	return xxx_messageInfo_ScanConfig_Authentication_GoogleAccount.Size(m)
342}
343func (m *ScanConfig_Authentication_GoogleAccount) XXX_DiscardUnknown() {
344	xxx_messageInfo_ScanConfig_Authentication_GoogleAccount.DiscardUnknown(m)
345}
346
347var xxx_messageInfo_ScanConfig_Authentication_GoogleAccount proto.InternalMessageInfo
348
349func (m *ScanConfig_Authentication_GoogleAccount) GetUsername() string {
350	if m != nil {
351		return m.Username
352	}
353	return ""
354}
355
356func (m *ScanConfig_Authentication_GoogleAccount) GetPassword() string {
357	if m != nil {
358		return m.Password
359	}
360	return ""
361}
362
363// Describes authentication configuration that uses a custom account.
364type ScanConfig_Authentication_CustomAccount struct {
365	// Required. The user name of the custom account.
366	Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
367	// Required. Input only. The password of the custom account. The credential is stored encrypted
368	// and not returned in any response nor included in audit logs.
369	Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"`
370	// Required. The login form URL of the website.
371	LoginUrl             string   `protobuf:"bytes,3,opt,name=login_url,json=loginUrl,proto3" json:"login_url,omitempty"`
372	XXX_NoUnkeyedLiteral struct{} `json:"-"`
373	XXX_unrecognized     []byte   `json:"-"`
374	XXX_sizecache        int32    `json:"-"`
375}
376
377func (m *ScanConfig_Authentication_CustomAccount) Reset() {
378	*m = ScanConfig_Authentication_CustomAccount{}
379}
380func (m *ScanConfig_Authentication_CustomAccount) String() string { return proto.CompactTextString(m) }
381func (*ScanConfig_Authentication_CustomAccount) ProtoMessage()    {}
382func (*ScanConfig_Authentication_CustomAccount) Descriptor() ([]byte, []int) {
383	return fileDescriptor_50b1b6d7cca97898, []int{0, 0, 1}
384}
385
386func (m *ScanConfig_Authentication_CustomAccount) XXX_Unmarshal(b []byte) error {
387	return xxx_messageInfo_ScanConfig_Authentication_CustomAccount.Unmarshal(m, b)
388}
389func (m *ScanConfig_Authentication_CustomAccount) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
390	return xxx_messageInfo_ScanConfig_Authentication_CustomAccount.Marshal(b, m, deterministic)
391}
392func (m *ScanConfig_Authentication_CustomAccount) XXX_Merge(src proto.Message) {
393	xxx_messageInfo_ScanConfig_Authentication_CustomAccount.Merge(m, src)
394}
395func (m *ScanConfig_Authentication_CustomAccount) XXX_Size() int {
396	return xxx_messageInfo_ScanConfig_Authentication_CustomAccount.Size(m)
397}
398func (m *ScanConfig_Authentication_CustomAccount) XXX_DiscardUnknown() {
399	xxx_messageInfo_ScanConfig_Authentication_CustomAccount.DiscardUnknown(m)
400}
401
402var xxx_messageInfo_ScanConfig_Authentication_CustomAccount proto.InternalMessageInfo
403
404func (m *ScanConfig_Authentication_CustomAccount) GetUsername() string {
405	if m != nil {
406		return m.Username
407	}
408	return ""
409}
410
411func (m *ScanConfig_Authentication_CustomAccount) GetPassword() string {
412	if m != nil {
413		return m.Password
414	}
415	return ""
416}
417
418func (m *ScanConfig_Authentication_CustomAccount) GetLoginUrl() string {
419	if m != nil {
420		return m.LoginUrl
421	}
422	return ""
423}
424
425// Scan schedule configuration.
426type ScanConfig_Schedule struct {
427	// A timestamp indicates when the next run will be scheduled. The value is
428	// refreshed by the server after each run. If unspecified, it will default
429	// to current server time, which means the scan will be scheduled to start
430	// immediately.
431	ScheduleTime *timestamp.Timestamp `protobuf:"bytes,1,opt,name=schedule_time,json=scheduleTime,proto3" json:"schedule_time,omitempty"`
432	// Required. The duration of time between executions in days.
433	IntervalDurationDays int32    `protobuf:"varint,2,opt,name=interval_duration_days,json=intervalDurationDays,proto3" json:"interval_duration_days,omitempty"`
434	XXX_NoUnkeyedLiteral struct{} `json:"-"`
435	XXX_unrecognized     []byte   `json:"-"`
436	XXX_sizecache        int32    `json:"-"`
437}
438
439func (m *ScanConfig_Schedule) Reset()         { *m = ScanConfig_Schedule{} }
440func (m *ScanConfig_Schedule) String() string { return proto.CompactTextString(m) }
441func (*ScanConfig_Schedule) ProtoMessage()    {}
442func (*ScanConfig_Schedule) Descriptor() ([]byte, []int) {
443	return fileDescriptor_50b1b6d7cca97898, []int{0, 1}
444}
445
446func (m *ScanConfig_Schedule) XXX_Unmarshal(b []byte) error {
447	return xxx_messageInfo_ScanConfig_Schedule.Unmarshal(m, b)
448}
449func (m *ScanConfig_Schedule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
450	return xxx_messageInfo_ScanConfig_Schedule.Marshal(b, m, deterministic)
451}
452func (m *ScanConfig_Schedule) XXX_Merge(src proto.Message) {
453	xxx_messageInfo_ScanConfig_Schedule.Merge(m, src)
454}
455func (m *ScanConfig_Schedule) XXX_Size() int {
456	return xxx_messageInfo_ScanConfig_Schedule.Size(m)
457}
458func (m *ScanConfig_Schedule) XXX_DiscardUnknown() {
459	xxx_messageInfo_ScanConfig_Schedule.DiscardUnknown(m)
460}
461
462var xxx_messageInfo_ScanConfig_Schedule proto.InternalMessageInfo
463
464func (m *ScanConfig_Schedule) GetScheduleTime() *timestamp.Timestamp {
465	if m != nil {
466		return m.ScheduleTime
467	}
468	return nil
469}
470
471func (m *ScanConfig_Schedule) GetIntervalDurationDays() int32 {
472	if m != nil {
473		return m.IntervalDurationDays
474	}
475	return 0
476}
477
478func init() {
479	proto.RegisterEnum("google.cloud.websecurityscanner.v1alpha.ScanConfig_UserAgent", ScanConfig_UserAgent_name, ScanConfig_UserAgent_value)
480	proto.RegisterEnum("google.cloud.websecurityscanner.v1alpha.ScanConfig_TargetPlatform", ScanConfig_TargetPlatform_name, ScanConfig_TargetPlatform_value)
481	proto.RegisterType((*ScanConfig)(nil), "google.cloud.websecurityscanner.v1alpha.ScanConfig")
482	proto.RegisterType((*ScanConfig_Authentication)(nil), "google.cloud.websecurityscanner.v1alpha.ScanConfig.Authentication")
483	proto.RegisterType((*ScanConfig_Authentication_GoogleAccount)(nil), "google.cloud.websecurityscanner.v1alpha.ScanConfig.Authentication.GoogleAccount")
484	proto.RegisterType((*ScanConfig_Authentication_CustomAccount)(nil), "google.cloud.websecurityscanner.v1alpha.ScanConfig.Authentication.CustomAccount")
485	proto.RegisterType((*ScanConfig_Schedule)(nil), "google.cloud.websecurityscanner.v1alpha.ScanConfig.Schedule")
486}
487
488func init() {
489	proto.RegisterFile("google/cloud/websecurityscanner/v1alpha/scan_config.proto", fileDescriptor_50b1b6d7cca97898)
490}
491
492var fileDescriptor_50b1b6d7cca97898 = []byte{
493	// 859 bytes of a gzipped FileDescriptorProto
494	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0x5b, 0x6f, 0xdb, 0x36,
495	0x14, 0xae, 0xec, 0xdc, 0x7c, 0x7c, 0xa9, 0x4b, 0x0c, 0x9d, 0xe7, 0x3d, 0xc4, 0xc8, 0xc3, 0x66,
496	0x60, 0x9d, 0xb4, 0x65, 0xc0, 0x80, 0xee, 0x82, 0x41, 0xb6, 0x95, 0xc4, 0x40, 0x23, 0x6b, 0xb4,
497	0x0d, 0x74, 0x43, 0x01, 0x8e, 0x96, 0x19, 0x45, 0x9d, 0x24, 0x6a, 0x24, 0x95, 0xd6, 0x28, 0xfa,
498	0xba, 0x3f, 0xb1, 0xc7, 0xfd, 0xb1, 0x3c, 0xed, 0x61, 0xbf, 0x62, 0xd0, 0xcd, 0xb1, 0xd3, 0x01,
499	0x6b, 0xb3, 0xbe, 0x91, 0xe7, 0xe3, 0xf9, 0xbe, 0x73, 0xc8, 0x73, 0x0e, 0xe1, 0xb1, 0xc7, 0xb9,
500	0x17, 0x30, 0xc3, 0x0d, 0x78, 0xb2, 0x34, 0x5e, 0xb0, 0x85, 0x64, 0x6e, 0x22, 0x7c, 0xb5, 0x92,
501	0x2e, 0x8d, 0x22, 0x26, 0x8c, 0xab, 0x2f, 0x69, 0x10, 0x5f, 0x52, 0x23, 0xdd, 0x13, 0x97, 0x47,
502	0x17, 0xbe, 0xa7, 0xc7, 0x82, 0x2b, 0x8e, 0x3e, 0xcd, 0x5d, 0xf5, 0xcc, 0x55, 0x7f, 0xd3, 0x55,
503	0x2f, 0x5c, 0xbb, 0x87, 0x85, 0x06, 0x8d, 0x7d, 0xe3, 0xc2, 0x67, 0xc1, 0x92, 0x2c, 0xd8, 0x25,
504	0xbd, 0xf2, 0xb9, 0xc8, 0x99, 0xba, 0x1f, 0x6d, 0x1c, 0x10, 0x4c, 0xf2, 0x44, 0xb8, 0xac, 0x80,
505	0xbe, 0x7e, 0xa7, 0xf8, 0x44, 0x12, 0x15, 0x7e, 0xa5, 0x66, 0xb6, 0x5b, 0x24, 0x17, 0x86, 0xf2,
506	0x43, 0x26, 0x15, 0x0d, 0xe3, 0xfc, 0xc0, 0xd1, 0x9f, 0x0d, 0x80, 0xa9, 0x4b, 0xa3, 0x61, 0x96,
507	0x12, 0x42, 0xb0, 0x13, 0xd1, 0x90, 0x75, 0xb4, 0x9e, 0xd6, 0xaf, 0xe1, 0x6c, 0x8d, 0x3e, 0x81,
508	0xc6, 0xd2, 0x97, 0x71, 0x40, 0x57, 0x24, 0xc3, 0x2a, 0x29, 0x36, 0xa8, 0x5e, 0x9b, 0x15, 0x5c,
509	0x2f, 0x00, 0x3b, 0x3d, 0xf7, 0x21, 0xec, 0x87, 0xf4, 0x25, 0xf9, 0x2d, 0x96, 0x9d, 0x6a, 0x4f,
510	0xeb, 0xef, 0xe2, 0xbd, 0x90, 0xbe, 0xfc, 0x31, 0x96, 0xa8, 0x0f, 0x4d, 0xa9, 0xa8, 0x50, 0x7e,
511	0xe4, 0x91, 0x44, 0x04, 0xb2, 0xb3, 0xd3, 0xab, 0x96, 0x0c, 0x8d, 0x12, 0x99, 0x8b, 0x40, 0xa2,
512	0xe7, 0xd0, 0xa2, 0x89, 0xba, 0x64, 0x91, 0xf2, 0x5d, 0xaa, 0x7c, 0x1e, 0x75, 0x76, 0x7b, 0x5a,
513	0xbf, 0x7e, 0x3c, 0xd0, 0xdf, 0xf2, 0x92, 0xf5, 0x9b, 0x5c, 0x74, 0x73, 0x8b, 0x09, 0xdf, 0x62,
514	0x46, 0xcf, 0x00, 0x12, 0xc9, 0x04, 0xa1, 0x1e, 0x8b, 0x54, 0x67, 0xaf, 0xa7, 0xf5, 0x5b, 0xc7,
515	0xdf, 0xdf, 0x45, 0x67, 0x2e, 0x99, 0x30, 0x53, 0x12, 0x5c, 0x4b, 0xca, 0x25, 0xfa, 0x1c, 0xd0,
516	0x22, 0xa0, 0xee, 0xaf, 0x81, 0x2f, 0x15, 0x89, 0xa9, 0x52, 0x4c, 0x44, 0xb2, 0xb3, 0x9f, 0x26,
517	0x8e, 0x1f, 0xac, 0x11, 0xa7, 0x00, 0xd0, 0x53, 0x38, 0x90, 0xee, 0x25, 0x5b, 0x26, 0x01, 0xeb,
518	0x1c, 0x64, 0x29, 0x7f, 0x77, 0x97, 0x50, 0xa6, 0x05, 0x07, 0x5e, 0xb3, 0xa1, 0x10, 0xda, 0x8a,
519	0x0a, 0x8f, 0x29, 0x12, 0x07, 0x54, 0x5d, 0x70, 0x11, 0xca, 0x4e, 0xad, 0x57, 0xed, 0xb7, 0xee,
520	0x76, 0xa9, 0xb3, 0x8c, 0xcb, 0x29, 0xa8, 0xf0, 0x7d, 0xb5, 0xb5, 0x97, 0x68, 0x02, 0x10, 0x50,
521	0xc5, 0xa4, 0x4a, 0x8b, 0xb0, 0x53, 0xcf, 0x52, 0xf9, 0xe2, 0x9d, 0x84, 0x70, 0x12, 0xe1, 0x5a,
522	0xce, 0x81, 0x93, 0xa8, 0xfb, 0x57, 0x15, 0x5a, 0xdb, 0x2f, 0x89, 0x56, 0xd0, 0xca, 0x09, 0x09,
523	0x75, 0x5d, 0x9e, 0x44, 0x2a, 0x2b, 0xd7, 0xfa, 0xb1, 0xf3, 0xff, 0xab, 0x44, 0x3f, 0xcd, 0x18,
524	0xcc, 0x9c, 0xf7, 0xec, 0x1e, 0x6e, 0x7a, 0x9b, 0x86, 0x54, 0xda, 0x4d, 0xa4, 0xe2, 0xe1, 0x5a,
525	0xba, 0xf2, 0xde, 0xa4, 0x87, 0x19, 0xf1, 0x86, 0xb4, 0xbb, 0x69, 0xe8, 0xce, 0xa0, 0xb9, 0x15,
526	0x1c, 0x3a, 0x84, 0x83, 0xb4, 0xde, 0x6e, 0xfa, 0x35, 0xef, 0xa8, 0xb5, 0x11, 0x1d, 0xc1, 0x41,
527	0x4c, 0xa5, 0x7c, 0xc1, 0xc5, 0xb2, 0x68, 0xda, 0xbd, 0x6b, 0xb3, 0x72, 0x6d, 0xee, 0xe0, 0xb5,
528	0xbd, 0x7b, 0x05, 0xcd, 0x2d, 0xdd, 0xf7, 0xc2, 0x8a, 0x7a, 0x50, 0x0b, 0xb8, 0xe7, 0x47, 0x69,
529	0xbb, 0x67, 0xc3, 0xa0, 0x64, 0xc9, 0xac, 0x73, 0x11, 0x0c, 0xda, 0xb7, 0x3b, 0xbd, 0xfb, 0xbb,
530	0x06, 0x07, 0x65, 0xfd, 0xa2, 0x1f, 0xa0, 0x59, 0x56, 0x30, 0x49, 0x47, 0x56, 0xf1, 0xc2, 0xdd,
531	0xf2, 0x9a, 0xcb, 0x79, 0xa6, 0xcf, 0xca, 0x79, 0x86, 0x1b, 0xa5, 0x43, 0x6a, 0x42, 0x8f, 0xe1,
532	0xa1, 0x1f, 0x29, 0x26, 0xae, 0x68, 0x40, 0x96, 0x89, 0xc8, 0x24, 0xc8, 0x92, 0xae, 0x64, 0x16,
533	0xf3, 0x6e, 0x1e, 0xce, 0x07, 0xe5, 0x91, 0x51, 0x71, 0x62, 0x44, 0x57, 0xf2, 0xe8, 0x17, 0xa8,
534	0xad, 0x5b, 0x1a, 0x75, 0xe1, 0xe1, 0x7c, 0x6a, 0x61, 0x62, 0x9e, 0x5a, 0xf6, 0x8c, 0xcc, 0xed,
535	0xa9, 0x63, 0x0d, 0xc7, 0x27, 0x63, 0x6b, 0xd4, 0xbe, 0x87, 0xda, 0xd0, 0x18, 0x9e, 0xe1, 0xc9,
536	0xb9, 0x45, 0x9e, 0x8c, 0xed, 0xf9, 0xd3, 0xb6, 0x86, 0x10, 0xb4, 0x0a, 0x8b, 0x69, 0x8f, 0xf0,
537	0x64, 0x3c, 0x6a, 0x57, 0xd0, 0x03, 0x68, 0x4e, 0xcd, 0x13, 0x13, 0x8f, 0xc9, 0xd8, 0x39, 0x9b,
538	0xd8, 0x56, 0xbb, 0x7a, 0x64, 0x43, 0x6b, 0xbb, 0x8f, 0xd0, 0x21, 0x7c, 0x3c, 0x33, 0xf1, 0xa9,
539	0x35, 0x23, 0xce, 0x13, 0x73, 0x76, 0x32, 0xc1, 0xe7, 0xb7, 0xb4, 0x5a, 0x00, 0xa6, 0xe3, 0x10,
540	0xcb, 0x3e, 0x1d, 0xdb, 0x56, 0x5b, 0x43, 0x75, 0xd8, 0x1f, 0x4e, 0xce, 0x9d, 0xf9, 0xcc, 0x6a,
541	0x57, 0xbe, 0x21, 0x7f, 0x9b, 0xcf, 0xe0, 0xd1, 0xbf, 0x14, 0x5d, 0x7e, 0x5b, 0x34, 0xf6, 0xa5,
542	0xee, 0xf2, 0xd0, 0xd8, 0x18, 0xf4, 0x8f, 0x62, 0xc1, 0x9f, 0x33, 0x57, 0x49, 0xe3, 0x55, 0xb1,
543	0x7a, 0x9d, 0xfd, 0x1d, 0x39, 0x2c, 0x8d, 0x57, 0x1b, 0x1f, 0xdd, 0xeb, 0xc1, 0x1f, 0x1a, 0x7c,
544	0xe6, 0xf2, 0xf0, 0x6d, 0x8b, 0x7c, 0x70, 0xff, 0x46, 0xc9, 0x49, 0x5f, 0xca, 0xd1, 0x7e, 0xfe,
545	0xa9, 0xf0, 0xf5, 0x78, 0x40, 0x23, 0x4f, 0xe7, 0xc2, 0x33, 0x3c, 0x16, 0x65, 0xef, 0x68, 0xdc,
546	0x84, 0xf9, 0x9f, 0x1f, 0xdc, 0xb7, 0x6f, 0x42, 0x8b, 0xbd, 0x8c, 0xe5, 0xab, 0x7f, 0x02, 0x00,
547	0x00, 0xff, 0xff, 0x2f, 0xe7, 0x85, 0xa5, 0xc5, 0x07, 0x00, 0x00,
548}
549