1// Code generated by protoc-gen-go. DO NOT EDIT.
2// source: envoy/api/v2/route/route_components.proto
3
4package envoy_api_v2_route
5
6import (
7	fmt "fmt"
8	_ "github.com/cncf/udpa/go/udpa/annotations"
9	_ "github.com/envoyproxy/go-control-plane/envoy/annotations"
10	core "github.com/envoyproxy/go-control-plane/envoy/api/v2/core"
11	_type "github.com/envoyproxy/go-control-plane/envoy/type"
12	matcher "github.com/envoyproxy/go-control-plane/envoy/type/matcher"
13	v2 "github.com/envoyproxy/go-control-plane/envoy/type/tracing/v2"
14	_ "github.com/envoyproxy/protoc-gen-validate/validate"
15	proto "github.com/golang/protobuf/proto"
16	any "github.com/golang/protobuf/ptypes/any"
17	duration "github.com/golang/protobuf/ptypes/duration"
18	_struct "github.com/golang/protobuf/ptypes/struct"
19	wrappers "github.com/golang/protobuf/ptypes/wrappers"
20	math "math"
21)
22
23// Reference imports to suppress errors if they are not otherwise used.
24var _ = proto.Marshal
25var _ = fmt.Errorf
26var _ = math.Inf
27
28// This is a compile-time assertion to ensure that this generated file
29// is compatible with the proto package it is being compiled against.
30// A compilation error at this line likely means your copy of the
31// proto package needs to be updated.
32const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
33
34type VirtualHost_TlsRequirementType int32
35
36const (
37	VirtualHost_NONE          VirtualHost_TlsRequirementType = 0
38	VirtualHost_EXTERNAL_ONLY VirtualHost_TlsRequirementType = 1
39	VirtualHost_ALL           VirtualHost_TlsRequirementType = 2
40)
41
42var VirtualHost_TlsRequirementType_name = map[int32]string{
43	0: "NONE",
44	1: "EXTERNAL_ONLY",
45	2: "ALL",
46}
47
48var VirtualHost_TlsRequirementType_value = map[string]int32{
49	"NONE":          0,
50	"EXTERNAL_ONLY": 1,
51	"ALL":           2,
52}
53
54func (x VirtualHost_TlsRequirementType) String() string {
55	return proto.EnumName(VirtualHost_TlsRequirementType_name, int32(x))
56}
57
58func (VirtualHost_TlsRequirementType) EnumDescriptor() ([]byte, []int) {
59	return fileDescriptor_a23c550601a0f392, []int{0, 0}
60}
61
62type RouteAction_ClusterNotFoundResponseCode int32
63
64const (
65	RouteAction_SERVICE_UNAVAILABLE RouteAction_ClusterNotFoundResponseCode = 0
66	RouteAction_NOT_FOUND           RouteAction_ClusterNotFoundResponseCode = 1
67)
68
69var RouteAction_ClusterNotFoundResponseCode_name = map[int32]string{
70	0: "SERVICE_UNAVAILABLE",
71	1: "NOT_FOUND",
72}
73
74var RouteAction_ClusterNotFoundResponseCode_value = map[string]int32{
75	"SERVICE_UNAVAILABLE": 0,
76	"NOT_FOUND":           1,
77}
78
79func (x RouteAction_ClusterNotFoundResponseCode) String() string {
80	return proto.EnumName(RouteAction_ClusterNotFoundResponseCode_name, int32(x))
81}
82
83func (RouteAction_ClusterNotFoundResponseCode) EnumDescriptor() ([]byte, []int) {
84	return fileDescriptor_a23c550601a0f392, []int{6, 0}
85}
86
87type RouteAction_InternalRedirectAction int32
88
89const (
90	RouteAction_PASS_THROUGH_INTERNAL_REDIRECT RouteAction_InternalRedirectAction = 0
91	RouteAction_HANDLE_INTERNAL_REDIRECT       RouteAction_InternalRedirectAction = 1
92)
93
94var RouteAction_InternalRedirectAction_name = map[int32]string{
95	0: "PASS_THROUGH_INTERNAL_REDIRECT",
96	1: "HANDLE_INTERNAL_REDIRECT",
97}
98
99var RouteAction_InternalRedirectAction_value = map[string]int32{
100	"PASS_THROUGH_INTERNAL_REDIRECT": 0,
101	"HANDLE_INTERNAL_REDIRECT":       1,
102}
103
104func (x RouteAction_InternalRedirectAction) String() string {
105	return proto.EnumName(RouteAction_InternalRedirectAction_name, int32(x))
106}
107
108func (RouteAction_InternalRedirectAction) EnumDescriptor() ([]byte, []int) {
109	return fileDescriptor_a23c550601a0f392, []int{6, 1}
110}
111
112type RedirectAction_RedirectResponseCode int32
113
114const (
115	RedirectAction_MOVED_PERMANENTLY  RedirectAction_RedirectResponseCode = 0
116	RedirectAction_FOUND              RedirectAction_RedirectResponseCode = 1
117	RedirectAction_SEE_OTHER          RedirectAction_RedirectResponseCode = 2
118	RedirectAction_TEMPORARY_REDIRECT RedirectAction_RedirectResponseCode = 3
119	RedirectAction_PERMANENT_REDIRECT RedirectAction_RedirectResponseCode = 4
120)
121
122var RedirectAction_RedirectResponseCode_name = map[int32]string{
123	0: "MOVED_PERMANENTLY",
124	1: "FOUND",
125	2: "SEE_OTHER",
126	3: "TEMPORARY_REDIRECT",
127	4: "PERMANENT_REDIRECT",
128}
129
130var RedirectAction_RedirectResponseCode_value = map[string]int32{
131	"MOVED_PERMANENTLY":  0,
132	"FOUND":              1,
133	"SEE_OTHER":          2,
134	"TEMPORARY_REDIRECT": 3,
135	"PERMANENT_REDIRECT": 4,
136}
137
138func (x RedirectAction_RedirectResponseCode) String() string {
139	return proto.EnumName(RedirectAction_RedirectResponseCode_name, int32(x))
140}
141
142func (RedirectAction_RedirectResponseCode) EnumDescriptor() ([]byte, []int) {
143	return fileDescriptor_a23c550601a0f392, []int{9, 0}
144}
145
146type VirtualHost struct {
147	Name                          string                         `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
148	Domains                       []string                       `protobuf:"bytes,2,rep,name=domains,proto3" json:"domains,omitempty"`
149	Routes                        []*Route                       `protobuf:"bytes,3,rep,name=routes,proto3" json:"routes,omitempty"`
150	RequireTls                    VirtualHost_TlsRequirementType `protobuf:"varint,4,opt,name=require_tls,json=requireTls,proto3,enum=envoy.api.v2.route.VirtualHost_TlsRequirementType" json:"require_tls,omitempty"`
151	VirtualClusters               []*VirtualCluster              `protobuf:"bytes,5,rep,name=virtual_clusters,json=virtualClusters,proto3" json:"virtual_clusters,omitempty"`
152	RateLimits                    []*RateLimit                   `protobuf:"bytes,6,rep,name=rate_limits,json=rateLimits,proto3" json:"rate_limits,omitempty"`
153	RequestHeadersToAdd           []*core.HeaderValueOption      `protobuf:"bytes,7,rep,name=request_headers_to_add,json=requestHeadersToAdd,proto3" json:"request_headers_to_add,omitempty"`
154	RequestHeadersToRemove        []string                       `protobuf:"bytes,13,rep,name=request_headers_to_remove,json=requestHeadersToRemove,proto3" json:"request_headers_to_remove,omitempty"`
155	ResponseHeadersToAdd          []*core.HeaderValueOption      `protobuf:"bytes,10,rep,name=response_headers_to_add,json=responseHeadersToAdd,proto3" json:"response_headers_to_add,omitempty"`
156	ResponseHeadersToRemove       []string                       `protobuf:"bytes,11,rep,name=response_headers_to_remove,json=responseHeadersToRemove,proto3" json:"response_headers_to_remove,omitempty"`
157	Cors                          *CorsPolicy                    `protobuf:"bytes,8,opt,name=cors,proto3" json:"cors,omitempty"`
158	PerFilterConfig               map[string]*_struct.Struct     `protobuf:"bytes,12,rep,name=per_filter_config,json=perFilterConfig,proto3" json:"per_filter_config,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Deprecated: Do not use.
159	TypedPerFilterConfig          map[string]*any.Any            `protobuf:"bytes,15,rep,name=typed_per_filter_config,json=typedPerFilterConfig,proto3" json:"typed_per_filter_config,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
160	IncludeRequestAttemptCount    bool                           `protobuf:"varint,14,opt,name=include_request_attempt_count,json=includeRequestAttemptCount,proto3" json:"include_request_attempt_count,omitempty"`
161	IncludeAttemptCountInResponse bool                           `protobuf:"varint,19,opt,name=include_attempt_count_in_response,json=includeAttemptCountInResponse,proto3" json:"include_attempt_count_in_response,omitempty"`
162	RetryPolicy                   *RetryPolicy                   `protobuf:"bytes,16,opt,name=retry_policy,json=retryPolicy,proto3" json:"retry_policy,omitempty"`
163	RetryPolicyTypedConfig        *any.Any                       `protobuf:"bytes,20,opt,name=retry_policy_typed_config,json=retryPolicyTypedConfig,proto3" json:"retry_policy_typed_config,omitempty"`
164	HedgePolicy                   *HedgePolicy                   `protobuf:"bytes,17,opt,name=hedge_policy,json=hedgePolicy,proto3" json:"hedge_policy,omitempty"`
165	PerRequestBufferLimitBytes    *wrappers.UInt32Value          `protobuf:"bytes,18,opt,name=per_request_buffer_limit_bytes,json=perRequestBufferLimitBytes,proto3" json:"per_request_buffer_limit_bytes,omitempty"`
166	XXX_NoUnkeyedLiteral          struct{}                       `json:"-"`
167	XXX_unrecognized              []byte                         `json:"-"`
168	XXX_sizecache                 int32                          `json:"-"`
169}
170
171func (m *VirtualHost) Reset()         { *m = VirtualHost{} }
172func (m *VirtualHost) String() string { return proto.CompactTextString(m) }
173func (*VirtualHost) ProtoMessage()    {}
174func (*VirtualHost) Descriptor() ([]byte, []int) {
175	return fileDescriptor_a23c550601a0f392, []int{0}
176}
177
178func (m *VirtualHost) XXX_Unmarshal(b []byte) error {
179	return xxx_messageInfo_VirtualHost.Unmarshal(m, b)
180}
181func (m *VirtualHost) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
182	return xxx_messageInfo_VirtualHost.Marshal(b, m, deterministic)
183}
184func (m *VirtualHost) XXX_Merge(src proto.Message) {
185	xxx_messageInfo_VirtualHost.Merge(m, src)
186}
187func (m *VirtualHost) XXX_Size() int {
188	return xxx_messageInfo_VirtualHost.Size(m)
189}
190func (m *VirtualHost) XXX_DiscardUnknown() {
191	xxx_messageInfo_VirtualHost.DiscardUnknown(m)
192}
193
194var xxx_messageInfo_VirtualHost proto.InternalMessageInfo
195
196func (m *VirtualHost) GetName() string {
197	if m != nil {
198		return m.Name
199	}
200	return ""
201}
202
203func (m *VirtualHost) GetDomains() []string {
204	if m != nil {
205		return m.Domains
206	}
207	return nil
208}
209
210func (m *VirtualHost) GetRoutes() []*Route {
211	if m != nil {
212		return m.Routes
213	}
214	return nil
215}
216
217func (m *VirtualHost) GetRequireTls() VirtualHost_TlsRequirementType {
218	if m != nil {
219		return m.RequireTls
220	}
221	return VirtualHost_NONE
222}
223
224func (m *VirtualHost) GetVirtualClusters() []*VirtualCluster {
225	if m != nil {
226		return m.VirtualClusters
227	}
228	return nil
229}
230
231func (m *VirtualHost) GetRateLimits() []*RateLimit {
232	if m != nil {
233		return m.RateLimits
234	}
235	return nil
236}
237
238func (m *VirtualHost) GetRequestHeadersToAdd() []*core.HeaderValueOption {
239	if m != nil {
240		return m.RequestHeadersToAdd
241	}
242	return nil
243}
244
245func (m *VirtualHost) GetRequestHeadersToRemove() []string {
246	if m != nil {
247		return m.RequestHeadersToRemove
248	}
249	return nil
250}
251
252func (m *VirtualHost) GetResponseHeadersToAdd() []*core.HeaderValueOption {
253	if m != nil {
254		return m.ResponseHeadersToAdd
255	}
256	return nil
257}
258
259func (m *VirtualHost) GetResponseHeadersToRemove() []string {
260	if m != nil {
261		return m.ResponseHeadersToRemove
262	}
263	return nil
264}
265
266func (m *VirtualHost) GetCors() *CorsPolicy {
267	if m != nil {
268		return m.Cors
269	}
270	return nil
271}
272
273// Deprecated: Do not use.
274func (m *VirtualHost) GetPerFilterConfig() map[string]*_struct.Struct {
275	if m != nil {
276		return m.PerFilterConfig
277	}
278	return nil
279}
280
281func (m *VirtualHost) GetTypedPerFilterConfig() map[string]*any.Any {
282	if m != nil {
283		return m.TypedPerFilterConfig
284	}
285	return nil
286}
287
288func (m *VirtualHost) GetIncludeRequestAttemptCount() bool {
289	if m != nil {
290		return m.IncludeRequestAttemptCount
291	}
292	return false
293}
294
295func (m *VirtualHost) GetIncludeAttemptCountInResponse() bool {
296	if m != nil {
297		return m.IncludeAttemptCountInResponse
298	}
299	return false
300}
301
302func (m *VirtualHost) GetRetryPolicy() *RetryPolicy {
303	if m != nil {
304		return m.RetryPolicy
305	}
306	return nil
307}
308
309func (m *VirtualHost) GetRetryPolicyTypedConfig() *any.Any {
310	if m != nil {
311		return m.RetryPolicyTypedConfig
312	}
313	return nil
314}
315
316func (m *VirtualHost) GetHedgePolicy() *HedgePolicy {
317	if m != nil {
318		return m.HedgePolicy
319	}
320	return nil
321}
322
323func (m *VirtualHost) GetPerRequestBufferLimitBytes() *wrappers.UInt32Value {
324	if m != nil {
325		return m.PerRequestBufferLimitBytes
326	}
327	return nil
328}
329
330type FilterAction struct {
331	Action               *any.Any `protobuf:"bytes,1,opt,name=action,proto3" json:"action,omitempty"`
332	XXX_NoUnkeyedLiteral struct{} `json:"-"`
333	XXX_unrecognized     []byte   `json:"-"`
334	XXX_sizecache        int32    `json:"-"`
335}
336
337func (m *FilterAction) Reset()         { *m = FilterAction{} }
338func (m *FilterAction) String() string { return proto.CompactTextString(m) }
339func (*FilterAction) ProtoMessage()    {}
340func (*FilterAction) Descriptor() ([]byte, []int) {
341	return fileDescriptor_a23c550601a0f392, []int{1}
342}
343
344func (m *FilterAction) XXX_Unmarshal(b []byte) error {
345	return xxx_messageInfo_FilterAction.Unmarshal(m, b)
346}
347func (m *FilterAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
348	return xxx_messageInfo_FilterAction.Marshal(b, m, deterministic)
349}
350func (m *FilterAction) XXX_Merge(src proto.Message) {
351	xxx_messageInfo_FilterAction.Merge(m, src)
352}
353func (m *FilterAction) XXX_Size() int {
354	return xxx_messageInfo_FilterAction.Size(m)
355}
356func (m *FilterAction) XXX_DiscardUnknown() {
357	xxx_messageInfo_FilterAction.DiscardUnknown(m)
358}
359
360var xxx_messageInfo_FilterAction proto.InternalMessageInfo
361
362func (m *FilterAction) GetAction() *any.Any {
363	if m != nil {
364		return m.Action
365	}
366	return nil
367}
368
369type Route struct {
370	Name  string      `protobuf:"bytes,14,opt,name=name,proto3" json:"name,omitempty"`
371	Match *RouteMatch `protobuf:"bytes,1,opt,name=match,proto3" json:"match,omitempty"`
372	// Types that are valid to be assigned to Action:
373	//	*Route_Route
374	//	*Route_Redirect
375	//	*Route_DirectResponse
376	//	*Route_FilterAction
377	Action                     isRoute_Action             `protobuf_oneof:"action"`
378	Metadata                   *core.Metadata             `protobuf:"bytes,4,opt,name=metadata,proto3" json:"metadata,omitempty"`
379	Decorator                  *Decorator                 `protobuf:"bytes,5,opt,name=decorator,proto3" json:"decorator,omitempty"`
380	PerFilterConfig            map[string]*_struct.Struct `protobuf:"bytes,8,rep,name=per_filter_config,json=perFilterConfig,proto3" json:"per_filter_config,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Deprecated: Do not use.
381	TypedPerFilterConfig       map[string]*any.Any        `protobuf:"bytes,13,rep,name=typed_per_filter_config,json=typedPerFilterConfig,proto3" json:"typed_per_filter_config,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
382	RequestHeadersToAdd        []*core.HeaderValueOption  `protobuf:"bytes,9,rep,name=request_headers_to_add,json=requestHeadersToAdd,proto3" json:"request_headers_to_add,omitempty"`
383	RequestHeadersToRemove     []string                   `protobuf:"bytes,12,rep,name=request_headers_to_remove,json=requestHeadersToRemove,proto3" json:"request_headers_to_remove,omitempty"`
384	ResponseHeadersToAdd       []*core.HeaderValueOption  `protobuf:"bytes,10,rep,name=response_headers_to_add,json=responseHeadersToAdd,proto3" json:"response_headers_to_add,omitempty"`
385	ResponseHeadersToRemove    []string                   `protobuf:"bytes,11,rep,name=response_headers_to_remove,json=responseHeadersToRemove,proto3" json:"response_headers_to_remove,omitempty"`
386	Tracing                    *Tracing                   `protobuf:"bytes,15,opt,name=tracing,proto3" json:"tracing,omitempty"`
387	PerRequestBufferLimitBytes *wrappers.UInt32Value      `protobuf:"bytes,16,opt,name=per_request_buffer_limit_bytes,json=perRequestBufferLimitBytes,proto3" json:"per_request_buffer_limit_bytes,omitempty"`
388	XXX_NoUnkeyedLiteral       struct{}                   `json:"-"`
389	XXX_unrecognized           []byte                     `json:"-"`
390	XXX_sizecache              int32                      `json:"-"`
391}
392
393func (m *Route) Reset()         { *m = Route{} }
394func (m *Route) String() string { return proto.CompactTextString(m) }
395func (*Route) ProtoMessage()    {}
396func (*Route) Descriptor() ([]byte, []int) {
397	return fileDescriptor_a23c550601a0f392, []int{2}
398}
399
400func (m *Route) XXX_Unmarshal(b []byte) error {
401	return xxx_messageInfo_Route.Unmarshal(m, b)
402}
403func (m *Route) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
404	return xxx_messageInfo_Route.Marshal(b, m, deterministic)
405}
406func (m *Route) XXX_Merge(src proto.Message) {
407	xxx_messageInfo_Route.Merge(m, src)
408}
409func (m *Route) XXX_Size() int {
410	return xxx_messageInfo_Route.Size(m)
411}
412func (m *Route) XXX_DiscardUnknown() {
413	xxx_messageInfo_Route.DiscardUnknown(m)
414}
415
416var xxx_messageInfo_Route proto.InternalMessageInfo
417
418func (m *Route) GetName() string {
419	if m != nil {
420		return m.Name
421	}
422	return ""
423}
424
425func (m *Route) GetMatch() *RouteMatch {
426	if m != nil {
427		return m.Match
428	}
429	return nil
430}
431
432type isRoute_Action interface {
433	isRoute_Action()
434}
435
436type Route_Route struct {
437	Route *RouteAction `protobuf:"bytes,2,opt,name=route,proto3,oneof"`
438}
439
440type Route_Redirect struct {
441	Redirect *RedirectAction `protobuf:"bytes,3,opt,name=redirect,proto3,oneof"`
442}
443
444type Route_DirectResponse struct {
445	DirectResponse *DirectResponseAction `protobuf:"bytes,7,opt,name=direct_response,json=directResponse,proto3,oneof"`
446}
447
448type Route_FilterAction struct {
449	FilterAction *FilterAction `protobuf:"bytes,17,opt,name=filter_action,json=filterAction,proto3,oneof"`
450}
451
452func (*Route_Route) isRoute_Action() {}
453
454func (*Route_Redirect) isRoute_Action() {}
455
456func (*Route_DirectResponse) isRoute_Action() {}
457
458func (*Route_FilterAction) isRoute_Action() {}
459
460func (m *Route) GetAction() isRoute_Action {
461	if m != nil {
462		return m.Action
463	}
464	return nil
465}
466
467func (m *Route) GetRoute() *RouteAction {
468	if x, ok := m.GetAction().(*Route_Route); ok {
469		return x.Route
470	}
471	return nil
472}
473
474func (m *Route) GetRedirect() *RedirectAction {
475	if x, ok := m.GetAction().(*Route_Redirect); ok {
476		return x.Redirect
477	}
478	return nil
479}
480
481func (m *Route) GetDirectResponse() *DirectResponseAction {
482	if x, ok := m.GetAction().(*Route_DirectResponse); ok {
483		return x.DirectResponse
484	}
485	return nil
486}
487
488func (m *Route) GetFilterAction() *FilterAction {
489	if x, ok := m.GetAction().(*Route_FilterAction); ok {
490		return x.FilterAction
491	}
492	return nil
493}
494
495func (m *Route) GetMetadata() *core.Metadata {
496	if m != nil {
497		return m.Metadata
498	}
499	return nil
500}
501
502func (m *Route) GetDecorator() *Decorator {
503	if m != nil {
504		return m.Decorator
505	}
506	return nil
507}
508
509// Deprecated: Do not use.
510func (m *Route) GetPerFilterConfig() map[string]*_struct.Struct {
511	if m != nil {
512		return m.PerFilterConfig
513	}
514	return nil
515}
516
517func (m *Route) GetTypedPerFilterConfig() map[string]*any.Any {
518	if m != nil {
519		return m.TypedPerFilterConfig
520	}
521	return nil
522}
523
524func (m *Route) GetRequestHeadersToAdd() []*core.HeaderValueOption {
525	if m != nil {
526		return m.RequestHeadersToAdd
527	}
528	return nil
529}
530
531func (m *Route) GetRequestHeadersToRemove() []string {
532	if m != nil {
533		return m.RequestHeadersToRemove
534	}
535	return nil
536}
537
538func (m *Route) GetResponseHeadersToAdd() []*core.HeaderValueOption {
539	if m != nil {
540		return m.ResponseHeadersToAdd
541	}
542	return nil
543}
544
545func (m *Route) GetResponseHeadersToRemove() []string {
546	if m != nil {
547		return m.ResponseHeadersToRemove
548	}
549	return nil
550}
551
552func (m *Route) GetTracing() *Tracing {
553	if m != nil {
554		return m.Tracing
555	}
556	return nil
557}
558
559func (m *Route) GetPerRequestBufferLimitBytes() *wrappers.UInt32Value {
560	if m != nil {
561		return m.PerRequestBufferLimitBytes
562	}
563	return nil
564}
565
566// XXX_OneofWrappers is for the internal use of the proto package.
567func (*Route) XXX_OneofWrappers() []interface{} {
568	return []interface{}{
569		(*Route_Route)(nil),
570		(*Route_Redirect)(nil),
571		(*Route_DirectResponse)(nil),
572		(*Route_FilterAction)(nil),
573	}
574}
575
576type WeightedCluster struct {
577	Clusters             []*WeightedCluster_ClusterWeight `protobuf:"bytes,1,rep,name=clusters,proto3" json:"clusters,omitempty"`
578	TotalWeight          *wrappers.UInt32Value            `protobuf:"bytes,3,opt,name=total_weight,json=totalWeight,proto3" json:"total_weight,omitempty"`
579	RuntimeKeyPrefix     string                           `protobuf:"bytes,2,opt,name=runtime_key_prefix,json=runtimeKeyPrefix,proto3" json:"runtime_key_prefix,omitempty"`
580	XXX_NoUnkeyedLiteral struct{}                         `json:"-"`
581	XXX_unrecognized     []byte                           `json:"-"`
582	XXX_sizecache        int32                            `json:"-"`
583}
584
585func (m *WeightedCluster) Reset()         { *m = WeightedCluster{} }
586func (m *WeightedCluster) String() string { return proto.CompactTextString(m) }
587func (*WeightedCluster) ProtoMessage()    {}
588func (*WeightedCluster) Descriptor() ([]byte, []int) {
589	return fileDescriptor_a23c550601a0f392, []int{3}
590}
591
592func (m *WeightedCluster) XXX_Unmarshal(b []byte) error {
593	return xxx_messageInfo_WeightedCluster.Unmarshal(m, b)
594}
595func (m *WeightedCluster) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
596	return xxx_messageInfo_WeightedCluster.Marshal(b, m, deterministic)
597}
598func (m *WeightedCluster) XXX_Merge(src proto.Message) {
599	xxx_messageInfo_WeightedCluster.Merge(m, src)
600}
601func (m *WeightedCluster) XXX_Size() int {
602	return xxx_messageInfo_WeightedCluster.Size(m)
603}
604func (m *WeightedCluster) XXX_DiscardUnknown() {
605	xxx_messageInfo_WeightedCluster.DiscardUnknown(m)
606}
607
608var xxx_messageInfo_WeightedCluster proto.InternalMessageInfo
609
610func (m *WeightedCluster) GetClusters() []*WeightedCluster_ClusterWeight {
611	if m != nil {
612		return m.Clusters
613	}
614	return nil
615}
616
617func (m *WeightedCluster) GetTotalWeight() *wrappers.UInt32Value {
618	if m != nil {
619		return m.TotalWeight
620	}
621	return nil
622}
623
624func (m *WeightedCluster) GetRuntimeKeyPrefix() string {
625	if m != nil {
626		return m.RuntimeKeyPrefix
627	}
628	return ""
629}
630
631type WeightedCluster_ClusterWeight struct {
632	Name                    string                     `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
633	Weight                  *wrappers.UInt32Value      `protobuf:"bytes,2,opt,name=weight,proto3" json:"weight,omitempty"`
634	MetadataMatch           *core.Metadata             `protobuf:"bytes,3,opt,name=metadata_match,json=metadataMatch,proto3" json:"metadata_match,omitempty"`
635	RequestHeadersToAdd     []*core.HeaderValueOption  `protobuf:"bytes,4,rep,name=request_headers_to_add,json=requestHeadersToAdd,proto3" json:"request_headers_to_add,omitempty"`
636	RequestHeadersToRemove  []string                   `protobuf:"bytes,9,rep,name=request_headers_to_remove,json=requestHeadersToRemove,proto3" json:"request_headers_to_remove,omitempty"`
637	ResponseHeadersToAdd    []*core.HeaderValueOption  `protobuf:"bytes,5,rep,name=response_headers_to_add,json=responseHeadersToAdd,proto3" json:"response_headers_to_add,omitempty"`
638	ResponseHeadersToRemove []string                   `protobuf:"bytes,6,rep,name=response_headers_to_remove,json=responseHeadersToRemove,proto3" json:"response_headers_to_remove,omitempty"`
639	PerFilterConfig         map[string]*_struct.Struct `protobuf:"bytes,8,rep,name=per_filter_config,json=perFilterConfig,proto3" json:"per_filter_config,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Deprecated: Do not use.
640	TypedPerFilterConfig    map[string]*any.Any        `protobuf:"bytes,10,rep,name=typed_per_filter_config,json=typedPerFilterConfig,proto3" json:"typed_per_filter_config,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
641	XXX_NoUnkeyedLiteral    struct{}                   `json:"-"`
642	XXX_unrecognized        []byte                     `json:"-"`
643	XXX_sizecache           int32                      `json:"-"`
644}
645
646func (m *WeightedCluster_ClusterWeight) Reset()         { *m = WeightedCluster_ClusterWeight{} }
647func (m *WeightedCluster_ClusterWeight) String() string { return proto.CompactTextString(m) }
648func (*WeightedCluster_ClusterWeight) ProtoMessage()    {}
649func (*WeightedCluster_ClusterWeight) Descriptor() ([]byte, []int) {
650	return fileDescriptor_a23c550601a0f392, []int{3, 0}
651}
652
653func (m *WeightedCluster_ClusterWeight) XXX_Unmarshal(b []byte) error {
654	return xxx_messageInfo_WeightedCluster_ClusterWeight.Unmarshal(m, b)
655}
656func (m *WeightedCluster_ClusterWeight) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
657	return xxx_messageInfo_WeightedCluster_ClusterWeight.Marshal(b, m, deterministic)
658}
659func (m *WeightedCluster_ClusterWeight) XXX_Merge(src proto.Message) {
660	xxx_messageInfo_WeightedCluster_ClusterWeight.Merge(m, src)
661}
662func (m *WeightedCluster_ClusterWeight) XXX_Size() int {
663	return xxx_messageInfo_WeightedCluster_ClusterWeight.Size(m)
664}
665func (m *WeightedCluster_ClusterWeight) XXX_DiscardUnknown() {
666	xxx_messageInfo_WeightedCluster_ClusterWeight.DiscardUnknown(m)
667}
668
669var xxx_messageInfo_WeightedCluster_ClusterWeight proto.InternalMessageInfo
670
671func (m *WeightedCluster_ClusterWeight) GetName() string {
672	if m != nil {
673		return m.Name
674	}
675	return ""
676}
677
678func (m *WeightedCluster_ClusterWeight) GetWeight() *wrappers.UInt32Value {
679	if m != nil {
680		return m.Weight
681	}
682	return nil
683}
684
685func (m *WeightedCluster_ClusterWeight) GetMetadataMatch() *core.Metadata {
686	if m != nil {
687		return m.MetadataMatch
688	}
689	return nil
690}
691
692func (m *WeightedCluster_ClusterWeight) GetRequestHeadersToAdd() []*core.HeaderValueOption {
693	if m != nil {
694		return m.RequestHeadersToAdd
695	}
696	return nil
697}
698
699func (m *WeightedCluster_ClusterWeight) GetRequestHeadersToRemove() []string {
700	if m != nil {
701		return m.RequestHeadersToRemove
702	}
703	return nil
704}
705
706func (m *WeightedCluster_ClusterWeight) GetResponseHeadersToAdd() []*core.HeaderValueOption {
707	if m != nil {
708		return m.ResponseHeadersToAdd
709	}
710	return nil
711}
712
713func (m *WeightedCluster_ClusterWeight) GetResponseHeadersToRemove() []string {
714	if m != nil {
715		return m.ResponseHeadersToRemove
716	}
717	return nil
718}
719
720// Deprecated: Do not use.
721func (m *WeightedCluster_ClusterWeight) GetPerFilterConfig() map[string]*_struct.Struct {
722	if m != nil {
723		return m.PerFilterConfig
724	}
725	return nil
726}
727
728func (m *WeightedCluster_ClusterWeight) GetTypedPerFilterConfig() map[string]*any.Any {
729	if m != nil {
730		return m.TypedPerFilterConfig
731	}
732	return nil
733}
734
735type RouteMatch struct {
736	// Types that are valid to be assigned to PathSpecifier:
737	//	*RouteMatch_Prefix
738	//	*RouteMatch_Path
739	//	*RouteMatch_Regex
740	//	*RouteMatch_SafeRegex
741	PathSpecifier        isRouteMatch_PathSpecifier         `protobuf_oneof:"path_specifier"`
742	CaseSensitive        *wrappers.BoolValue                `protobuf:"bytes,4,opt,name=case_sensitive,json=caseSensitive,proto3" json:"case_sensitive,omitempty"`
743	RuntimeFraction      *core.RuntimeFractionalPercent     `protobuf:"bytes,9,opt,name=runtime_fraction,json=runtimeFraction,proto3" json:"runtime_fraction,omitempty"`
744	Headers              []*HeaderMatcher                   `protobuf:"bytes,6,rep,name=headers,proto3" json:"headers,omitempty"`
745	QueryParameters      []*QueryParameterMatcher           `protobuf:"bytes,7,rep,name=query_parameters,json=queryParameters,proto3" json:"query_parameters,omitempty"`
746	Grpc                 *RouteMatch_GrpcRouteMatchOptions  `protobuf:"bytes,8,opt,name=grpc,proto3" json:"grpc,omitempty"`
747	TlsContext           *RouteMatch_TlsContextMatchOptions `protobuf:"bytes,11,opt,name=tls_context,json=tlsContext,proto3" json:"tls_context,omitempty"`
748	XXX_NoUnkeyedLiteral struct{}                           `json:"-"`
749	XXX_unrecognized     []byte                             `json:"-"`
750	XXX_sizecache        int32                              `json:"-"`
751}
752
753func (m *RouteMatch) Reset()         { *m = RouteMatch{} }
754func (m *RouteMatch) String() string { return proto.CompactTextString(m) }
755func (*RouteMatch) ProtoMessage()    {}
756func (*RouteMatch) Descriptor() ([]byte, []int) {
757	return fileDescriptor_a23c550601a0f392, []int{4}
758}
759
760func (m *RouteMatch) XXX_Unmarshal(b []byte) error {
761	return xxx_messageInfo_RouteMatch.Unmarshal(m, b)
762}
763func (m *RouteMatch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
764	return xxx_messageInfo_RouteMatch.Marshal(b, m, deterministic)
765}
766func (m *RouteMatch) XXX_Merge(src proto.Message) {
767	xxx_messageInfo_RouteMatch.Merge(m, src)
768}
769func (m *RouteMatch) XXX_Size() int {
770	return xxx_messageInfo_RouteMatch.Size(m)
771}
772func (m *RouteMatch) XXX_DiscardUnknown() {
773	xxx_messageInfo_RouteMatch.DiscardUnknown(m)
774}
775
776var xxx_messageInfo_RouteMatch proto.InternalMessageInfo
777
778type isRouteMatch_PathSpecifier interface {
779	isRouteMatch_PathSpecifier()
780}
781
782type RouteMatch_Prefix struct {
783	Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3,oneof"`
784}
785
786type RouteMatch_Path struct {
787	Path string `protobuf:"bytes,2,opt,name=path,proto3,oneof"`
788}
789
790type RouteMatch_Regex struct {
791	Regex string `protobuf:"bytes,3,opt,name=regex,proto3,oneof"`
792}
793
794type RouteMatch_SafeRegex struct {
795	SafeRegex *matcher.RegexMatcher `protobuf:"bytes,10,opt,name=safe_regex,json=safeRegex,proto3,oneof"`
796}
797
798func (*RouteMatch_Prefix) isRouteMatch_PathSpecifier() {}
799
800func (*RouteMatch_Path) isRouteMatch_PathSpecifier() {}
801
802func (*RouteMatch_Regex) isRouteMatch_PathSpecifier() {}
803
804func (*RouteMatch_SafeRegex) isRouteMatch_PathSpecifier() {}
805
806func (m *RouteMatch) GetPathSpecifier() isRouteMatch_PathSpecifier {
807	if m != nil {
808		return m.PathSpecifier
809	}
810	return nil
811}
812
813func (m *RouteMatch) GetPrefix() string {
814	if x, ok := m.GetPathSpecifier().(*RouteMatch_Prefix); ok {
815		return x.Prefix
816	}
817	return ""
818}
819
820func (m *RouteMatch) GetPath() string {
821	if x, ok := m.GetPathSpecifier().(*RouteMatch_Path); ok {
822		return x.Path
823	}
824	return ""
825}
826
827// Deprecated: Do not use.
828func (m *RouteMatch) GetRegex() string {
829	if x, ok := m.GetPathSpecifier().(*RouteMatch_Regex); ok {
830		return x.Regex
831	}
832	return ""
833}
834
835func (m *RouteMatch) GetSafeRegex() *matcher.RegexMatcher {
836	if x, ok := m.GetPathSpecifier().(*RouteMatch_SafeRegex); ok {
837		return x.SafeRegex
838	}
839	return nil
840}
841
842func (m *RouteMatch) GetCaseSensitive() *wrappers.BoolValue {
843	if m != nil {
844		return m.CaseSensitive
845	}
846	return nil
847}
848
849func (m *RouteMatch) GetRuntimeFraction() *core.RuntimeFractionalPercent {
850	if m != nil {
851		return m.RuntimeFraction
852	}
853	return nil
854}
855
856func (m *RouteMatch) GetHeaders() []*HeaderMatcher {
857	if m != nil {
858		return m.Headers
859	}
860	return nil
861}
862
863func (m *RouteMatch) GetQueryParameters() []*QueryParameterMatcher {
864	if m != nil {
865		return m.QueryParameters
866	}
867	return nil
868}
869
870func (m *RouteMatch) GetGrpc() *RouteMatch_GrpcRouteMatchOptions {
871	if m != nil {
872		return m.Grpc
873	}
874	return nil
875}
876
877func (m *RouteMatch) GetTlsContext() *RouteMatch_TlsContextMatchOptions {
878	if m != nil {
879		return m.TlsContext
880	}
881	return nil
882}
883
884// XXX_OneofWrappers is for the internal use of the proto package.
885func (*RouteMatch) XXX_OneofWrappers() []interface{} {
886	return []interface{}{
887		(*RouteMatch_Prefix)(nil),
888		(*RouteMatch_Path)(nil),
889		(*RouteMatch_Regex)(nil),
890		(*RouteMatch_SafeRegex)(nil),
891	}
892}
893
894type RouteMatch_GrpcRouteMatchOptions struct {
895	XXX_NoUnkeyedLiteral struct{} `json:"-"`
896	XXX_unrecognized     []byte   `json:"-"`
897	XXX_sizecache        int32    `json:"-"`
898}
899
900func (m *RouteMatch_GrpcRouteMatchOptions) Reset()         { *m = RouteMatch_GrpcRouteMatchOptions{} }
901func (m *RouteMatch_GrpcRouteMatchOptions) String() string { return proto.CompactTextString(m) }
902func (*RouteMatch_GrpcRouteMatchOptions) ProtoMessage()    {}
903func (*RouteMatch_GrpcRouteMatchOptions) Descriptor() ([]byte, []int) {
904	return fileDescriptor_a23c550601a0f392, []int{4, 0}
905}
906
907func (m *RouteMatch_GrpcRouteMatchOptions) XXX_Unmarshal(b []byte) error {
908	return xxx_messageInfo_RouteMatch_GrpcRouteMatchOptions.Unmarshal(m, b)
909}
910func (m *RouteMatch_GrpcRouteMatchOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
911	return xxx_messageInfo_RouteMatch_GrpcRouteMatchOptions.Marshal(b, m, deterministic)
912}
913func (m *RouteMatch_GrpcRouteMatchOptions) XXX_Merge(src proto.Message) {
914	xxx_messageInfo_RouteMatch_GrpcRouteMatchOptions.Merge(m, src)
915}
916func (m *RouteMatch_GrpcRouteMatchOptions) XXX_Size() int {
917	return xxx_messageInfo_RouteMatch_GrpcRouteMatchOptions.Size(m)
918}
919func (m *RouteMatch_GrpcRouteMatchOptions) XXX_DiscardUnknown() {
920	xxx_messageInfo_RouteMatch_GrpcRouteMatchOptions.DiscardUnknown(m)
921}
922
923var xxx_messageInfo_RouteMatch_GrpcRouteMatchOptions proto.InternalMessageInfo
924
925type RouteMatch_TlsContextMatchOptions struct {
926	Presented            *wrappers.BoolValue `protobuf:"bytes,1,opt,name=presented,proto3" json:"presented,omitempty"`
927	Validated            *wrappers.BoolValue `protobuf:"bytes,2,opt,name=validated,proto3" json:"validated,omitempty"`
928	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
929	XXX_unrecognized     []byte              `json:"-"`
930	XXX_sizecache        int32               `json:"-"`
931}
932
933func (m *RouteMatch_TlsContextMatchOptions) Reset()         { *m = RouteMatch_TlsContextMatchOptions{} }
934func (m *RouteMatch_TlsContextMatchOptions) String() string { return proto.CompactTextString(m) }
935func (*RouteMatch_TlsContextMatchOptions) ProtoMessage()    {}
936func (*RouteMatch_TlsContextMatchOptions) Descriptor() ([]byte, []int) {
937	return fileDescriptor_a23c550601a0f392, []int{4, 1}
938}
939
940func (m *RouteMatch_TlsContextMatchOptions) XXX_Unmarshal(b []byte) error {
941	return xxx_messageInfo_RouteMatch_TlsContextMatchOptions.Unmarshal(m, b)
942}
943func (m *RouteMatch_TlsContextMatchOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
944	return xxx_messageInfo_RouteMatch_TlsContextMatchOptions.Marshal(b, m, deterministic)
945}
946func (m *RouteMatch_TlsContextMatchOptions) XXX_Merge(src proto.Message) {
947	xxx_messageInfo_RouteMatch_TlsContextMatchOptions.Merge(m, src)
948}
949func (m *RouteMatch_TlsContextMatchOptions) XXX_Size() int {
950	return xxx_messageInfo_RouteMatch_TlsContextMatchOptions.Size(m)
951}
952func (m *RouteMatch_TlsContextMatchOptions) XXX_DiscardUnknown() {
953	xxx_messageInfo_RouteMatch_TlsContextMatchOptions.DiscardUnknown(m)
954}
955
956var xxx_messageInfo_RouteMatch_TlsContextMatchOptions proto.InternalMessageInfo
957
958func (m *RouteMatch_TlsContextMatchOptions) GetPresented() *wrappers.BoolValue {
959	if m != nil {
960		return m.Presented
961	}
962	return nil
963}
964
965func (m *RouteMatch_TlsContextMatchOptions) GetValidated() *wrappers.BoolValue {
966	if m != nil {
967		return m.Validated
968	}
969	return nil
970}
971
972type CorsPolicy struct {
973	AllowOrigin            []string                 `protobuf:"bytes,1,rep,name=allow_origin,json=allowOrigin,proto3" json:"allow_origin,omitempty"`                  // Deprecated: Do not use.
974	AllowOriginRegex       []string                 `protobuf:"bytes,8,rep,name=allow_origin_regex,json=allowOriginRegex,proto3" json:"allow_origin_regex,omitempty"` // Deprecated: Do not use.
975	AllowOriginStringMatch []*matcher.StringMatcher `protobuf:"bytes,11,rep,name=allow_origin_string_match,json=allowOriginStringMatch,proto3" json:"allow_origin_string_match,omitempty"`
976	AllowMethods           string                   `protobuf:"bytes,2,opt,name=allow_methods,json=allowMethods,proto3" json:"allow_methods,omitempty"`
977	AllowHeaders           string                   `protobuf:"bytes,3,opt,name=allow_headers,json=allowHeaders,proto3" json:"allow_headers,omitempty"`
978	ExposeHeaders          string                   `protobuf:"bytes,4,opt,name=expose_headers,json=exposeHeaders,proto3" json:"expose_headers,omitempty"`
979	MaxAge                 string                   `protobuf:"bytes,5,opt,name=max_age,json=maxAge,proto3" json:"max_age,omitempty"`
980	AllowCredentials       *wrappers.BoolValue      `protobuf:"bytes,6,opt,name=allow_credentials,json=allowCredentials,proto3" json:"allow_credentials,omitempty"`
981	// Types that are valid to be assigned to EnabledSpecifier:
982	//	*CorsPolicy_Enabled
983	//	*CorsPolicy_FilterEnabled
984	EnabledSpecifier     isCorsPolicy_EnabledSpecifier  `protobuf_oneof:"enabled_specifier"`
985	ShadowEnabled        *core.RuntimeFractionalPercent `protobuf:"bytes,10,opt,name=shadow_enabled,json=shadowEnabled,proto3" json:"shadow_enabled,omitempty"`
986	XXX_NoUnkeyedLiteral struct{}                       `json:"-"`
987	XXX_unrecognized     []byte                         `json:"-"`
988	XXX_sizecache        int32                          `json:"-"`
989}
990
991func (m *CorsPolicy) Reset()         { *m = CorsPolicy{} }
992func (m *CorsPolicy) String() string { return proto.CompactTextString(m) }
993func (*CorsPolicy) ProtoMessage()    {}
994func (*CorsPolicy) Descriptor() ([]byte, []int) {
995	return fileDescriptor_a23c550601a0f392, []int{5}
996}
997
998func (m *CorsPolicy) XXX_Unmarshal(b []byte) error {
999	return xxx_messageInfo_CorsPolicy.Unmarshal(m, b)
1000}
1001func (m *CorsPolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1002	return xxx_messageInfo_CorsPolicy.Marshal(b, m, deterministic)
1003}
1004func (m *CorsPolicy) XXX_Merge(src proto.Message) {
1005	xxx_messageInfo_CorsPolicy.Merge(m, src)
1006}
1007func (m *CorsPolicy) XXX_Size() int {
1008	return xxx_messageInfo_CorsPolicy.Size(m)
1009}
1010func (m *CorsPolicy) XXX_DiscardUnknown() {
1011	xxx_messageInfo_CorsPolicy.DiscardUnknown(m)
1012}
1013
1014var xxx_messageInfo_CorsPolicy proto.InternalMessageInfo
1015
1016// Deprecated: Do not use.
1017func (m *CorsPolicy) GetAllowOrigin() []string {
1018	if m != nil {
1019		return m.AllowOrigin
1020	}
1021	return nil
1022}
1023
1024// Deprecated: Do not use.
1025func (m *CorsPolicy) GetAllowOriginRegex() []string {
1026	if m != nil {
1027		return m.AllowOriginRegex
1028	}
1029	return nil
1030}
1031
1032func (m *CorsPolicy) GetAllowOriginStringMatch() []*matcher.StringMatcher {
1033	if m != nil {
1034		return m.AllowOriginStringMatch
1035	}
1036	return nil
1037}
1038
1039func (m *CorsPolicy) GetAllowMethods() string {
1040	if m != nil {
1041		return m.AllowMethods
1042	}
1043	return ""
1044}
1045
1046func (m *CorsPolicy) GetAllowHeaders() string {
1047	if m != nil {
1048		return m.AllowHeaders
1049	}
1050	return ""
1051}
1052
1053func (m *CorsPolicy) GetExposeHeaders() string {
1054	if m != nil {
1055		return m.ExposeHeaders
1056	}
1057	return ""
1058}
1059
1060func (m *CorsPolicy) GetMaxAge() string {
1061	if m != nil {
1062		return m.MaxAge
1063	}
1064	return ""
1065}
1066
1067func (m *CorsPolicy) GetAllowCredentials() *wrappers.BoolValue {
1068	if m != nil {
1069		return m.AllowCredentials
1070	}
1071	return nil
1072}
1073
1074type isCorsPolicy_EnabledSpecifier interface {
1075	isCorsPolicy_EnabledSpecifier()
1076}
1077
1078type CorsPolicy_Enabled struct {
1079	Enabled *wrappers.BoolValue `protobuf:"bytes,7,opt,name=enabled,proto3,oneof"`
1080}
1081
1082type CorsPolicy_FilterEnabled struct {
1083	FilterEnabled *core.RuntimeFractionalPercent `protobuf:"bytes,9,opt,name=filter_enabled,json=filterEnabled,proto3,oneof"`
1084}
1085
1086func (*CorsPolicy_Enabled) isCorsPolicy_EnabledSpecifier() {}
1087
1088func (*CorsPolicy_FilterEnabled) isCorsPolicy_EnabledSpecifier() {}
1089
1090func (m *CorsPolicy) GetEnabledSpecifier() isCorsPolicy_EnabledSpecifier {
1091	if m != nil {
1092		return m.EnabledSpecifier
1093	}
1094	return nil
1095}
1096
1097// Deprecated: Do not use.
1098func (m *CorsPolicy) GetEnabled() *wrappers.BoolValue {
1099	if x, ok := m.GetEnabledSpecifier().(*CorsPolicy_Enabled); ok {
1100		return x.Enabled
1101	}
1102	return nil
1103}
1104
1105func (m *CorsPolicy) GetFilterEnabled() *core.RuntimeFractionalPercent {
1106	if x, ok := m.GetEnabledSpecifier().(*CorsPolicy_FilterEnabled); ok {
1107		return x.FilterEnabled
1108	}
1109	return nil
1110}
1111
1112func (m *CorsPolicy) GetShadowEnabled() *core.RuntimeFractionalPercent {
1113	if m != nil {
1114		return m.ShadowEnabled
1115	}
1116	return nil
1117}
1118
1119// XXX_OneofWrappers is for the internal use of the proto package.
1120func (*CorsPolicy) XXX_OneofWrappers() []interface{} {
1121	return []interface{}{
1122		(*CorsPolicy_Enabled)(nil),
1123		(*CorsPolicy_FilterEnabled)(nil),
1124	}
1125}
1126
1127type RouteAction struct {
1128	// Types that are valid to be assigned to ClusterSpecifier:
1129	//	*RouteAction_Cluster
1130	//	*RouteAction_ClusterHeader
1131	//	*RouteAction_WeightedClusters
1132	ClusterSpecifier            isRouteAction_ClusterSpecifier          `protobuf_oneof:"cluster_specifier"`
1133	ClusterNotFoundResponseCode RouteAction_ClusterNotFoundResponseCode `protobuf:"varint,20,opt,name=cluster_not_found_response_code,json=clusterNotFoundResponseCode,proto3,enum=envoy.api.v2.route.RouteAction_ClusterNotFoundResponseCode" json:"cluster_not_found_response_code,omitempty"`
1134	MetadataMatch               *core.Metadata                          `protobuf:"bytes,4,opt,name=metadata_match,json=metadataMatch,proto3" json:"metadata_match,omitempty"`
1135	PrefixRewrite               string                                  `protobuf:"bytes,5,opt,name=prefix_rewrite,json=prefixRewrite,proto3" json:"prefix_rewrite,omitempty"`
1136	RegexRewrite                *matcher.RegexMatchAndSubstitute        `protobuf:"bytes,32,opt,name=regex_rewrite,json=regexRewrite,proto3" json:"regex_rewrite,omitempty"`
1137	// Types that are valid to be assigned to HostRewriteSpecifier:
1138	//	*RouteAction_HostRewrite
1139	//	*RouteAction_AutoHostRewrite
1140	//	*RouteAction_AutoHostRewriteHeader
1141	HostRewriteSpecifier   isRouteAction_HostRewriteSpecifier `protobuf_oneof:"host_rewrite_specifier"`
1142	Timeout                *duration.Duration                 `protobuf:"bytes,8,opt,name=timeout,proto3" json:"timeout,omitempty"`
1143	IdleTimeout            *duration.Duration                 `protobuf:"bytes,24,opt,name=idle_timeout,json=idleTimeout,proto3" json:"idle_timeout,omitempty"`
1144	RetryPolicy            *RetryPolicy                       `protobuf:"bytes,9,opt,name=retry_policy,json=retryPolicy,proto3" json:"retry_policy,omitempty"`
1145	RetryPolicyTypedConfig *any.Any                           `protobuf:"bytes,33,opt,name=retry_policy_typed_config,json=retryPolicyTypedConfig,proto3" json:"retry_policy_typed_config,omitempty"`
1146	RequestMirrorPolicy    *RouteAction_RequestMirrorPolicy   `protobuf:"bytes,10,opt,name=request_mirror_policy,json=requestMirrorPolicy,proto3" json:"request_mirror_policy,omitempty"` // Deprecated: Do not use.
1147	RequestMirrorPolicies  []*RouteAction_RequestMirrorPolicy `protobuf:"bytes,30,rep,name=request_mirror_policies,json=requestMirrorPolicies,proto3" json:"request_mirror_policies,omitempty"`
1148	Priority               core.RoutingPriority               `protobuf:"varint,11,opt,name=priority,proto3,enum=envoy.api.v2.core.RoutingPriority" json:"priority,omitempty"`
1149	RateLimits             []*RateLimit                       `protobuf:"bytes,13,rep,name=rate_limits,json=rateLimits,proto3" json:"rate_limits,omitempty"`
1150	IncludeVhRateLimits    *wrappers.BoolValue                `protobuf:"bytes,14,opt,name=include_vh_rate_limits,json=includeVhRateLimits,proto3" json:"include_vh_rate_limits,omitempty"`
1151	HashPolicy             []*RouteAction_HashPolicy          `protobuf:"bytes,15,rep,name=hash_policy,json=hashPolicy,proto3" json:"hash_policy,omitempty"`
1152	Cors                   *CorsPolicy                        `protobuf:"bytes,17,opt,name=cors,proto3" json:"cors,omitempty"`
1153	MaxGrpcTimeout         *duration.Duration                 `protobuf:"bytes,23,opt,name=max_grpc_timeout,json=maxGrpcTimeout,proto3" json:"max_grpc_timeout,omitempty"`
1154	GrpcTimeoutOffset      *duration.Duration                 `protobuf:"bytes,28,opt,name=grpc_timeout_offset,json=grpcTimeoutOffset,proto3" json:"grpc_timeout_offset,omitempty"`
1155	UpgradeConfigs         []*RouteAction_UpgradeConfig       `protobuf:"bytes,25,rep,name=upgrade_configs,json=upgradeConfigs,proto3" json:"upgrade_configs,omitempty"`
1156	InternalRedirectAction RouteAction_InternalRedirectAction `protobuf:"varint,26,opt,name=internal_redirect_action,json=internalRedirectAction,proto3,enum=envoy.api.v2.route.RouteAction_InternalRedirectAction" json:"internal_redirect_action,omitempty"`
1157	MaxInternalRedirects   *wrappers.UInt32Value              `protobuf:"bytes,31,opt,name=max_internal_redirects,json=maxInternalRedirects,proto3" json:"max_internal_redirects,omitempty"`
1158	HedgePolicy            *HedgePolicy                       `protobuf:"bytes,27,opt,name=hedge_policy,json=hedgePolicy,proto3" json:"hedge_policy,omitempty"`
1159	XXX_NoUnkeyedLiteral   struct{}                           `json:"-"`
1160	XXX_unrecognized       []byte                             `json:"-"`
1161	XXX_sizecache          int32                              `json:"-"`
1162}
1163
1164func (m *RouteAction) Reset()         { *m = RouteAction{} }
1165func (m *RouteAction) String() string { return proto.CompactTextString(m) }
1166func (*RouteAction) ProtoMessage()    {}
1167func (*RouteAction) Descriptor() ([]byte, []int) {
1168	return fileDescriptor_a23c550601a0f392, []int{6}
1169}
1170
1171func (m *RouteAction) XXX_Unmarshal(b []byte) error {
1172	return xxx_messageInfo_RouteAction.Unmarshal(m, b)
1173}
1174func (m *RouteAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1175	return xxx_messageInfo_RouteAction.Marshal(b, m, deterministic)
1176}
1177func (m *RouteAction) XXX_Merge(src proto.Message) {
1178	xxx_messageInfo_RouteAction.Merge(m, src)
1179}
1180func (m *RouteAction) XXX_Size() int {
1181	return xxx_messageInfo_RouteAction.Size(m)
1182}
1183func (m *RouteAction) XXX_DiscardUnknown() {
1184	xxx_messageInfo_RouteAction.DiscardUnknown(m)
1185}
1186
1187var xxx_messageInfo_RouteAction proto.InternalMessageInfo
1188
1189type isRouteAction_ClusterSpecifier interface {
1190	isRouteAction_ClusterSpecifier()
1191}
1192
1193type RouteAction_Cluster struct {
1194	Cluster string `protobuf:"bytes,1,opt,name=cluster,proto3,oneof"`
1195}
1196
1197type RouteAction_ClusterHeader struct {
1198	ClusterHeader string `protobuf:"bytes,2,opt,name=cluster_header,json=clusterHeader,proto3,oneof"`
1199}
1200
1201type RouteAction_WeightedClusters struct {
1202	WeightedClusters *WeightedCluster `protobuf:"bytes,3,opt,name=weighted_clusters,json=weightedClusters,proto3,oneof"`
1203}
1204
1205func (*RouteAction_Cluster) isRouteAction_ClusterSpecifier() {}
1206
1207func (*RouteAction_ClusterHeader) isRouteAction_ClusterSpecifier() {}
1208
1209func (*RouteAction_WeightedClusters) isRouteAction_ClusterSpecifier() {}
1210
1211func (m *RouteAction) GetClusterSpecifier() isRouteAction_ClusterSpecifier {
1212	if m != nil {
1213		return m.ClusterSpecifier
1214	}
1215	return nil
1216}
1217
1218func (m *RouteAction) GetCluster() string {
1219	if x, ok := m.GetClusterSpecifier().(*RouteAction_Cluster); ok {
1220		return x.Cluster
1221	}
1222	return ""
1223}
1224
1225func (m *RouteAction) GetClusterHeader() string {
1226	if x, ok := m.GetClusterSpecifier().(*RouteAction_ClusterHeader); ok {
1227		return x.ClusterHeader
1228	}
1229	return ""
1230}
1231
1232func (m *RouteAction) GetWeightedClusters() *WeightedCluster {
1233	if x, ok := m.GetClusterSpecifier().(*RouteAction_WeightedClusters); ok {
1234		return x.WeightedClusters
1235	}
1236	return nil
1237}
1238
1239func (m *RouteAction) GetClusterNotFoundResponseCode() RouteAction_ClusterNotFoundResponseCode {
1240	if m != nil {
1241		return m.ClusterNotFoundResponseCode
1242	}
1243	return RouteAction_SERVICE_UNAVAILABLE
1244}
1245
1246func (m *RouteAction) GetMetadataMatch() *core.Metadata {
1247	if m != nil {
1248		return m.MetadataMatch
1249	}
1250	return nil
1251}
1252
1253func (m *RouteAction) GetPrefixRewrite() string {
1254	if m != nil {
1255		return m.PrefixRewrite
1256	}
1257	return ""
1258}
1259
1260func (m *RouteAction) GetRegexRewrite() *matcher.RegexMatchAndSubstitute {
1261	if m != nil {
1262		return m.RegexRewrite
1263	}
1264	return nil
1265}
1266
1267type isRouteAction_HostRewriteSpecifier interface {
1268	isRouteAction_HostRewriteSpecifier()
1269}
1270
1271type RouteAction_HostRewrite struct {
1272	HostRewrite string `protobuf:"bytes,6,opt,name=host_rewrite,json=hostRewrite,proto3,oneof"`
1273}
1274
1275type RouteAction_AutoHostRewrite struct {
1276	AutoHostRewrite *wrappers.BoolValue `protobuf:"bytes,7,opt,name=auto_host_rewrite,json=autoHostRewrite,proto3,oneof"`
1277}
1278
1279type RouteAction_AutoHostRewriteHeader struct {
1280	AutoHostRewriteHeader string `protobuf:"bytes,29,opt,name=auto_host_rewrite_header,json=autoHostRewriteHeader,proto3,oneof"`
1281}
1282
1283func (*RouteAction_HostRewrite) isRouteAction_HostRewriteSpecifier() {}
1284
1285func (*RouteAction_AutoHostRewrite) isRouteAction_HostRewriteSpecifier() {}
1286
1287func (*RouteAction_AutoHostRewriteHeader) isRouteAction_HostRewriteSpecifier() {}
1288
1289func (m *RouteAction) GetHostRewriteSpecifier() isRouteAction_HostRewriteSpecifier {
1290	if m != nil {
1291		return m.HostRewriteSpecifier
1292	}
1293	return nil
1294}
1295
1296func (m *RouteAction) GetHostRewrite() string {
1297	if x, ok := m.GetHostRewriteSpecifier().(*RouteAction_HostRewrite); ok {
1298		return x.HostRewrite
1299	}
1300	return ""
1301}
1302
1303func (m *RouteAction) GetAutoHostRewrite() *wrappers.BoolValue {
1304	if x, ok := m.GetHostRewriteSpecifier().(*RouteAction_AutoHostRewrite); ok {
1305		return x.AutoHostRewrite
1306	}
1307	return nil
1308}
1309
1310func (m *RouteAction) GetAutoHostRewriteHeader() string {
1311	if x, ok := m.GetHostRewriteSpecifier().(*RouteAction_AutoHostRewriteHeader); ok {
1312		return x.AutoHostRewriteHeader
1313	}
1314	return ""
1315}
1316
1317func (m *RouteAction) GetTimeout() *duration.Duration {
1318	if m != nil {
1319		return m.Timeout
1320	}
1321	return nil
1322}
1323
1324func (m *RouteAction) GetIdleTimeout() *duration.Duration {
1325	if m != nil {
1326		return m.IdleTimeout
1327	}
1328	return nil
1329}
1330
1331func (m *RouteAction) GetRetryPolicy() *RetryPolicy {
1332	if m != nil {
1333		return m.RetryPolicy
1334	}
1335	return nil
1336}
1337
1338func (m *RouteAction) GetRetryPolicyTypedConfig() *any.Any {
1339	if m != nil {
1340		return m.RetryPolicyTypedConfig
1341	}
1342	return nil
1343}
1344
1345// Deprecated: Do not use.
1346func (m *RouteAction) GetRequestMirrorPolicy() *RouteAction_RequestMirrorPolicy {
1347	if m != nil {
1348		return m.RequestMirrorPolicy
1349	}
1350	return nil
1351}
1352
1353func (m *RouteAction) GetRequestMirrorPolicies() []*RouteAction_RequestMirrorPolicy {
1354	if m != nil {
1355		return m.RequestMirrorPolicies
1356	}
1357	return nil
1358}
1359
1360func (m *RouteAction) GetPriority() core.RoutingPriority {
1361	if m != nil {
1362		return m.Priority
1363	}
1364	return core.RoutingPriority_DEFAULT
1365}
1366
1367func (m *RouteAction) GetRateLimits() []*RateLimit {
1368	if m != nil {
1369		return m.RateLimits
1370	}
1371	return nil
1372}
1373
1374func (m *RouteAction) GetIncludeVhRateLimits() *wrappers.BoolValue {
1375	if m != nil {
1376		return m.IncludeVhRateLimits
1377	}
1378	return nil
1379}
1380
1381func (m *RouteAction) GetHashPolicy() []*RouteAction_HashPolicy {
1382	if m != nil {
1383		return m.HashPolicy
1384	}
1385	return nil
1386}
1387
1388func (m *RouteAction) GetCors() *CorsPolicy {
1389	if m != nil {
1390		return m.Cors
1391	}
1392	return nil
1393}
1394
1395func (m *RouteAction) GetMaxGrpcTimeout() *duration.Duration {
1396	if m != nil {
1397		return m.MaxGrpcTimeout
1398	}
1399	return nil
1400}
1401
1402func (m *RouteAction) GetGrpcTimeoutOffset() *duration.Duration {
1403	if m != nil {
1404		return m.GrpcTimeoutOffset
1405	}
1406	return nil
1407}
1408
1409func (m *RouteAction) GetUpgradeConfigs() []*RouteAction_UpgradeConfig {
1410	if m != nil {
1411		return m.UpgradeConfigs
1412	}
1413	return nil
1414}
1415
1416func (m *RouteAction) GetInternalRedirectAction() RouteAction_InternalRedirectAction {
1417	if m != nil {
1418		return m.InternalRedirectAction
1419	}
1420	return RouteAction_PASS_THROUGH_INTERNAL_REDIRECT
1421}
1422
1423func (m *RouteAction) GetMaxInternalRedirects() *wrappers.UInt32Value {
1424	if m != nil {
1425		return m.MaxInternalRedirects
1426	}
1427	return nil
1428}
1429
1430func (m *RouteAction) GetHedgePolicy() *HedgePolicy {
1431	if m != nil {
1432		return m.HedgePolicy
1433	}
1434	return nil
1435}
1436
1437// XXX_OneofWrappers is for the internal use of the proto package.
1438func (*RouteAction) XXX_OneofWrappers() []interface{} {
1439	return []interface{}{
1440		(*RouteAction_Cluster)(nil),
1441		(*RouteAction_ClusterHeader)(nil),
1442		(*RouteAction_WeightedClusters)(nil),
1443		(*RouteAction_HostRewrite)(nil),
1444		(*RouteAction_AutoHostRewrite)(nil),
1445		(*RouteAction_AutoHostRewriteHeader)(nil),
1446	}
1447}
1448
1449type RouteAction_RequestMirrorPolicy struct {
1450	Cluster              string                         `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"`
1451	RuntimeKey           string                         `protobuf:"bytes,2,opt,name=runtime_key,json=runtimeKey,proto3" json:"runtime_key,omitempty"` // Deprecated: Do not use.
1452	RuntimeFraction      *core.RuntimeFractionalPercent `protobuf:"bytes,3,opt,name=runtime_fraction,json=runtimeFraction,proto3" json:"runtime_fraction,omitempty"`
1453	TraceSampled         *wrappers.BoolValue            `protobuf:"bytes,4,opt,name=trace_sampled,json=traceSampled,proto3" json:"trace_sampled,omitempty"`
1454	XXX_NoUnkeyedLiteral struct{}                       `json:"-"`
1455	XXX_unrecognized     []byte                         `json:"-"`
1456	XXX_sizecache        int32                          `json:"-"`
1457}
1458
1459func (m *RouteAction_RequestMirrorPolicy) Reset()         { *m = RouteAction_RequestMirrorPolicy{} }
1460func (m *RouteAction_RequestMirrorPolicy) String() string { return proto.CompactTextString(m) }
1461func (*RouteAction_RequestMirrorPolicy) ProtoMessage()    {}
1462func (*RouteAction_RequestMirrorPolicy) Descriptor() ([]byte, []int) {
1463	return fileDescriptor_a23c550601a0f392, []int{6, 0}
1464}
1465
1466func (m *RouteAction_RequestMirrorPolicy) XXX_Unmarshal(b []byte) error {
1467	return xxx_messageInfo_RouteAction_RequestMirrorPolicy.Unmarshal(m, b)
1468}
1469func (m *RouteAction_RequestMirrorPolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1470	return xxx_messageInfo_RouteAction_RequestMirrorPolicy.Marshal(b, m, deterministic)
1471}
1472func (m *RouteAction_RequestMirrorPolicy) XXX_Merge(src proto.Message) {
1473	xxx_messageInfo_RouteAction_RequestMirrorPolicy.Merge(m, src)
1474}
1475func (m *RouteAction_RequestMirrorPolicy) XXX_Size() int {
1476	return xxx_messageInfo_RouteAction_RequestMirrorPolicy.Size(m)
1477}
1478func (m *RouteAction_RequestMirrorPolicy) XXX_DiscardUnknown() {
1479	xxx_messageInfo_RouteAction_RequestMirrorPolicy.DiscardUnknown(m)
1480}
1481
1482var xxx_messageInfo_RouteAction_RequestMirrorPolicy proto.InternalMessageInfo
1483
1484func (m *RouteAction_RequestMirrorPolicy) GetCluster() string {
1485	if m != nil {
1486		return m.Cluster
1487	}
1488	return ""
1489}
1490
1491// Deprecated: Do not use.
1492func (m *RouteAction_RequestMirrorPolicy) GetRuntimeKey() string {
1493	if m != nil {
1494		return m.RuntimeKey
1495	}
1496	return ""
1497}
1498
1499func (m *RouteAction_RequestMirrorPolicy) GetRuntimeFraction() *core.RuntimeFractionalPercent {
1500	if m != nil {
1501		return m.RuntimeFraction
1502	}
1503	return nil
1504}
1505
1506func (m *RouteAction_RequestMirrorPolicy) GetTraceSampled() *wrappers.BoolValue {
1507	if m != nil {
1508		return m.TraceSampled
1509	}
1510	return nil
1511}
1512
1513type RouteAction_HashPolicy struct {
1514	// Types that are valid to be assigned to PolicySpecifier:
1515	//	*RouteAction_HashPolicy_Header_
1516	//	*RouteAction_HashPolicy_Cookie_
1517	//	*RouteAction_HashPolicy_ConnectionProperties_
1518	//	*RouteAction_HashPolicy_QueryParameter_
1519	//	*RouteAction_HashPolicy_FilterState_
1520	PolicySpecifier      isRouteAction_HashPolicy_PolicySpecifier `protobuf_oneof:"policy_specifier"`
1521	Terminal             bool                                     `protobuf:"varint,4,opt,name=terminal,proto3" json:"terminal,omitempty"`
1522	XXX_NoUnkeyedLiteral struct{}                                 `json:"-"`
1523	XXX_unrecognized     []byte                                   `json:"-"`
1524	XXX_sizecache        int32                                    `json:"-"`
1525}
1526
1527func (m *RouteAction_HashPolicy) Reset()         { *m = RouteAction_HashPolicy{} }
1528func (m *RouteAction_HashPolicy) String() string { return proto.CompactTextString(m) }
1529func (*RouteAction_HashPolicy) ProtoMessage()    {}
1530func (*RouteAction_HashPolicy) Descriptor() ([]byte, []int) {
1531	return fileDescriptor_a23c550601a0f392, []int{6, 1}
1532}
1533
1534func (m *RouteAction_HashPolicy) XXX_Unmarshal(b []byte) error {
1535	return xxx_messageInfo_RouteAction_HashPolicy.Unmarshal(m, b)
1536}
1537func (m *RouteAction_HashPolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1538	return xxx_messageInfo_RouteAction_HashPolicy.Marshal(b, m, deterministic)
1539}
1540func (m *RouteAction_HashPolicy) XXX_Merge(src proto.Message) {
1541	xxx_messageInfo_RouteAction_HashPolicy.Merge(m, src)
1542}
1543func (m *RouteAction_HashPolicy) XXX_Size() int {
1544	return xxx_messageInfo_RouteAction_HashPolicy.Size(m)
1545}
1546func (m *RouteAction_HashPolicy) XXX_DiscardUnknown() {
1547	xxx_messageInfo_RouteAction_HashPolicy.DiscardUnknown(m)
1548}
1549
1550var xxx_messageInfo_RouteAction_HashPolicy proto.InternalMessageInfo
1551
1552type isRouteAction_HashPolicy_PolicySpecifier interface {
1553	isRouteAction_HashPolicy_PolicySpecifier()
1554}
1555
1556type RouteAction_HashPolicy_Header_ struct {
1557	Header *RouteAction_HashPolicy_Header `protobuf:"bytes,1,opt,name=header,proto3,oneof"`
1558}
1559
1560type RouteAction_HashPolicy_Cookie_ struct {
1561	Cookie *RouteAction_HashPolicy_Cookie `protobuf:"bytes,2,opt,name=cookie,proto3,oneof"`
1562}
1563
1564type RouteAction_HashPolicy_ConnectionProperties_ struct {
1565	ConnectionProperties *RouteAction_HashPolicy_ConnectionProperties `protobuf:"bytes,3,opt,name=connection_properties,json=connectionProperties,proto3,oneof"`
1566}
1567
1568type RouteAction_HashPolicy_QueryParameter_ struct {
1569	QueryParameter *RouteAction_HashPolicy_QueryParameter `protobuf:"bytes,5,opt,name=query_parameter,json=queryParameter,proto3,oneof"`
1570}
1571
1572type RouteAction_HashPolicy_FilterState_ struct {
1573	FilterState *RouteAction_HashPolicy_FilterState `protobuf:"bytes,6,opt,name=filter_state,json=filterState,proto3,oneof"`
1574}
1575
1576func (*RouteAction_HashPolicy_Header_) isRouteAction_HashPolicy_PolicySpecifier() {}
1577
1578func (*RouteAction_HashPolicy_Cookie_) isRouteAction_HashPolicy_PolicySpecifier() {}
1579
1580func (*RouteAction_HashPolicy_ConnectionProperties_) isRouteAction_HashPolicy_PolicySpecifier() {}
1581
1582func (*RouteAction_HashPolicy_QueryParameter_) isRouteAction_HashPolicy_PolicySpecifier() {}
1583
1584func (*RouteAction_HashPolicy_FilterState_) isRouteAction_HashPolicy_PolicySpecifier() {}
1585
1586func (m *RouteAction_HashPolicy) GetPolicySpecifier() isRouteAction_HashPolicy_PolicySpecifier {
1587	if m != nil {
1588		return m.PolicySpecifier
1589	}
1590	return nil
1591}
1592
1593func (m *RouteAction_HashPolicy) GetHeader() *RouteAction_HashPolicy_Header {
1594	if x, ok := m.GetPolicySpecifier().(*RouteAction_HashPolicy_Header_); ok {
1595		return x.Header
1596	}
1597	return nil
1598}
1599
1600func (m *RouteAction_HashPolicy) GetCookie() *RouteAction_HashPolicy_Cookie {
1601	if x, ok := m.GetPolicySpecifier().(*RouteAction_HashPolicy_Cookie_); ok {
1602		return x.Cookie
1603	}
1604	return nil
1605}
1606
1607func (m *RouteAction_HashPolicy) GetConnectionProperties() *RouteAction_HashPolicy_ConnectionProperties {
1608	if x, ok := m.GetPolicySpecifier().(*RouteAction_HashPolicy_ConnectionProperties_); ok {
1609		return x.ConnectionProperties
1610	}
1611	return nil
1612}
1613
1614func (m *RouteAction_HashPolicy) GetQueryParameter() *RouteAction_HashPolicy_QueryParameter {
1615	if x, ok := m.GetPolicySpecifier().(*RouteAction_HashPolicy_QueryParameter_); ok {
1616		return x.QueryParameter
1617	}
1618	return nil
1619}
1620
1621func (m *RouteAction_HashPolicy) GetFilterState() *RouteAction_HashPolicy_FilterState {
1622	if x, ok := m.GetPolicySpecifier().(*RouteAction_HashPolicy_FilterState_); ok {
1623		return x.FilterState
1624	}
1625	return nil
1626}
1627
1628func (m *RouteAction_HashPolicy) GetTerminal() bool {
1629	if m != nil {
1630		return m.Terminal
1631	}
1632	return false
1633}
1634
1635// XXX_OneofWrappers is for the internal use of the proto package.
1636func (*RouteAction_HashPolicy) XXX_OneofWrappers() []interface{} {
1637	return []interface{}{
1638		(*RouteAction_HashPolicy_Header_)(nil),
1639		(*RouteAction_HashPolicy_Cookie_)(nil),
1640		(*RouteAction_HashPolicy_ConnectionProperties_)(nil),
1641		(*RouteAction_HashPolicy_QueryParameter_)(nil),
1642		(*RouteAction_HashPolicy_FilterState_)(nil),
1643	}
1644}
1645
1646type RouteAction_HashPolicy_Header struct {
1647	HeaderName           string   `protobuf:"bytes,1,opt,name=header_name,json=headerName,proto3" json:"header_name,omitempty"`
1648	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1649	XXX_unrecognized     []byte   `json:"-"`
1650	XXX_sizecache        int32    `json:"-"`
1651}
1652
1653func (m *RouteAction_HashPolicy_Header) Reset()         { *m = RouteAction_HashPolicy_Header{} }
1654func (m *RouteAction_HashPolicy_Header) String() string { return proto.CompactTextString(m) }
1655func (*RouteAction_HashPolicy_Header) ProtoMessage()    {}
1656func (*RouteAction_HashPolicy_Header) Descriptor() ([]byte, []int) {
1657	return fileDescriptor_a23c550601a0f392, []int{6, 1, 0}
1658}
1659
1660func (m *RouteAction_HashPolicy_Header) XXX_Unmarshal(b []byte) error {
1661	return xxx_messageInfo_RouteAction_HashPolicy_Header.Unmarshal(m, b)
1662}
1663func (m *RouteAction_HashPolicy_Header) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1664	return xxx_messageInfo_RouteAction_HashPolicy_Header.Marshal(b, m, deterministic)
1665}
1666func (m *RouteAction_HashPolicy_Header) XXX_Merge(src proto.Message) {
1667	xxx_messageInfo_RouteAction_HashPolicy_Header.Merge(m, src)
1668}
1669func (m *RouteAction_HashPolicy_Header) XXX_Size() int {
1670	return xxx_messageInfo_RouteAction_HashPolicy_Header.Size(m)
1671}
1672func (m *RouteAction_HashPolicy_Header) XXX_DiscardUnknown() {
1673	xxx_messageInfo_RouteAction_HashPolicy_Header.DiscardUnknown(m)
1674}
1675
1676var xxx_messageInfo_RouteAction_HashPolicy_Header proto.InternalMessageInfo
1677
1678func (m *RouteAction_HashPolicy_Header) GetHeaderName() string {
1679	if m != nil {
1680		return m.HeaderName
1681	}
1682	return ""
1683}
1684
1685type RouteAction_HashPolicy_Cookie struct {
1686	Name                 string             `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
1687	Ttl                  *duration.Duration `protobuf:"bytes,2,opt,name=ttl,proto3" json:"ttl,omitempty"`
1688	Path                 string             `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
1689	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
1690	XXX_unrecognized     []byte             `json:"-"`
1691	XXX_sizecache        int32              `json:"-"`
1692}
1693
1694func (m *RouteAction_HashPolicy_Cookie) Reset()         { *m = RouteAction_HashPolicy_Cookie{} }
1695func (m *RouteAction_HashPolicy_Cookie) String() string { return proto.CompactTextString(m) }
1696func (*RouteAction_HashPolicy_Cookie) ProtoMessage()    {}
1697func (*RouteAction_HashPolicy_Cookie) Descriptor() ([]byte, []int) {
1698	return fileDescriptor_a23c550601a0f392, []int{6, 1, 1}
1699}
1700
1701func (m *RouteAction_HashPolicy_Cookie) XXX_Unmarshal(b []byte) error {
1702	return xxx_messageInfo_RouteAction_HashPolicy_Cookie.Unmarshal(m, b)
1703}
1704func (m *RouteAction_HashPolicy_Cookie) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1705	return xxx_messageInfo_RouteAction_HashPolicy_Cookie.Marshal(b, m, deterministic)
1706}
1707func (m *RouteAction_HashPolicy_Cookie) XXX_Merge(src proto.Message) {
1708	xxx_messageInfo_RouteAction_HashPolicy_Cookie.Merge(m, src)
1709}
1710func (m *RouteAction_HashPolicy_Cookie) XXX_Size() int {
1711	return xxx_messageInfo_RouteAction_HashPolicy_Cookie.Size(m)
1712}
1713func (m *RouteAction_HashPolicy_Cookie) XXX_DiscardUnknown() {
1714	xxx_messageInfo_RouteAction_HashPolicy_Cookie.DiscardUnknown(m)
1715}
1716
1717var xxx_messageInfo_RouteAction_HashPolicy_Cookie proto.InternalMessageInfo
1718
1719func (m *RouteAction_HashPolicy_Cookie) GetName() string {
1720	if m != nil {
1721		return m.Name
1722	}
1723	return ""
1724}
1725
1726func (m *RouteAction_HashPolicy_Cookie) GetTtl() *duration.Duration {
1727	if m != nil {
1728		return m.Ttl
1729	}
1730	return nil
1731}
1732
1733func (m *RouteAction_HashPolicy_Cookie) GetPath() string {
1734	if m != nil {
1735		return m.Path
1736	}
1737	return ""
1738}
1739
1740type RouteAction_HashPolicy_ConnectionProperties struct {
1741	SourceIp             bool     `protobuf:"varint,1,opt,name=source_ip,json=sourceIp,proto3" json:"source_ip,omitempty"`
1742	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1743	XXX_unrecognized     []byte   `json:"-"`
1744	XXX_sizecache        int32    `json:"-"`
1745}
1746
1747func (m *RouteAction_HashPolicy_ConnectionProperties) Reset() {
1748	*m = RouteAction_HashPolicy_ConnectionProperties{}
1749}
1750func (m *RouteAction_HashPolicy_ConnectionProperties) String() string {
1751	return proto.CompactTextString(m)
1752}
1753func (*RouteAction_HashPolicy_ConnectionProperties) ProtoMessage() {}
1754func (*RouteAction_HashPolicy_ConnectionProperties) Descriptor() ([]byte, []int) {
1755	return fileDescriptor_a23c550601a0f392, []int{6, 1, 2}
1756}
1757
1758func (m *RouteAction_HashPolicy_ConnectionProperties) XXX_Unmarshal(b []byte) error {
1759	return xxx_messageInfo_RouteAction_HashPolicy_ConnectionProperties.Unmarshal(m, b)
1760}
1761func (m *RouteAction_HashPolicy_ConnectionProperties) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1762	return xxx_messageInfo_RouteAction_HashPolicy_ConnectionProperties.Marshal(b, m, deterministic)
1763}
1764func (m *RouteAction_HashPolicy_ConnectionProperties) XXX_Merge(src proto.Message) {
1765	xxx_messageInfo_RouteAction_HashPolicy_ConnectionProperties.Merge(m, src)
1766}
1767func (m *RouteAction_HashPolicy_ConnectionProperties) XXX_Size() int {
1768	return xxx_messageInfo_RouteAction_HashPolicy_ConnectionProperties.Size(m)
1769}
1770func (m *RouteAction_HashPolicy_ConnectionProperties) XXX_DiscardUnknown() {
1771	xxx_messageInfo_RouteAction_HashPolicy_ConnectionProperties.DiscardUnknown(m)
1772}
1773
1774var xxx_messageInfo_RouteAction_HashPolicy_ConnectionProperties proto.InternalMessageInfo
1775
1776func (m *RouteAction_HashPolicy_ConnectionProperties) GetSourceIp() bool {
1777	if m != nil {
1778		return m.SourceIp
1779	}
1780	return false
1781}
1782
1783type RouteAction_HashPolicy_QueryParameter struct {
1784	Name                 string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
1785	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1786	XXX_unrecognized     []byte   `json:"-"`
1787	XXX_sizecache        int32    `json:"-"`
1788}
1789
1790func (m *RouteAction_HashPolicy_QueryParameter) Reset()         { *m = RouteAction_HashPolicy_QueryParameter{} }
1791func (m *RouteAction_HashPolicy_QueryParameter) String() string { return proto.CompactTextString(m) }
1792func (*RouteAction_HashPolicy_QueryParameter) ProtoMessage()    {}
1793func (*RouteAction_HashPolicy_QueryParameter) Descriptor() ([]byte, []int) {
1794	return fileDescriptor_a23c550601a0f392, []int{6, 1, 3}
1795}
1796
1797func (m *RouteAction_HashPolicy_QueryParameter) XXX_Unmarshal(b []byte) error {
1798	return xxx_messageInfo_RouteAction_HashPolicy_QueryParameter.Unmarshal(m, b)
1799}
1800func (m *RouteAction_HashPolicy_QueryParameter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1801	return xxx_messageInfo_RouteAction_HashPolicy_QueryParameter.Marshal(b, m, deterministic)
1802}
1803func (m *RouteAction_HashPolicy_QueryParameter) XXX_Merge(src proto.Message) {
1804	xxx_messageInfo_RouteAction_HashPolicy_QueryParameter.Merge(m, src)
1805}
1806func (m *RouteAction_HashPolicy_QueryParameter) XXX_Size() int {
1807	return xxx_messageInfo_RouteAction_HashPolicy_QueryParameter.Size(m)
1808}
1809func (m *RouteAction_HashPolicy_QueryParameter) XXX_DiscardUnknown() {
1810	xxx_messageInfo_RouteAction_HashPolicy_QueryParameter.DiscardUnknown(m)
1811}
1812
1813var xxx_messageInfo_RouteAction_HashPolicy_QueryParameter proto.InternalMessageInfo
1814
1815func (m *RouteAction_HashPolicy_QueryParameter) GetName() string {
1816	if m != nil {
1817		return m.Name
1818	}
1819	return ""
1820}
1821
1822type RouteAction_HashPolicy_FilterState struct {
1823	Key                  string   `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
1824	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1825	XXX_unrecognized     []byte   `json:"-"`
1826	XXX_sizecache        int32    `json:"-"`
1827}
1828
1829func (m *RouteAction_HashPolicy_FilterState) Reset()         { *m = RouteAction_HashPolicy_FilterState{} }
1830func (m *RouteAction_HashPolicy_FilterState) String() string { return proto.CompactTextString(m) }
1831func (*RouteAction_HashPolicy_FilterState) ProtoMessage()    {}
1832func (*RouteAction_HashPolicy_FilterState) Descriptor() ([]byte, []int) {
1833	return fileDescriptor_a23c550601a0f392, []int{6, 1, 4}
1834}
1835
1836func (m *RouteAction_HashPolicy_FilterState) XXX_Unmarshal(b []byte) error {
1837	return xxx_messageInfo_RouteAction_HashPolicy_FilterState.Unmarshal(m, b)
1838}
1839func (m *RouteAction_HashPolicy_FilterState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1840	return xxx_messageInfo_RouteAction_HashPolicy_FilterState.Marshal(b, m, deterministic)
1841}
1842func (m *RouteAction_HashPolicy_FilterState) XXX_Merge(src proto.Message) {
1843	xxx_messageInfo_RouteAction_HashPolicy_FilterState.Merge(m, src)
1844}
1845func (m *RouteAction_HashPolicy_FilterState) XXX_Size() int {
1846	return xxx_messageInfo_RouteAction_HashPolicy_FilterState.Size(m)
1847}
1848func (m *RouteAction_HashPolicy_FilterState) XXX_DiscardUnknown() {
1849	xxx_messageInfo_RouteAction_HashPolicy_FilterState.DiscardUnknown(m)
1850}
1851
1852var xxx_messageInfo_RouteAction_HashPolicy_FilterState proto.InternalMessageInfo
1853
1854func (m *RouteAction_HashPolicy_FilterState) GetKey() string {
1855	if m != nil {
1856		return m.Key
1857	}
1858	return ""
1859}
1860
1861type RouteAction_UpgradeConfig struct {
1862	UpgradeType          string              `protobuf:"bytes,1,opt,name=upgrade_type,json=upgradeType,proto3" json:"upgrade_type,omitempty"`
1863	Enabled              *wrappers.BoolValue `protobuf:"bytes,2,opt,name=enabled,proto3" json:"enabled,omitempty"`
1864	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
1865	XXX_unrecognized     []byte              `json:"-"`
1866	XXX_sizecache        int32               `json:"-"`
1867}
1868
1869func (m *RouteAction_UpgradeConfig) Reset()         { *m = RouteAction_UpgradeConfig{} }
1870func (m *RouteAction_UpgradeConfig) String() string { return proto.CompactTextString(m) }
1871func (*RouteAction_UpgradeConfig) ProtoMessage()    {}
1872func (*RouteAction_UpgradeConfig) Descriptor() ([]byte, []int) {
1873	return fileDescriptor_a23c550601a0f392, []int{6, 2}
1874}
1875
1876func (m *RouteAction_UpgradeConfig) XXX_Unmarshal(b []byte) error {
1877	return xxx_messageInfo_RouteAction_UpgradeConfig.Unmarshal(m, b)
1878}
1879func (m *RouteAction_UpgradeConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1880	return xxx_messageInfo_RouteAction_UpgradeConfig.Marshal(b, m, deterministic)
1881}
1882func (m *RouteAction_UpgradeConfig) XXX_Merge(src proto.Message) {
1883	xxx_messageInfo_RouteAction_UpgradeConfig.Merge(m, src)
1884}
1885func (m *RouteAction_UpgradeConfig) XXX_Size() int {
1886	return xxx_messageInfo_RouteAction_UpgradeConfig.Size(m)
1887}
1888func (m *RouteAction_UpgradeConfig) XXX_DiscardUnknown() {
1889	xxx_messageInfo_RouteAction_UpgradeConfig.DiscardUnknown(m)
1890}
1891
1892var xxx_messageInfo_RouteAction_UpgradeConfig proto.InternalMessageInfo
1893
1894func (m *RouteAction_UpgradeConfig) GetUpgradeType() string {
1895	if m != nil {
1896		return m.UpgradeType
1897	}
1898	return ""
1899}
1900
1901func (m *RouteAction_UpgradeConfig) GetEnabled() *wrappers.BoolValue {
1902	if m != nil {
1903		return m.Enabled
1904	}
1905	return nil
1906}
1907
1908type RetryPolicy struct {
1909	RetryOn                       string                            `protobuf:"bytes,1,opt,name=retry_on,json=retryOn,proto3" json:"retry_on,omitempty"`
1910	NumRetries                    *wrappers.UInt32Value             `protobuf:"bytes,2,opt,name=num_retries,json=numRetries,proto3" json:"num_retries,omitempty"`
1911	PerTryTimeout                 *duration.Duration                `protobuf:"bytes,3,opt,name=per_try_timeout,json=perTryTimeout,proto3" json:"per_try_timeout,omitempty"`
1912	RetryPriority                 *RetryPolicy_RetryPriority        `protobuf:"bytes,4,opt,name=retry_priority,json=retryPriority,proto3" json:"retry_priority,omitempty"`
1913	RetryHostPredicate            []*RetryPolicy_RetryHostPredicate `protobuf:"bytes,5,rep,name=retry_host_predicate,json=retryHostPredicate,proto3" json:"retry_host_predicate,omitempty"`
1914	HostSelectionRetryMaxAttempts int64                             `protobuf:"varint,6,opt,name=host_selection_retry_max_attempts,json=hostSelectionRetryMaxAttempts,proto3" json:"host_selection_retry_max_attempts,omitempty"`
1915	RetriableStatusCodes          []uint32                          `protobuf:"varint,7,rep,packed,name=retriable_status_codes,json=retriableStatusCodes,proto3" json:"retriable_status_codes,omitempty"`
1916	RetryBackOff                  *RetryPolicy_RetryBackOff         `protobuf:"bytes,8,opt,name=retry_back_off,json=retryBackOff,proto3" json:"retry_back_off,omitempty"`
1917	RetriableHeaders              []*HeaderMatcher                  `protobuf:"bytes,9,rep,name=retriable_headers,json=retriableHeaders,proto3" json:"retriable_headers,omitempty"`
1918	RetriableRequestHeaders       []*HeaderMatcher                  `protobuf:"bytes,10,rep,name=retriable_request_headers,json=retriableRequestHeaders,proto3" json:"retriable_request_headers,omitempty"`
1919	XXX_NoUnkeyedLiteral          struct{}                          `json:"-"`
1920	XXX_unrecognized              []byte                            `json:"-"`
1921	XXX_sizecache                 int32                             `json:"-"`
1922}
1923
1924func (m *RetryPolicy) Reset()         { *m = RetryPolicy{} }
1925func (m *RetryPolicy) String() string { return proto.CompactTextString(m) }
1926func (*RetryPolicy) ProtoMessage()    {}
1927func (*RetryPolicy) Descriptor() ([]byte, []int) {
1928	return fileDescriptor_a23c550601a0f392, []int{7}
1929}
1930
1931func (m *RetryPolicy) XXX_Unmarshal(b []byte) error {
1932	return xxx_messageInfo_RetryPolicy.Unmarshal(m, b)
1933}
1934func (m *RetryPolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1935	return xxx_messageInfo_RetryPolicy.Marshal(b, m, deterministic)
1936}
1937func (m *RetryPolicy) XXX_Merge(src proto.Message) {
1938	xxx_messageInfo_RetryPolicy.Merge(m, src)
1939}
1940func (m *RetryPolicy) XXX_Size() int {
1941	return xxx_messageInfo_RetryPolicy.Size(m)
1942}
1943func (m *RetryPolicy) XXX_DiscardUnknown() {
1944	xxx_messageInfo_RetryPolicy.DiscardUnknown(m)
1945}
1946
1947var xxx_messageInfo_RetryPolicy proto.InternalMessageInfo
1948
1949func (m *RetryPolicy) GetRetryOn() string {
1950	if m != nil {
1951		return m.RetryOn
1952	}
1953	return ""
1954}
1955
1956func (m *RetryPolicy) GetNumRetries() *wrappers.UInt32Value {
1957	if m != nil {
1958		return m.NumRetries
1959	}
1960	return nil
1961}
1962
1963func (m *RetryPolicy) GetPerTryTimeout() *duration.Duration {
1964	if m != nil {
1965		return m.PerTryTimeout
1966	}
1967	return nil
1968}
1969
1970func (m *RetryPolicy) GetRetryPriority() *RetryPolicy_RetryPriority {
1971	if m != nil {
1972		return m.RetryPriority
1973	}
1974	return nil
1975}
1976
1977func (m *RetryPolicy) GetRetryHostPredicate() []*RetryPolicy_RetryHostPredicate {
1978	if m != nil {
1979		return m.RetryHostPredicate
1980	}
1981	return nil
1982}
1983
1984func (m *RetryPolicy) GetHostSelectionRetryMaxAttempts() int64 {
1985	if m != nil {
1986		return m.HostSelectionRetryMaxAttempts
1987	}
1988	return 0
1989}
1990
1991func (m *RetryPolicy) GetRetriableStatusCodes() []uint32 {
1992	if m != nil {
1993		return m.RetriableStatusCodes
1994	}
1995	return nil
1996}
1997
1998func (m *RetryPolicy) GetRetryBackOff() *RetryPolicy_RetryBackOff {
1999	if m != nil {
2000		return m.RetryBackOff
2001	}
2002	return nil
2003}
2004
2005func (m *RetryPolicy) GetRetriableHeaders() []*HeaderMatcher {
2006	if m != nil {
2007		return m.RetriableHeaders
2008	}
2009	return nil
2010}
2011
2012func (m *RetryPolicy) GetRetriableRequestHeaders() []*HeaderMatcher {
2013	if m != nil {
2014		return m.RetriableRequestHeaders
2015	}
2016	return nil
2017}
2018
2019type RetryPolicy_RetryPriority struct {
2020	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
2021	// Types that are valid to be assigned to ConfigType:
2022	//	*RetryPolicy_RetryPriority_Config
2023	//	*RetryPolicy_RetryPriority_TypedConfig
2024	ConfigType           isRetryPolicy_RetryPriority_ConfigType `protobuf_oneof:"config_type"`
2025	XXX_NoUnkeyedLiteral struct{}                               `json:"-"`
2026	XXX_unrecognized     []byte                                 `json:"-"`
2027	XXX_sizecache        int32                                  `json:"-"`
2028}
2029
2030func (m *RetryPolicy_RetryPriority) Reset()         { *m = RetryPolicy_RetryPriority{} }
2031func (m *RetryPolicy_RetryPriority) String() string { return proto.CompactTextString(m) }
2032func (*RetryPolicy_RetryPriority) ProtoMessage()    {}
2033func (*RetryPolicy_RetryPriority) Descriptor() ([]byte, []int) {
2034	return fileDescriptor_a23c550601a0f392, []int{7, 0}
2035}
2036
2037func (m *RetryPolicy_RetryPriority) XXX_Unmarshal(b []byte) error {
2038	return xxx_messageInfo_RetryPolicy_RetryPriority.Unmarshal(m, b)
2039}
2040func (m *RetryPolicy_RetryPriority) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2041	return xxx_messageInfo_RetryPolicy_RetryPriority.Marshal(b, m, deterministic)
2042}
2043func (m *RetryPolicy_RetryPriority) XXX_Merge(src proto.Message) {
2044	xxx_messageInfo_RetryPolicy_RetryPriority.Merge(m, src)
2045}
2046func (m *RetryPolicy_RetryPriority) XXX_Size() int {
2047	return xxx_messageInfo_RetryPolicy_RetryPriority.Size(m)
2048}
2049func (m *RetryPolicy_RetryPriority) XXX_DiscardUnknown() {
2050	xxx_messageInfo_RetryPolicy_RetryPriority.DiscardUnknown(m)
2051}
2052
2053var xxx_messageInfo_RetryPolicy_RetryPriority proto.InternalMessageInfo
2054
2055func (m *RetryPolicy_RetryPriority) GetName() string {
2056	if m != nil {
2057		return m.Name
2058	}
2059	return ""
2060}
2061
2062type isRetryPolicy_RetryPriority_ConfigType interface {
2063	isRetryPolicy_RetryPriority_ConfigType()
2064}
2065
2066type RetryPolicy_RetryPriority_Config struct {
2067	Config *_struct.Struct `protobuf:"bytes,2,opt,name=config,proto3,oneof"`
2068}
2069
2070type RetryPolicy_RetryPriority_TypedConfig struct {
2071	TypedConfig *any.Any `protobuf:"bytes,3,opt,name=typed_config,json=typedConfig,proto3,oneof"`
2072}
2073
2074func (*RetryPolicy_RetryPriority_Config) isRetryPolicy_RetryPriority_ConfigType() {}
2075
2076func (*RetryPolicy_RetryPriority_TypedConfig) isRetryPolicy_RetryPriority_ConfigType() {}
2077
2078func (m *RetryPolicy_RetryPriority) GetConfigType() isRetryPolicy_RetryPriority_ConfigType {
2079	if m != nil {
2080		return m.ConfigType
2081	}
2082	return nil
2083}
2084
2085// Deprecated: Do not use.
2086func (m *RetryPolicy_RetryPriority) GetConfig() *_struct.Struct {
2087	if x, ok := m.GetConfigType().(*RetryPolicy_RetryPriority_Config); ok {
2088		return x.Config
2089	}
2090	return nil
2091}
2092
2093func (m *RetryPolicy_RetryPriority) GetTypedConfig() *any.Any {
2094	if x, ok := m.GetConfigType().(*RetryPolicy_RetryPriority_TypedConfig); ok {
2095		return x.TypedConfig
2096	}
2097	return nil
2098}
2099
2100// XXX_OneofWrappers is for the internal use of the proto package.
2101func (*RetryPolicy_RetryPriority) XXX_OneofWrappers() []interface{} {
2102	return []interface{}{
2103		(*RetryPolicy_RetryPriority_Config)(nil),
2104		(*RetryPolicy_RetryPriority_TypedConfig)(nil),
2105	}
2106}
2107
2108type RetryPolicy_RetryHostPredicate struct {
2109	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
2110	// Types that are valid to be assigned to ConfigType:
2111	//	*RetryPolicy_RetryHostPredicate_Config
2112	//	*RetryPolicy_RetryHostPredicate_TypedConfig
2113	ConfigType           isRetryPolicy_RetryHostPredicate_ConfigType `protobuf_oneof:"config_type"`
2114	XXX_NoUnkeyedLiteral struct{}                                    `json:"-"`
2115	XXX_unrecognized     []byte                                      `json:"-"`
2116	XXX_sizecache        int32                                       `json:"-"`
2117}
2118
2119func (m *RetryPolicy_RetryHostPredicate) Reset()         { *m = RetryPolicy_RetryHostPredicate{} }
2120func (m *RetryPolicy_RetryHostPredicate) String() string { return proto.CompactTextString(m) }
2121func (*RetryPolicy_RetryHostPredicate) ProtoMessage()    {}
2122func (*RetryPolicy_RetryHostPredicate) Descriptor() ([]byte, []int) {
2123	return fileDescriptor_a23c550601a0f392, []int{7, 1}
2124}
2125
2126func (m *RetryPolicy_RetryHostPredicate) XXX_Unmarshal(b []byte) error {
2127	return xxx_messageInfo_RetryPolicy_RetryHostPredicate.Unmarshal(m, b)
2128}
2129func (m *RetryPolicy_RetryHostPredicate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2130	return xxx_messageInfo_RetryPolicy_RetryHostPredicate.Marshal(b, m, deterministic)
2131}
2132func (m *RetryPolicy_RetryHostPredicate) XXX_Merge(src proto.Message) {
2133	xxx_messageInfo_RetryPolicy_RetryHostPredicate.Merge(m, src)
2134}
2135func (m *RetryPolicy_RetryHostPredicate) XXX_Size() int {
2136	return xxx_messageInfo_RetryPolicy_RetryHostPredicate.Size(m)
2137}
2138func (m *RetryPolicy_RetryHostPredicate) XXX_DiscardUnknown() {
2139	xxx_messageInfo_RetryPolicy_RetryHostPredicate.DiscardUnknown(m)
2140}
2141
2142var xxx_messageInfo_RetryPolicy_RetryHostPredicate proto.InternalMessageInfo
2143
2144func (m *RetryPolicy_RetryHostPredicate) GetName() string {
2145	if m != nil {
2146		return m.Name
2147	}
2148	return ""
2149}
2150
2151type isRetryPolicy_RetryHostPredicate_ConfigType interface {
2152	isRetryPolicy_RetryHostPredicate_ConfigType()
2153}
2154
2155type RetryPolicy_RetryHostPredicate_Config struct {
2156	Config *_struct.Struct `protobuf:"bytes,2,opt,name=config,proto3,oneof"`
2157}
2158
2159type RetryPolicy_RetryHostPredicate_TypedConfig struct {
2160	TypedConfig *any.Any `protobuf:"bytes,3,opt,name=typed_config,json=typedConfig,proto3,oneof"`
2161}
2162
2163func (*RetryPolicy_RetryHostPredicate_Config) isRetryPolicy_RetryHostPredicate_ConfigType() {}
2164
2165func (*RetryPolicy_RetryHostPredicate_TypedConfig) isRetryPolicy_RetryHostPredicate_ConfigType() {}
2166
2167func (m *RetryPolicy_RetryHostPredicate) GetConfigType() isRetryPolicy_RetryHostPredicate_ConfigType {
2168	if m != nil {
2169		return m.ConfigType
2170	}
2171	return nil
2172}
2173
2174// Deprecated: Do not use.
2175func (m *RetryPolicy_RetryHostPredicate) GetConfig() *_struct.Struct {
2176	if x, ok := m.GetConfigType().(*RetryPolicy_RetryHostPredicate_Config); ok {
2177		return x.Config
2178	}
2179	return nil
2180}
2181
2182func (m *RetryPolicy_RetryHostPredicate) GetTypedConfig() *any.Any {
2183	if x, ok := m.GetConfigType().(*RetryPolicy_RetryHostPredicate_TypedConfig); ok {
2184		return x.TypedConfig
2185	}
2186	return nil
2187}
2188
2189// XXX_OneofWrappers is for the internal use of the proto package.
2190func (*RetryPolicy_RetryHostPredicate) XXX_OneofWrappers() []interface{} {
2191	return []interface{}{
2192		(*RetryPolicy_RetryHostPredicate_Config)(nil),
2193		(*RetryPolicy_RetryHostPredicate_TypedConfig)(nil),
2194	}
2195}
2196
2197type RetryPolicy_RetryBackOff struct {
2198	BaseInterval         *duration.Duration `protobuf:"bytes,1,opt,name=base_interval,json=baseInterval,proto3" json:"base_interval,omitempty"`
2199	MaxInterval          *duration.Duration `protobuf:"bytes,2,opt,name=max_interval,json=maxInterval,proto3" json:"max_interval,omitempty"`
2200	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
2201	XXX_unrecognized     []byte             `json:"-"`
2202	XXX_sizecache        int32              `json:"-"`
2203}
2204
2205func (m *RetryPolicy_RetryBackOff) Reset()         { *m = RetryPolicy_RetryBackOff{} }
2206func (m *RetryPolicy_RetryBackOff) String() string { return proto.CompactTextString(m) }
2207func (*RetryPolicy_RetryBackOff) ProtoMessage()    {}
2208func (*RetryPolicy_RetryBackOff) Descriptor() ([]byte, []int) {
2209	return fileDescriptor_a23c550601a0f392, []int{7, 2}
2210}
2211
2212func (m *RetryPolicy_RetryBackOff) XXX_Unmarshal(b []byte) error {
2213	return xxx_messageInfo_RetryPolicy_RetryBackOff.Unmarshal(m, b)
2214}
2215func (m *RetryPolicy_RetryBackOff) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2216	return xxx_messageInfo_RetryPolicy_RetryBackOff.Marshal(b, m, deterministic)
2217}
2218func (m *RetryPolicy_RetryBackOff) XXX_Merge(src proto.Message) {
2219	xxx_messageInfo_RetryPolicy_RetryBackOff.Merge(m, src)
2220}
2221func (m *RetryPolicy_RetryBackOff) XXX_Size() int {
2222	return xxx_messageInfo_RetryPolicy_RetryBackOff.Size(m)
2223}
2224func (m *RetryPolicy_RetryBackOff) XXX_DiscardUnknown() {
2225	xxx_messageInfo_RetryPolicy_RetryBackOff.DiscardUnknown(m)
2226}
2227
2228var xxx_messageInfo_RetryPolicy_RetryBackOff proto.InternalMessageInfo
2229
2230func (m *RetryPolicy_RetryBackOff) GetBaseInterval() *duration.Duration {
2231	if m != nil {
2232		return m.BaseInterval
2233	}
2234	return nil
2235}
2236
2237func (m *RetryPolicy_RetryBackOff) GetMaxInterval() *duration.Duration {
2238	if m != nil {
2239		return m.MaxInterval
2240	}
2241	return nil
2242}
2243
2244type HedgePolicy struct {
2245	InitialRequests         *wrappers.UInt32Value    `protobuf:"bytes,1,opt,name=initial_requests,json=initialRequests,proto3" json:"initial_requests,omitempty"`
2246	AdditionalRequestChance *_type.FractionalPercent `protobuf:"bytes,2,opt,name=additional_request_chance,json=additionalRequestChance,proto3" json:"additional_request_chance,omitempty"`
2247	HedgeOnPerTryTimeout    bool                     `protobuf:"varint,3,opt,name=hedge_on_per_try_timeout,json=hedgeOnPerTryTimeout,proto3" json:"hedge_on_per_try_timeout,omitempty"`
2248	XXX_NoUnkeyedLiteral    struct{}                 `json:"-"`
2249	XXX_unrecognized        []byte                   `json:"-"`
2250	XXX_sizecache           int32                    `json:"-"`
2251}
2252
2253func (m *HedgePolicy) Reset()         { *m = HedgePolicy{} }
2254func (m *HedgePolicy) String() string { return proto.CompactTextString(m) }
2255func (*HedgePolicy) ProtoMessage()    {}
2256func (*HedgePolicy) Descriptor() ([]byte, []int) {
2257	return fileDescriptor_a23c550601a0f392, []int{8}
2258}
2259
2260func (m *HedgePolicy) XXX_Unmarshal(b []byte) error {
2261	return xxx_messageInfo_HedgePolicy.Unmarshal(m, b)
2262}
2263func (m *HedgePolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2264	return xxx_messageInfo_HedgePolicy.Marshal(b, m, deterministic)
2265}
2266func (m *HedgePolicy) XXX_Merge(src proto.Message) {
2267	xxx_messageInfo_HedgePolicy.Merge(m, src)
2268}
2269func (m *HedgePolicy) XXX_Size() int {
2270	return xxx_messageInfo_HedgePolicy.Size(m)
2271}
2272func (m *HedgePolicy) XXX_DiscardUnknown() {
2273	xxx_messageInfo_HedgePolicy.DiscardUnknown(m)
2274}
2275
2276var xxx_messageInfo_HedgePolicy proto.InternalMessageInfo
2277
2278func (m *HedgePolicy) GetInitialRequests() *wrappers.UInt32Value {
2279	if m != nil {
2280		return m.InitialRequests
2281	}
2282	return nil
2283}
2284
2285func (m *HedgePolicy) GetAdditionalRequestChance() *_type.FractionalPercent {
2286	if m != nil {
2287		return m.AdditionalRequestChance
2288	}
2289	return nil
2290}
2291
2292func (m *HedgePolicy) GetHedgeOnPerTryTimeout() bool {
2293	if m != nil {
2294		return m.HedgeOnPerTryTimeout
2295	}
2296	return false
2297}
2298
2299type RedirectAction struct {
2300	// Types that are valid to be assigned to SchemeRewriteSpecifier:
2301	//	*RedirectAction_HttpsRedirect
2302	//	*RedirectAction_SchemeRedirect
2303	SchemeRewriteSpecifier isRedirectAction_SchemeRewriteSpecifier `protobuf_oneof:"scheme_rewrite_specifier"`
2304	HostRedirect           string                                  `protobuf:"bytes,1,opt,name=host_redirect,json=hostRedirect,proto3" json:"host_redirect,omitempty"`
2305	PortRedirect           uint32                                  `protobuf:"varint,8,opt,name=port_redirect,json=portRedirect,proto3" json:"port_redirect,omitempty"`
2306	// Types that are valid to be assigned to PathRewriteSpecifier:
2307	//	*RedirectAction_PathRedirect
2308	//	*RedirectAction_PrefixRewrite
2309	PathRewriteSpecifier isRedirectAction_PathRewriteSpecifier `protobuf_oneof:"path_rewrite_specifier"`
2310	ResponseCode         RedirectAction_RedirectResponseCode   `protobuf:"varint,3,opt,name=response_code,json=responseCode,proto3,enum=envoy.api.v2.route.RedirectAction_RedirectResponseCode" json:"response_code,omitempty"`
2311	StripQuery           bool                                  `protobuf:"varint,6,opt,name=strip_query,json=stripQuery,proto3" json:"strip_query,omitempty"`
2312	XXX_NoUnkeyedLiteral struct{}                              `json:"-"`
2313	XXX_unrecognized     []byte                                `json:"-"`
2314	XXX_sizecache        int32                                 `json:"-"`
2315}
2316
2317func (m *RedirectAction) Reset()         { *m = RedirectAction{} }
2318func (m *RedirectAction) String() string { return proto.CompactTextString(m) }
2319func (*RedirectAction) ProtoMessage()    {}
2320func (*RedirectAction) Descriptor() ([]byte, []int) {
2321	return fileDescriptor_a23c550601a0f392, []int{9}
2322}
2323
2324func (m *RedirectAction) XXX_Unmarshal(b []byte) error {
2325	return xxx_messageInfo_RedirectAction.Unmarshal(m, b)
2326}
2327func (m *RedirectAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2328	return xxx_messageInfo_RedirectAction.Marshal(b, m, deterministic)
2329}
2330func (m *RedirectAction) XXX_Merge(src proto.Message) {
2331	xxx_messageInfo_RedirectAction.Merge(m, src)
2332}
2333func (m *RedirectAction) XXX_Size() int {
2334	return xxx_messageInfo_RedirectAction.Size(m)
2335}
2336func (m *RedirectAction) XXX_DiscardUnknown() {
2337	xxx_messageInfo_RedirectAction.DiscardUnknown(m)
2338}
2339
2340var xxx_messageInfo_RedirectAction proto.InternalMessageInfo
2341
2342type isRedirectAction_SchemeRewriteSpecifier interface {
2343	isRedirectAction_SchemeRewriteSpecifier()
2344}
2345
2346type RedirectAction_HttpsRedirect struct {
2347	HttpsRedirect bool `protobuf:"varint,4,opt,name=https_redirect,json=httpsRedirect,proto3,oneof"`
2348}
2349
2350type RedirectAction_SchemeRedirect struct {
2351	SchemeRedirect string `protobuf:"bytes,7,opt,name=scheme_redirect,json=schemeRedirect,proto3,oneof"`
2352}
2353
2354func (*RedirectAction_HttpsRedirect) isRedirectAction_SchemeRewriteSpecifier() {}
2355
2356func (*RedirectAction_SchemeRedirect) isRedirectAction_SchemeRewriteSpecifier() {}
2357
2358func (m *RedirectAction) GetSchemeRewriteSpecifier() isRedirectAction_SchemeRewriteSpecifier {
2359	if m != nil {
2360		return m.SchemeRewriteSpecifier
2361	}
2362	return nil
2363}
2364
2365func (m *RedirectAction) GetHttpsRedirect() bool {
2366	if x, ok := m.GetSchemeRewriteSpecifier().(*RedirectAction_HttpsRedirect); ok {
2367		return x.HttpsRedirect
2368	}
2369	return false
2370}
2371
2372func (m *RedirectAction) GetSchemeRedirect() string {
2373	if x, ok := m.GetSchemeRewriteSpecifier().(*RedirectAction_SchemeRedirect); ok {
2374		return x.SchemeRedirect
2375	}
2376	return ""
2377}
2378
2379func (m *RedirectAction) GetHostRedirect() string {
2380	if m != nil {
2381		return m.HostRedirect
2382	}
2383	return ""
2384}
2385
2386func (m *RedirectAction) GetPortRedirect() uint32 {
2387	if m != nil {
2388		return m.PortRedirect
2389	}
2390	return 0
2391}
2392
2393type isRedirectAction_PathRewriteSpecifier interface {
2394	isRedirectAction_PathRewriteSpecifier()
2395}
2396
2397type RedirectAction_PathRedirect struct {
2398	PathRedirect string `protobuf:"bytes,2,opt,name=path_redirect,json=pathRedirect,proto3,oneof"`
2399}
2400
2401type RedirectAction_PrefixRewrite struct {
2402	PrefixRewrite string `protobuf:"bytes,5,opt,name=prefix_rewrite,json=prefixRewrite,proto3,oneof"`
2403}
2404
2405func (*RedirectAction_PathRedirect) isRedirectAction_PathRewriteSpecifier() {}
2406
2407func (*RedirectAction_PrefixRewrite) isRedirectAction_PathRewriteSpecifier() {}
2408
2409func (m *RedirectAction) GetPathRewriteSpecifier() isRedirectAction_PathRewriteSpecifier {
2410	if m != nil {
2411		return m.PathRewriteSpecifier
2412	}
2413	return nil
2414}
2415
2416func (m *RedirectAction) GetPathRedirect() string {
2417	if x, ok := m.GetPathRewriteSpecifier().(*RedirectAction_PathRedirect); ok {
2418		return x.PathRedirect
2419	}
2420	return ""
2421}
2422
2423func (m *RedirectAction) GetPrefixRewrite() string {
2424	if x, ok := m.GetPathRewriteSpecifier().(*RedirectAction_PrefixRewrite); ok {
2425		return x.PrefixRewrite
2426	}
2427	return ""
2428}
2429
2430func (m *RedirectAction) GetResponseCode() RedirectAction_RedirectResponseCode {
2431	if m != nil {
2432		return m.ResponseCode
2433	}
2434	return RedirectAction_MOVED_PERMANENTLY
2435}
2436
2437func (m *RedirectAction) GetStripQuery() bool {
2438	if m != nil {
2439		return m.StripQuery
2440	}
2441	return false
2442}
2443
2444// XXX_OneofWrappers is for the internal use of the proto package.
2445func (*RedirectAction) XXX_OneofWrappers() []interface{} {
2446	return []interface{}{
2447		(*RedirectAction_HttpsRedirect)(nil),
2448		(*RedirectAction_SchemeRedirect)(nil),
2449		(*RedirectAction_PathRedirect)(nil),
2450		(*RedirectAction_PrefixRewrite)(nil),
2451	}
2452}
2453
2454type DirectResponseAction struct {
2455	Status               uint32           `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
2456	Body                 *core.DataSource `protobuf:"bytes,2,opt,name=body,proto3" json:"body,omitempty"`
2457	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
2458	XXX_unrecognized     []byte           `json:"-"`
2459	XXX_sizecache        int32            `json:"-"`
2460}
2461
2462func (m *DirectResponseAction) Reset()         { *m = DirectResponseAction{} }
2463func (m *DirectResponseAction) String() string { return proto.CompactTextString(m) }
2464func (*DirectResponseAction) ProtoMessage()    {}
2465func (*DirectResponseAction) Descriptor() ([]byte, []int) {
2466	return fileDescriptor_a23c550601a0f392, []int{10}
2467}
2468
2469func (m *DirectResponseAction) XXX_Unmarshal(b []byte) error {
2470	return xxx_messageInfo_DirectResponseAction.Unmarshal(m, b)
2471}
2472func (m *DirectResponseAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2473	return xxx_messageInfo_DirectResponseAction.Marshal(b, m, deterministic)
2474}
2475func (m *DirectResponseAction) XXX_Merge(src proto.Message) {
2476	xxx_messageInfo_DirectResponseAction.Merge(m, src)
2477}
2478func (m *DirectResponseAction) XXX_Size() int {
2479	return xxx_messageInfo_DirectResponseAction.Size(m)
2480}
2481func (m *DirectResponseAction) XXX_DiscardUnknown() {
2482	xxx_messageInfo_DirectResponseAction.DiscardUnknown(m)
2483}
2484
2485var xxx_messageInfo_DirectResponseAction proto.InternalMessageInfo
2486
2487func (m *DirectResponseAction) GetStatus() uint32 {
2488	if m != nil {
2489		return m.Status
2490	}
2491	return 0
2492}
2493
2494func (m *DirectResponseAction) GetBody() *core.DataSource {
2495	if m != nil {
2496		return m.Body
2497	}
2498	return nil
2499}
2500
2501type Decorator struct {
2502	Operation            string              `protobuf:"bytes,1,opt,name=operation,proto3" json:"operation,omitempty"`
2503	Propagate            *wrappers.BoolValue `protobuf:"bytes,2,opt,name=propagate,proto3" json:"propagate,omitempty"`
2504	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
2505	XXX_unrecognized     []byte              `json:"-"`
2506	XXX_sizecache        int32               `json:"-"`
2507}
2508
2509func (m *Decorator) Reset()         { *m = Decorator{} }
2510func (m *Decorator) String() string { return proto.CompactTextString(m) }
2511func (*Decorator) ProtoMessage()    {}
2512func (*Decorator) Descriptor() ([]byte, []int) {
2513	return fileDescriptor_a23c550601a0f392, []int{11}
2514}
2515
2516func (m *Decorator) XXX_Unmarshal(b []byte) error {
2517	return xxx_messageInfo_Decorator.Unmarshal(m, b)
2518}
2519func (m *Decorator) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2520	return xxx_messageInfo_Decorator.Marshal(b, m, deterministic)
2521}
2522func (m *Decorator) XXX_Merge(src proto.Message) {
2523	xxx_messageInfo_Decorator.Merge(m, src)
2524}
2525func (m *Decorator) XXX_Size() int {
2526	return xxx_messageInfo_Decorator.Size(m)
2527}
2528func (m *Decorator) XXX_DiscardUnknown() {
2529	xxx_messageInfo_Decorator.DiscardUnknown(m)
2530}
2531
2532var xxx_messageInfo_Decorator proto.InternalMessageInfo
2533
2534func (m *Decorator) GetOperation() string {
2535	if m != nil {
2536		return m.Operation
2537	}
2538	return ""
2539}
2540
2541func (m *Decorator) GetPropagate() *wrappers.BoolValue {
2542	if m != nil {
2543		return m.Propagate
2544	}
2545	return nil
2546}
2547
2548type Tracing struct {
2549	ClientSampling       *_type.FractionalPercent `protobuf:"bytes,1,opt,name=client_sampling,json=clientSampling,proto3" json:"client_sampling,omitempty"`
2550	RandomSampling       *_type.FractionalPercent `protobuf:"bytes,2,opt,name=random_sampling,json=randomSampling,proto3" json:"random_sampling,omitempty"`
2551	OverallSampling      *_type.FractionalPercent `protobuf:"bytes,3,opt,name=overall_sampling,json=overallSampling,proto3" json:"overall_sampling,omitempty"`
2552	CustomTags           []*v2.CustomTag          `protobuf:"bytes,4,rep,name=custom_tags,json=customTags,proto3" json:"custom_tags,omitempty"`
2553	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
2554	XXX_unrecognized     []byte                   `json:"-"`
2555	XXX_sizecache        int32                    `json:"-"`
2556}
2557
2558func (m *Tracing) Reset()         { *m = Tracing{} }
2559func (m *Tracing) String() string { return proto.CompactTextString(m) }
2560func (*Tracing) ProtoMessage()    {}
2561func (*Tracing) Descriptor() ([]byte, []int) {
2562	return fileDescriptor_a23c550601a0f392, []int{12}
2563}
2564
2565func (m *Tracing) XXX_Unmarshal(b []byte) error {
2566	return xxx_messageInfo_Tracing.Unmarshal(m, b)
2567}
2568func (m *Tracing) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2569	return xxx_messageInfo_Tracing.Marshal(b, m, deterministic)
2570}
2571func (m *Tracing) XXX_Merge(src proto.Message) {
2572	xxx_messageInfo_Tracing.Merge(m, src)
2573}
2574func (m *Tracing) XXX_Size() int {
2575	return xxx_messageInfo_Tracing.Size(m)
2576}
2577func (m *Tracing) XXX_DiscardUnknown() {
2578	xxx_messageInfo_Tracing.DiscardUnknown(m)
2579}
2580
2581var xxx_messageInfo_Tracing proto.InternalMessageInfo
2582
2583func (m *Tracing) GetClientSampling() *_type.FractionalPercent {
2584	if m != nil {
2585		return m.ClientSampling
2586	}
2587	return nil
2588}
2589
2590func (m *Tracing) GetRandomSampling() *_type.FractionalPercent {
2591	if m != nil {
2592		return m.RandomSampling
2593	}
2594	return nil
2595}
2596
2597func (m *Tracing) GetOverallSampling() *_type.FractionalPercent {
2598	if m != nil {
2599		return m.OverallSampling
2600	}
2601	return nil
2602}
2603
2604func (m *Tracing) GetCustomTags() []*v2.CustomTag {
2605	if m != nil {
2606		return m.CustomTags
2607	}
2608	return nil
2609}
2610
2611type VirtualCluster struct {
2612	Pattern              string             `protobuf:"bytes,1,opt,name=pattern,proto3" json:"pattern,omitempty"` // Deprecated: Do not use.
2613	Headers              []*HeaderMatcher   `protobuf:"bytes,4,rep,name=headers,proto3" json:"headers,omitempty"`
2614	Name                 string             `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
2615	Method               core.RequestMethod `protobuf:"varint,3,opt,name=method,proto3,enum=envoy.api.v2.core.RequestMethod" json:"method,omitempty"` // Deprecated: Do not use.
2616	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
2617	XXX_unrecognized     []byte             `json:"-"`
2618	XXX_sizecache        int32              `json:"-"`
2619}
2620
2621func (m *VirtualCluster) Reset()         { *m = VirtualCluster{} }
2622func (m *VirtualCluster) String() string { return proto.CompactTextString(m) }
2623func (*VirtualCluster) ProtoMessage()    {}
2624func (*VirtualCluster) Descriptor() ([]byte, []int) {
2625	return fileDescriptor_a23c550601a0f392, []int{13}
2626}
2627
2628func (m *VirtualCluster) XXX_Unmarshal(b []byte) error {
2629	return xxx_messageInfo_VirtualCluster.Unmarshal(m, b)
2630}
2631func (m *VirtualCluster) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2632	return xxx_messageInfo_VirtualCluster.Marshal(b, m, deterministic)
2633}
2634func (m *VirtualCluster) XXX_Merge(src proto.Message) {
2635	xxx_messageInfo_VirtualCluster.Merge(m, src)
2636}
2637func (m *VirtualCluster) XXX_Size() int {
2638	return xxx_messageInfo_VirtualCluster.Size(m)
2639}
2640func (m *VirtualCluster) XXX_DiscardUnknown() {
2641	xxx_messageInfo_VirtualCluster.DiscardUnknown(m)
2642}
2643
2644var xxx_messageInfo_VirtualCluster proto.InternalMessageInfo
2645
2646// Deprecated: Do not use.
2647func (m *VirtualCluster) GetPattern() string {
2648	if m != nil {
2649		return m.Pattern
2650	}
2651	return ""
2652}
2653
2654func (m *VirtualCluster) GetHeaders() []*HeaderMatcher {
2655	if m != nil {
2656		return m.Headers
2657	}
2658	return nil
2659}
2660
2661func (m *VirtualCluster) GetName() string {
2662	if m != nil {
2663		return m.Name
2664	}
2665	return ""
2666}
2667
2668// Deprecated: Do not use.
2669func (m *VirtualCluster) GetMethod() core.RequestMethod {
2670	if m != nil {
2671		return m.Method
2672	}
2673	return core.RequestMethod_METHOD_UNSPECIFIED
2674}
2675
2676type RateLimit struct {
2677	Stage                *wrappers.UInt32Value `protobuf:"bytes,1,opt,name=stage,proto3" json:"stage,omitempty"`
2678	DisableKey           string                `protobuf:"bytes,2,opt,name=disable_key,json=disableKey,proto3" json:"disable_key,omitempty"`
2679	Actions              []*RateLimit_Action   `protobuf:"bytes,3,rep,name=actions,proto3" json:"actions,omitempty"`
2680	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
2681	XXX_unrecognized     []byte                `json:"-"`
2682	XXX_sizecache        int32                 `json:"-"`
2683}
2684
2685func (m *RateLimit) Reset()         { *m = RateLimit{} }
2686func (m *RateLimit) String() string { return proto.CompactTextString(m) }
2687func (*RateLimit) ProtoMessage()    {}
2688func (*RateLimit) Descriptor() ([]byte, []int) {
2689	return fileDescriptor_a23c550601a0f392, []int{14}
2690}
2691
2692func (m *RateLimit) XXX_Unmarshal(b []byte) error {
2693	return xxx_messageInfo_RateLimit.Unmarshal(m, b)
2694}
2695func (m *RateLimit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2696	return xxx_messageInfo_RateLimit.Marshal(b, m, deterministic)
2697}
2698func (m *RateLimit) XXX_Merge(src proto.Message) {
2699	xxx_messageInfo_RateLimit.Merge(m, src)
2700}
2701func (m *RateLimit) XXX_Size() int {
2702	return xxx_messageInfo_RateLimit.Size(m)
2703}
2704func (m *RateLimit) XXX_DiscardUnknown() {
2705	xxx_messageInfo_RateLimit.DiscardUnknown(m)
2706}
2707
2708var xxx_messageInfo_RateLimit proto.InternalMessageInfo
2709
2710func (m *RateLimit) GetStage() *wrappers.UInt32Value {
2711	if m != nil {
2712		return m.Stage
2713	}
2714	return nil
2715}
2716
2717func (m *RateLimit) GetDisableKey() string {
2718	if m != nil {
2719		return m.DisableKey
2720	}
2721	return ""
2722}
2723
2724func (m *RateLimit) GetActions() []*RateLimit_Action {
2725	if m != nil {
2726		return m.Actions
2727	}
2728	return nil
2729}
2730
2731type RateLimit_Action struct {
2732	// Types that are valid to be assigned to ActionSpecifier:
2733	//	*RateLimit_Action_SourceCluster_
2734	//	*RateLimit_Action_DestinationCluster_
2735	//	*RateLimit_Action_RequestHeaders_
2736	//	*RateLimit_Action_RemoteAddress_
2737	//	*RateLimit_Action_GenericKey_
2738	//	*RateLimit_Action_HeaderValueMatch_
2739	ActionSpecifier      isRateLimit_Action_ActionSpecifier `protobuf_oneof:"action_specifier"`
2740	XXX_NoUnkeyedLiteral struct{}                           `json:"-"`
2741	XXX_unrecognized     []byte                             `json:"-"`
2742	XXX_sizecache        int32                              `json:"-"`
2743}
2744
2745func (m *RateLimit_Action) Reset()         { *m = RateLimit_Action{} }
2746func (m *RateLimit_Action) String() string { return proto.CompactTextString(m) }
2747func (*RateLimit_Action) ProtoMessage()    {}
2748func (*RateLimit_Action) Descriptor() ([]byte, []int) {
2749	return fileDescriptor_a23c550601a0f392, []int{14, 0}
2750}
2751
2752func (m *RateLimit_Action) XXX_Unmarshal(b []byte) error {
2753	return xxx_messageInfo_RateLimit_Action.Unmarshal(m, b)
2754}
2755func (m *RateLimit_Action) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2756	return xxx_messageInfo_RateLimit_Action.Marshal(b, m, deterministic)
2757}
2758func (m *RateLimit_Action) XXX_Merge(src proto.Message) {
2759	xxx_messageInfo_RateLimit_Action.Merge(m, src)
2760}
2761func (m *RateLimit_Action) XXX_Size() int {
2762	return xxx_messageInfo_RateLimit_Action.Size(m)
2763}
2764func (m *RateLimit_Action) XXX_DiscardUnknown() {
2765	xxx_messageInfo_RateLimit_Action.DiscardUnknown(m)
2766}
2767
2768var xxx_messageInfo_RateLimit_Action proto.InternalMessageInfo
2769
2770type isRateLimit_Action_ActionSpecifier interface {
2771	isRateLimit_Action_ActionSpecifier()
2772}
2773
2774type RateLimit_Action_SourceCluster_ struct {
2775	SourceCluster *RateLimit_Action_SourceCluster `protobuf:"bytes,1,opt,name=source_cluster,json=sourceCluster,proto3,oneof"`
2776}
2777
2778type RateLimit_Action_DestinationCluster_ struct {
2779	DestinationCluster *RateLimit_Action_DestinationCluster `protobuf:"bytes,2,opt,name=destination_cluster,json=destinationCluster,proto3,oneof"`
2780}
2781
2782type RateLimit_Action_RequestHeaders_ struct {
2783	RequestHeaders *RateLimit_Action_RequestHeaders `protobuf:"bytes,3,opt,name=request_headers,json=requestHeaders,proto3,oneof"`
2784}
2785
2786type RateLimit_Action_RemoteAddress_ struct {
2787	RemoteAddress *RateLimit_Action_RemoteAddress `protobuf:"bytes,4,opt,name=remote_address,json=remoteAddress,proto3,oneof"`
2788}
2789
2790type RateLimit_Action_GenericKey_ struct {
2791	GenericKey *RateLimit_Action_GenericKey `protobuf:"bytes,5,opt,name=generic_key,json=genericKey,proto3,oneof"`
2792}
2793
2794type RateLimit_Action_HeaderValueMatch_ struct {
2795	HeaderValueMatch *RateLimit_Action_HeaderValueMatch `protobuf:"bytes,6,opt,name=header_value_match,json=headerValueMatch,proto3,oneof"`
2796}
2797
2798func (*RateLimit_Action_SourceCluster_) isRateLimit_Action_ActionSpecifier() {}
2799
2800func (*RateLimit_Action_DestinationCluster_) isRateLimit_Action_ActionSpecifier() {}
2801
2802func (*RateLimit_Action_RequestHeaders_) isRateLimit_Action_ActionSpecifier() {}
2803
2804func (*RateLimit_Action_RemoteAddress_) isRateLimit_Action_ActionSpecifier() {}
2805
2806func (*RateLimit_Action_GenericKey_) isRateLimit_Action_ActionSpecifier() {}
2807
2808func (*RateLimit_Action_HeaderValueMatch_) isRateLimit_Action_ActionSpecifier() {}
2809
2810func (m *RateLimit_Action) GetActionSpecifier() isRateLimit_Action_ActionSpecifier {
2811	if m != nil {
2812		return m.ActionSpecifier
2813	}
2814	return nil
2815}
2816
2817func (m *RateLimit_Action) GetSourceCluster() *RateLimit_Action_SourceCluster {
2818	if x, ok := m.GetActionSpecifier().(*RateLimit_Action_SourceCluster_); ok {
2819		return x.SourceCluster
2820	}
2821	return nil
2822}
2823
2824func (m *RateLimit_Action) GetDestinationCluster() *RateLimit_Action_DestinationCluster {
2825	if x, ok := m.GetActionSpecifier().(*RateLimit_Action_DestinationCluster_); ok {
2826		return x.DestinationCluster
2827	}
2828	return nil
2829}
2830
2831func (m *RateLimit_Action) GetRequestHeaders() *RateLimit_Action_RequestHeaders {
2832	if x, ok := m.GetActionSpecifier().(*RateLimit_Action_RequestHeaders_); ok {
2833		return x.RequestHeaders
2834	}
2835	return nil
2836}
2837
2838func (m *RateLimit_Action) GetRemoteAddress() *RateLimit_Action_RemoteAddress {
2839	if x, ok := m.GetActionSpecifier().(*RateLimit_Action_RemoteAddress_); ok {
2840		return x.RemoteAddress
2841	}
2842	return nil
2843}
2844
2845func (m *RateLimit_Action) GetGenericKey() *RateLimit_Action_GenericKey {
2846	if x, ok := m.GetActionSpecifier().(*RateLimit_Action_GenericKey_); ok {
2847		return x.GenericKey
2848	}
2849	return nil
2850}
2851
2852func (m *RateLimit_Action) GetHeaderValueMatch() *RateLimit_Action_HeaderValueMatch {
2853	if x, ok := m.GetActionSpecifier().(*RateLimit_Action_HeaderValueMatch_); ok {
2854		return x.HeaderValueMatch
2855	}
2856	return nil
2857}
2858
2859// XXX_OneofWrappers is for the internal use of the proto package.
2860func (*RateLimit_Action) XXX_OneofWrappers() []interface{} {
2861	return []interface{}{
2862		(*RateLimit_Action_SourceCluster_)(nil),
2863		(*RateLimit_Action_DestinationCluster_)(nil),
2864		(*RateLimit_Action_RequestHeaders_)(nil),
2865		(*RateLimit_Action_RemoteAddress_)(nil),
2866		(*RateLimit_Action_GenericKey_)(nil),
2867		(*RateLimit_Action_HeaderValueMatch_)(nil),
2868	}
2869}
2870
2871type RateLimit_Action_SourceCluster struct {
2872	XXX_NoUnkeyedLiteral struct{} `json:"-"`
2873	XXX_unrecognized     []byte   `json:"-"`
2874	XXX_sizecache        int32    `json:"-"`
2875}
2876
2877func (m *RateLimit_Action_SourceCluster) Reset()         { *m = RateLimit_Action_SourceCluster{} }
2878func (m *RateLimit_Action_SourceCluster) String() string { return proto.CompactTextString(m) }
2879func (*RateLimit_Action_SourceCluster) ProtoMessage()    {}
2880func (*RateLimit_Action_SourceCluster) Descriptor() ([]byte, []int) {
2881	return fileDescriptor_a23c550601a0f392, []int{14, 0, 0}
2882}
2883
2884func (m *RateLimit_Action_SourceCluster) XXX_Unmarshal(b []byte) error {
2885	return xxx_messageInfo_RateLimit_Action_SourceCluster.Unmarshal(m, b)
2886}
2887func (m *RateLimit_Action_SourceCluster) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2888	return xxx_messageInfo_RateLimit_Action_SourceCluster.Marshal(b, m, deterministic)
2889}
2890func (m *RateLimit_Action_SourceCluster) XXX_Merge(src proto.Message) {
2891	xxx_messageInfo_RateLimit_Action_SourceCluster.Merge(m, src)
2892}
2893func (m *RateLimit_Action_SourceCluster) XXX_Size() int {
2894	return xxx_messageInfo_RateLimit_Action_SourceCluster.Size(m)
2895}
2896func (m *RateLimit_Action_SourceCluster) XXX_DiscardUnknown() {
2897	xxx_messageInfo_RateLimit_Action_SourceCluster.DiscardUnknown(m)
2898}
2899
2900var xxx_messageInfo_RateLimit_Action_SourceCluster proto.InternalMessageInfo
2901
2902type RateLimit_Action_DestinationCluster struct {
2903	XXX_NoUnkeyedLiteral struct{} `json:"-"`
2904	XXX_unrecognized     []byte   `json:"-"`
2905	XXX_sizecache        int32    `json:"-"`
2906}
2907
2908func (m *RateLimit_Action_DestinationCluster) Reset()         { *m = RateLimit_Action_DestinationCluster{} }
2909func (m *RateLimit_Action_DestinationCluster) String() string { return proto.CompactTextString(m) }
2910func (*RateLimit_Action_DestinationCluster) ProtoMessage()    {}
2911func (*RateLimit_Action_DestinationCluster) Descriptor() ([]byte, []int) {
2912	return fileDescriptor_a23c550601a0f392, []int{14, 0, 1}
2913}
2914
2915func (m *RateLimit_Action_DestinationCluster) XXX_Unmarshal(b []byte) error {
2916	return xxx_messageInfo_RateLimit_Action_DestinationCluster.Unmarshal(m, b)
2917}
2918func (m *RateLimit_Action_DestinationCluster) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2919	return xxx_messageInfo_RateLimit_Action_DestinationCluster.Marshal(b, m, deterministic)
2920}
2921func (m *RateLimit_Action_DestinationCluster) XXX_Merge(src proto.Message) {
2922	xxx_messageInfo_RateLimit_Action_DestinationCluster.Merge(m, src)
2923}
2924func (m *RateLimit_Action_DestinationCluster) XXX_Size() int {
2925	return xxx_messageInfo_RateLimit_Action_DestinationCluster.Size(m)
2926}
2927func (m *RateLimit_Action_DestinationCluster) XXX_DiscardUnknown() {
2928	xxx_messageInfo_RateLimit_Action_DestinationCluster.DiscardUnknown(m)
2929}
2930
2931var xxx_messageInfo_RateLimit_Action_DestinationCluster proto.InternalMessageInfo
2932
2933type RateLimit_Action_RequestHeaders struct {
2934	HeaderName           string   `protobuf:"bytes,1,opt,name=header_name,json=headerName,proto3" json:"header_name,omitempty"`
2935	DescriptorKey        string   `protobuf:"bytes,2,opt,name=descriptor_key,json=descriptorKey,proto3" json:"descriptor_key,omitempty"`
2936	XXX_NoUnkeyedLiteral struct{} `json:"-"`
2937	XXX_unrecognized     []byte   `json:"-"`
2938	XXX_sizecache        int32    `json:"-"`
2939}
2940
2941func (m *RateLimit_Action_RequestHeaders) Reset()         { *m = RateLimit_Action_RequestHeaders{} }
2942func (m *RateLimit_Action_RequestHeaders) String() string { return proto.CompactTextString(m) }
2943func (*RateLimit_Action_RequestHeaders) ProtoMessage()    {}
2944func (*RateLimit_Action_RequestHeaders) Descriptor() ([]byte, []int) {
2945	return fileDescriptor_a23c550601a0f392, []int{14, 0, 2}
2946}
2947
2948func (m *RateLimit_Action_RequestHeaders) XXX_Unmarshal(b []byte) error {
2949	return xxx_messageInfo_RateLimit_Action_RequestHeaders.Unmarshal(m, b)
2950}
2951func (m *RateLimit_Action_RequestHeaders) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2952	return xxx_messageInfo_RateLimit_Action_RequestHeaders.Marshal(b, m, deterministic)
2953}
2954func (m *RateLimit_Action_RequestHeaders) XXX_Merge(src proto.Message) {
2955	xxx_messageInfo_RateLimit_Action_RequestHeaders.Merge(m, src)
2956}
2957func (m *RateLimit_Action_RequestHeaders) XXX_Size() int {
2958	return xxx_messageInfo_RateLimit_Action_RequestHeaders.Size(m)
2959}
2960func (m *RateLimit_Action_RequestHeaders) XXX_DiscardUnknown() {
2961	xxx_messageInfo_RateLimit_Action_RequestHeaders.DiscardUnknown(m)
2962}
2963
2964var xxx_messageInfo_RateLimit_Action_RequestHeaders proto.InternalMessageInfo
2965
2966func (m *RateLimit_Action_RequestHeaders) GetHeaderName() string {
2967	if m != nil {
2968		return m.HeaderName
2969	}
2970	return ""
2971}
2972
2973func (m *RateLimit_Action_RequestHeaders) GetDescriptorKey() string {
2974	if m != nil {
2975		return m.DescriptorKey
2976	}
2977	return ""
2978}
2979
2980type RateLimit_Action_RemoteAddress struct {
2981	XXX_NoUnkeyedLiteral struct{} `json:"-"`
2982	XXX_unrecognized     []byte   `json:"-"`
2983	XXX_sizecache        int32    `json:"-"`
2984}
2985
2986func (m *RateLimit_Action_RemoteAddress) Reset()         { *m = RateLimit_Action_RemoteAddress{} }
2987func (m *RateLimit_Action_RemoteAddress) String() string { return proto.CompactTextString(m) }
2988func (*RateLimit_Action_RemoteAddress) ProtoMessage()    {}
2989func (*RateLimit_Action_RemoteAddress) Descriptor() ([]byte, []int) {
2990	return fileDescriptor_a23c550601a0f392, []int{14, 0, 3}
2991}
2992
2993func (m *RateLimit_Action_RemoteAddress) XXX_Unmarshal(b []byte) error {
2994	return xxx_messageInfo_RateLimit_Action_RemoteAddress.Unmarshal(m, b)
2995}
2996func (m *RateLimit_Action_RemoteAddress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2997	return xxx_messageInfo_RateLimit_Action_RemoteAddress.Marshal(b, m, deterministic)
2998}
2999func (m *RateLimit_Action_RemoteAddress) XXX_Merge(src proto.Message) {
3000	xxx_messageInfo_RateLimit_Action_RemoteAddress.Merge(m, src)
3001}
3002func (m *RateLimit_Action_RemoteAddress) XXX_Size() int {
3003	return xxx_messageInfo_RateLimit_Action_RemoteAddress.Size(m)
3004}
3005func (m *RateLimit_Action_RemoteAddress) XXX_DiscardUnknown() {
3006	xxx_messageInfo_RateLimit_Action_RemoteAddress.DiscardUnknown(m)
3007}
3008
3009var xxx_messageInfo_RateLimit_Action_RemoteAddress proto.InternalMessageInfo
3010
3011type RateLimit_Action_GenericKey struct {
3012	DescriptorValue      string   `protobuf:"bytes,1,opt,name=descriptor_value,json=descriptorValue,proto3" json:"descriptor_value,omitempty"`
3013	XXX_NoUnkeyedLiteral struct{} `json:"-"`
3014	XXX_unrecognized     []byte   `json:"-"`
3015	XXX_sizecache        int32    `json:"-"`
3016}
3017
3018func (m *RateLimit_Action_GenericKey) Reset()         { *m = RateLimit_Action_GenericKey{} }
3019func (m *RateLimit_Action_GenericKey) String() string { return proto.CompactTextString(m) }
3020func (*RateLimit_Action_GenericKey) ProtoMessage()    {}
3021func (*RateLimit_Action_GenericKey) Descriptor() ([]byte, []int) {
3022	return fileDescriptor_a23c550601a0f392, []int{14, 0, 4}
3023}
3024
3025func (m *RateLimit_Action_GenericKey) XXX_Unmarshal(b []byte) error {
3026	return xxx_messageInfo_RateLimit_Action_GenericKey.Unmarshal(m, b)
3027}
3028func (m *RateLimit_Action_GenericKey) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
3029	return xxx_messageInfo_RateLimit_Action_GenericKey.Marshal(b, m, deterministic)
3030}
3031func (m *RateLimit_Action_GenericKey) XXX_Merge(src proto.Message) {
3032	xxx_messageInfo_RateLimit_Action_GenericKey.Merge(m, src)
3033}
3034func (m *RateLimit_Action_GenericKey) XXX_Size() int {
3035	return xxx_messageInfo_RateLimit_Action_GenericKey.Size(m)
3036}
3037func (m *RateLimit_Action_GenericKey) XXX_DiscardUnknown() {
3038	xxx_messageInfo_RateLimit_Action_GenericKey.DiscardUnknown(m)
3039}
3040
3041var xxx_messageInfo_RateLimit_Action_GenericKey proto.InternalMessageInfo
3042
3043func (m *RateLimit_Action_GenericKey) GetDescriptorValue() string {
3044	if m != nil {
3045		return m.DescriptorValue
3046	}
3047	return ""
3048}
3049
3050type RateLimit_Action_HeaderValueMatch struct {
3051	DescriptorValue      string              `protobuf:"bytes,1,opt,name=descriptor_value,json=descriptorValue,proto3" json:"descriptor_value,omitempty"`
3052	ExpectMatch          *wrappers.BoolValue `protobuf:"bytes,2,opt,name=expect_match,json=expectMatch,proto3" json:"expect_match,omitempty"`
3053	Headers              []*HeaderMatcher    `protobuf:"bytes,3,rep,name=headers,proto3" json:"headers,omitempty"`
3054	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
3055	XXX_unrecognized     []byte              `json:"-"`
3056	XXX_sizecache        int32               `json:"-"`
3057}
3058
3059func (m *RateLimit_Action_HeaderValueMatch) Reset()         { *m = RateLimit_Action_HeaderValueMatch{} }
3060func (m *RateLimit_Action_HeaderValueMatch) String() string { return proto.CompactTextString(m) }
3061func (*RateLimit_Action_HeaderValueMatch) ProtoMessage()    {}
3062func (*RateLimit_Action_HeaderValueMatch) Descriptor() ([]byte, []int) {
3063	return fileDescriptor_a23c550601a0f392, []int{14, 0, 5}
3064}
3065
3066func (m *RateLimit_Action_HeaderValueMatch) XXX_Unmarshal(b []byte) error {
3067	return xxx_messageInfo_RateLimit_Action_HeaderValueMatch.Unmarshal(m, b)
3068}
3069func (m *RateLimit_Action_HeaderValueMatch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
3070	return xxx_messageInfo_RateLimit_Action_HeaderValueMatch.Marshal(b, m, deterministic)
3071}
3072func (m *RateLimit_Action_HeaderValueMatch) XXX_Merge(src proto.Message) {
3073	xxx_messageInfo_RateLimit_Action_HeaderValueMatch.Merge(m, src)
3074}
3075func (m *RateLimit_Action_HeaderValueMatch) XXX_Size() int {
3076	return xxx_messageInfo_RateLimit_Action_HeaderValueMatch.Size(m)
3077}
3078func (m *RateLimit_Action_HeaderValueMatch) XXX_DiscardUnknown() {
3079	xxx_messageInfo_RateLimit_Action_HeaderValueMatch.DiscardUnknown(m)
3080}
3081
3082var xxx_messageInfo_RateLimit_Action_HeaderValueMatch proto.InternalMessageInfo
3083
3084func (m *RateLimit_Action_HeaderValueMatch) GetDescriptorValue() string {
3085	if m != nil {
3086		return m.DescriptorValue
3087	}
3088	return ""
3089}
3090
3091func (m *RateLimit_Action_HeaderValueMatch) GetExpectMatch() *wrappers.BoolValue {
3092	if m != nil {
3093		return m.ExpectMatch
3094	}
3095	return nil
3096}
3097
3098func (m *RateLimit_Action_HeaderValueMatch) GetHeaders() []*HeaderMatcher {
3099	if m != nil {
3100		return m.Headers
3101	}
3102	return nil
3103}
3104
3105type HeaderMatcher struct {
3106	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
3107	// Types that are valid to be assigned to HeaderMatchSpecifier:
3108	//	*HeaderMatcher_ExactMatch
3109	//	*HeaderMatcher_RegexMatch
3110	//	*HeaderMatcher_SafeRegexMatch
3111	//	*HeaderMatcher_RangeMatch
3112	//	*HeaderMatcher_PresentMatch
3113	//	*HeaderMatcher_PrefixMatch
3114	//	*HeaderMatcher_SuffixMatch
3115	HeaderMatchSpecifier isHeaderMatcher_HeaderMatchSpecifier `protobuf_oneof:"header_match_specifier"`
3116	InvertMatch          bool                                 `protobuf:"varint,8,opt,name=invert_match,json=invertMatch,proto3" json:"invert_match,omitempty"`
3117	XXX_NoUnkeyedLiteral struct{}                             `json:"-"`
3118	XXX_unrecognized     []byte                               `json:"-"`
3119	XXX_sizecache        int32                                `json:"-"`
3120}
3121
3122func (m *HeaderMatcher) Reset()         { *m = HeaderMatcher{} }
3123func (m *HeaderMatcher) String() string { return proto.CompactTextString(m) }
3124func (*HeaderMatcher) ProtoMessage()    {}
3125func (*HeaderMatcher) Descriptor() ([]byte, []int) {
3126	return fileDescriptor_a23c550601a0f392, []int{15}
3127}
3128
3129func (m *HeaderMatcher) XXX_Unmarshal(b []byte) error {
3130	return xxx_messageInfo_HeaderMatcher.Unmarshal(m, b)
3131}
3132func (m *HeaderMatcher) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
3133	return xxx_messageInfo_HeaderMatcher.Marshal(b, m, deterministic)
3134}
3135func (m *HeaderMatcher) XXX_Merge(src proto.Message) {
3136	xxx_messageInfo_HeaderMatcher.Merge(m, src)
3137}
3138func (m *HeaderMatcher) XXX_Size() int {
3139	return xxx_messageInfo_HeaderMatcher.Size(m)
3140}
3141func (m *HeaderMatcher) XXX_DiscardUnknown() {
3142	xxx_messageInfo_HeaderMatcher.DiscardUnknown(m)
3143}
3144
3145var xxx_messageInfo_HeaderMatcher proto.InternalMessageInfo
3146
3147func (m *HeaderMatcher) GetName() string {
3148	if m != nil {
3149		return m.Name
3150	}
3151	return ""
3152}
3153
3154type isHeaderMatcher_HeaderMatchSpecifier interface {
3155	isHeaderMatcher_HeaderMatchSpecifier()
3156}
3157
3158type HeaderMatcher_ExactMatch struct {
3159	ExactMatch string `protobuf:"bytes,4,opt,name=exact_match,json=exactMatch,proto3,oneof"`
3160}
3161
3162type HeaderMatcher_RegexMatch struct {
3163	RegexMatch string `protobuf:"bytes,5,opt,name=regex_match,json=regexMatch,proto3,oneof"`
3164}
3165
3166type HeaderMatcher_SafeRegexMatch struct {
3167	SafeRegexMatch *matcher.RegexMatcher `protobuf:"bytes,11,opt,name=safe_regex_match,json=safeRegexMatch,proto3,oneof"`
3168}
3169
3170type HeaderMatcher_RangeMatch struct {
3171	RangeMatch *_type.Int64Range `protobuf:"bytes,6,opt,name=range_match,json=rangeMatch,proto3,oneof"`
3172}
3173
3174type HeaderMatcher_PresentMatch struct {
3175	PresentMatch bool `protobuf:"varint,7,opt,name=present_match,json=presentMatch,proto3,oneof"`
3176}
3177
3178type HeaderMatcher_PrefixMatch struct {
3179	PrefixMatch string `protobuf:"bytes,9,opt,name=prefix_match,json=prefixMatch,proto3,oneof"`
3180}
3181
3182type HeaderMatcher_SuffixMatch struct {
3183	SuffixMatch string `protobuf:"bytes,10,opt,name=suffix_match,json=suffixMatch,proto3,oneof"`
3184}
3185
3186func (*HeaderMatcher_ExactMatch) isHeaderMatcher_HeaderMatchSpecifier() {}
3187
3188func (*HeaderMatcher_RegexMatch) isHeaderMatcher_HeaderMatchSpecifier() {}
3189
3190func (*HeaderMatcher_SafeRegexMatch) isHeaderMatcher_HeaderMatchSpecifier() {}
3191
3192func (*HeaderMatcher_RangeMatch) isHeaderMatcher_HeaderMatchSpecifier() {}
3193
3194func (*HeaderMatcher_PresentMatch) isHeaderMatcher_HeaderMatchSpecifier() {}
3195
3196func (*HeaderMatcher_PrefixMatch) isHeaderMatcher_HeaderMatchSpecifier() {}
3197
3198func (*HeaderMatcher_SuffixMatch) isHeaderMatcher_HeaderMatchSpecifier() {}
3199
3200func (m *HeaderMatcher) GetHeaderMatchSpecifier() isHeaderMatcher_HeaderMatchSpecifier {
3201	if m != nil {
3202		return m.HeaderMatchSpecifier
3203	}
3204	return nil
3205}
3206
3207func (m *HeaderMatcher) GetExactMatch() string {
3208	if x, ok := m.GetHeaderMatchSpecifier().(*HeaderMatcher_ExactMatch); ok {
3209		return x.ExactMatch
3210	}
3211	return ""
3212}
3213
3214// Deprecated: Do not use.
3215func (m *HeaderMatcher) GetRegexMatch() string {
3216	if x, ok := m.GetHeaderMatchSpecifier().(*HeaderMatcher_RegexMatch); ok {
3217		return x.RegexMatch
3218	}
3219	return ""
3220}
3221
3222func (m *HeaderMatcher) GetSafeRegexMatch() *matcher.RegexMatcher {
3223	if x, ok := m.GetHeaderMatchSpecifier().(*HeaderMatcher_SafeRegexMatch); ok {
3224		return x.SafeRegexMatch
3225	}
3226	return nil
3227}
3228
3229func (m *HeaderMatcher) GetRangeMatch() *_type.Int64Range {
3230	if x, ok := m.GetHeaderMatchSpecifier().(*HeaderMatcher_RangeMatch); ok {
3231		return x.RangeMatch
3232	}
3233	return nil
3234}
3235
3236func (m *HeaderMatcher) GetPresentMatch() bool {
3237	if x, ok := m.GetHeaderMatchSpecifier().(*HeaderMatcher_PresentMatch); ok {
3238		return x.PresentMatch
3239	}
3240	return false
3241}
3242
3243func (m *HeaderMatcher) GetPrefixMatch() string {
3244	if x, ok := m.GetHeaderMatchSpecifier().(*HeaderMatcher_PrefixMatch); ok {
3245		return x.PrefixMatch
3246	}
3247	return ""
3248}
3249
3250func (m *HeaderMatcher) GetSuffixMatch() string {
3251	if x, ok := m.GetHeaderMatchSpecifier().(*HeaderMatcher_SuffixMatch); ok {
3252		return x.SuffixMatch
3253	}
3254	return ""
3255}
3256
3257func (m *HeaderMatcher) GetInvertMatch() bool {
3258	if m != nil {
3259		return m.InvertMatch
3260	}
3261	return false
3262}
3263
3264// XXX_OneofWrappers is for the internal use of the proto package.
3265func (*HeaderMatcher) XXX_OneofWrappers() []interface{} {
3266	return []interface{}{
3267		(*HeaderMatcher_ExactMatch)(nil),
3268		(*HeaderMatcher_RegexMatch)(nil),
3269		(*HeaderMatcher_SafeRegexMatch)(nil),
3270		(*HeaderMatcher_RangeMatch)(nil),
3271		(*HeaderMatcher_PresentMatch)(nil),
3272		(*HeaderMatcher_PrefixMatch)(nil),
3273		(*HeaderMatcher_SuffixMatch)(nil),
3274	}
3275}
3276
3277type QueryParameterMatcher struct {
3278	Name  string              `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
3279	Value string              `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"` // Deprecated: Do not use.
3280	Regex *wrappers.BoolValue `protobuf:"bytes,4,opt,name=regex,proto3" json:"regex,omitempty"` // Deprecated: Do not use.
3281	// Types that are valid to be assigned to QueryParameterMatchSpecifier:
3282	//	*QueryParameterMatcher_StringMatch
3283	//	*QueryParameterMatcher_PresentMatch
3284	QueryParameterMatchSpecifier isQueryParameterMatcher_QueryParameterMatchSpecifier `protobuf_oneof:"query_parameter_match_specifier"`
3285	XXX_NoUnkeyedLiteral         struct{}                                             `json:"-"`
3286	XXX_unrecognized             []byte                                               `json:"-"`
3287	XXX_sizecache                int32                                                `json:"-"`
3288}
3289
3290func (m *QueryParameterMatcher) Reset()         { *m = QueryParameterMatcher{} }
3291func (m *QueryParameterMatcher) String() string { return proto.CompactTextString(m) }
3292func (*QueryParameterMatcher) ProtoMessage()    {}
3293func (*QueryParameterMatcher) Descriptor() ([]byte, []int) {
3294	return fileDescriptor_a23c550601a0f392, []int{16}
3295}
3296
3297func (m *QueryParameterMatcher) XXX_Unmarshal(b []byte) error {
3298	return xxx_messageInfo_QueryParameterMatcher.Unmarshal(m, b)
3299}
3300func (m *QueryParameterMatcher) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
3301	return xxx_messageInfo_QueryParameterMatcher.Marshal(b, m, deterministic)
3302}
3303func (m *QueryParameterMatcher) XXX_Merge(src proto.Message) {
3304	xxx_messageInfo_QueryParameterMatcher.Merge(m, src)
3305}
3306func (m *QueryParameterMatcher) XXX_Size() int {
3307	return xxx_messageInfo_QueryParameterMatcher.Size(m)
3308}
3309func (m *QueryParameterMatcher) XXX_DiscardUnknown() {
3310	xxx_messageInfo_QueryParameterMatcher.DiscardUnknown(m)
3311}
3312
3313var xxx_messageInfo_QueryParameterMatcher proto.InternalMessageInfo
3314
3315func (m *QueryParameterMatcher) GetName() string {
3316	if m != nil {
3317		return m.Name
3318	}
3319	return ""
3320}
3321
3322// Deprecated: Do not use.
3323func (m *QueryParameterMatcher) GetValue() string {
3324	if m != nil {
3325		return m.Value
3326	}
3327	return ""
3328}
3329
3330// Deprecated: Do not use.
3331func (m *QueryParameterMatcher) GetRegex() *wrappers.BoolValue {
3332	if m != nil {
3333		return m.Regex
3334	}
3335	return nil
3336}
3337
3338type isQueryParameterMatcher_QueryParameterMatchSpecifier interface {
3339	isQueryParameterMatcher_QueryParameterMatchSpecifier()
3340}
3341
3342type QueryParameterMatcher_StringMatch struct {
3343	StringMatch *matcher.StringMatcher `protobuf:"bytes,5,opt,name=string_match,json=stringMatch,proto3,oneof"`
3344}
3345
3346type QueryParameterMatcher_PresentMatch struct {
3347	PresentMatch bool `protobuf:"varint,6,opt,name=present_match,json=presentMatch,proto3,oneof"`
3348}
3349
3350func (*QueryParameterMatcher_StringMatch) isQueryParameterMatcher_QueryParameterMatchSpecifier() {}
3351
3352func (*QueryParameterMatcher_PresentMatch) isQueryParameterMatcher_QueryParameterMatchSpecifier() {}
3353
3354func (m *QueryParameterMatcher) GetQueryParameterMatchSpecifier() isQueryParameterMatcher_QueryParameterMatchSpecifier {
3355	if m != nil {
3356		return m.QueryParameterMatchSpecifier
3357	}
3358	return nil
3359}
3360
3361func (m *QueryParameterMatcher) GetStringMatch() *matcher.StringMatcher {
3362	if x, ok := m.GetQueryParameterMatchSpecifier().(*QueryParameterMatcher_StringMatch); ok {
3363		return x.StringMatch
3364	}
3365	return nil
3366}
3367
3368func (m *QueryParameterMatcher) GetPresentMatch() bool {
3369	if x, ok := m.GetQueryParameterMatchSpecifier().(*QueryParameterMatcher_PresentMatch); ok {
3370		return x.PresentMatch
3371	}
3372	return false
3373}
3374
3375// XXX_OneofWrappers is for the internal use of the proto package.
3376func (*QueryParameterMatcher) XXX_OneofWrappers() []interface{} {
3377	return []interface{}{
3378		(*QueryParameterMatcher_StringMatch)(nil),
3379		(*QueryParameterMatcher_PresentMatch)(nil),
3380	}
3381}
3382
3383func init() {
3384	proto.RegisterEnum("envoy.api.v2.route.VirtualHost_TlsRequirementType", VirtualHost_TlsRequirementType_name, VirtualHost_TlsRequirementType_value)
3385	proto.RegisterEnum("envoy.api.v2.route.RouteAction_ClusterNotFoundResponseCode", RouteAction_ClusterNotFoundResponseCode_name, RouteAction_ClusterNotFoundResponseCode_value)
3386	proto.RegisterEnum("envoy.api.v2.route.RouteAction_InternalRedirectAction", RouteAction_InternalRedirectAction_name, RouteAction_InternalRedirectAction_value)
3387	proto.RegisterEnum("envoy.api.v2.route.RedirectAction_RedirectResponseCode", RedirectAction_RedirectResponseCode_name, RedirectAction_RedirectResponseCode_value)
3388	proto.RegisterType((*VirtualHost)(nil), "envoy.api.v2.route.VirtualHost")
3389	proto.RegisterMapType((map[string]*_struct.Struct)(nil), "envoy.api.v2.route.VirtualHost.PerFilterConfigEntry")
3390	proto.RegisterMapType((map[string]*any.Any)(nil), "envoy.api.v2.route.VirtualHost.TypedPerFilterConfigEntry")
3391	proto.RegisterType((*FilterAction)(nil), "envoy.api.v2.route.FilterAction")
3392	proto.RegisterType((*Route)(nil), "envoy.api.v2.route.Route")
3393	proto.RegisterMapType((map[string]*_struct.Struct)(nil), "envoy.api.v2.route.Route.PerFilterConfigEntry")
3394	proto.RegisterMapType((map[string]*any.Any)(nil), "envoy.api.v2.route.Route.TypedPerFilterConfigEntry")
3395	proto.RegisterType((*WeightedCluster)(nil), "envoy.api.v2.route.WeightedCluster")
3396	proto.RegisterType((*WeightedCluster_ClusterWeight)(nil), "envoy.api.v2.route.WeightedCluster.ClusterWeight")
3397	proto.RegisterMapType((map[string]*_struct.Struct)(nil), "envoy.api.v2.route.WeightedCluster.ClusterWeight.PerFilterConfigEntry")
3398	proto.RegisterMapType((map[string]*any.Any)(nil), "envoy.api.v2.route.WeightedCluster.ClusterWeight.TypedPerFilterConfigEntry")
3399	proto.RegisterType((*RouteMatch)(nil), "envoy.api.v2.route.RouteMatch")
3400	proto.RegisterType((*RouteMatch_GrpcRouteMatchOptions)(nil), "envoy.api.v2.route.RouteMatch.GrpcRouteMatchOptions")
3401	proto.RegisterType((*RouteMatch_TlsContextMatchOptions)(nil), "envoy.api.v2.route.RouteMatch.TlsContextMatchOptions")
3402	proto.RegisterType((*CorsPolicy)(nil), "envoy.api.v2.route.CorsPolicy")
3403	proto.RegisterType((*RouteAction)(nil), "envoy.api.v2.route.RouteAction")
3404	proto.RegisterType((*RouteAction_RequestMirrorPolicy)(nil), "envoy.api.v2.route.RouteAction.RequestMirrorPolicy")
3405	proto.RegisterType((*RouteAction_HashPolicy)(nil), "envoy.api.v2.route.RouteAction.HashPolicy")
3406	proto.RegisterType((*RouteAction_HashPolicy_Header)(nil), "envoy.api.v2.route.RouteAction.HashPolicy.Header")
3407	proto.RegisterType((*RouteAction_HashPolicy_Cookie)(nil), "envoy.api.v2.route.RouteAction.HashPolicy.Cookie")
3408	proto.RegisterType((*RouteAction_HashPolicy_ConnectionProperties)(nil), "envoy.api.v2.route.RouteAction.HashPolicy.ConnectionProperties")
3409	proto.RegisterType((*RouteAction_HashPolicy_QueryParameter)(nil), "envoy.api.v2.route.RouteAction.HashPolicy.QueryParameter")
3410	proto.RegisterType((*RouteAction_HashPolicy_FilterState)(nil), "envoy.api.v2.route.RouteAction.HashPolicy.FilterState")
3411	proto.RegisterType((*RouteAction_UpgradeConfig)(nil), "envoy.api.v2.route.RouteAction.UpgradeConfig")
3412	proto.RegisterType((*RetryPolicy)(nil), "envoy.api.v2.route.RetryPolicy")
3413	proto.RegisterType((*RetryPolicy_RetryPriority)(nil), "envoy.api.v2.route.RetryPolicy.RetryPriority")
3414	proto.RegisterType((*RetryPolicy_RetryHostPredicate)(nil), "envoy.api.v2.route.RetryPolicy.RetryHostPredicate")
3415	proto.RegisterType((*RetryPolicy_RetryBackOff)(nil), "envoy.api.v2.route.RetryPolicy.RetryBackOff")
3416	proto.RegisterType((*HedgePolicy)(nil), "envoy.api.v2.route.HedgePolicy")
3417	proto.RegisterType((*RedirectAction)(nil), "envoy.api.v2.route.RedirectAction")
3418	proto.RegisterType((*DirectResponseAction)(nil), "envoy.api.v2.route.DirectResponseAction")
3419	proto.RegisterType((*Decorator)(nil), "envoy.api.v2.route.Decorator")
3420	proto.RegisterType((*Tracing)(nil), "envoy.api.v2.route.Tracing")
3421	proto.RegisterType((*VirtualCluster)(nil), "envoy.api.v2.route.VirtualCluster")
3422	proto.RegisterType((*RateLimit)(nil), "envoy.api.v2.route.RateLimit")
3423	proto.RegisterType((*RateLimit_Action)(nil), "envoy.api.v2.route.RateLimit.Action")
3424	proto.RegisterType((*RateLimit_Action_SourceCluster)(nil), "envoy.api.v2.route.RateLimit.Action.SourceCluster")
3425	proto.RegisterType((*RateLimit_Action_DestinationCluster)(nil), "envoy.api.v2.route.RateLimit.Action.DestinationCluster")
3426	proto.RegisterType((*RateLimit_Action_RequestHeaders)(nil), "envoy.api.v2.route.RateLimit.Action.RequestHeaders")
3427	proto.RegisterType((*RateLimit_Action_RemoteAddress)(nil), "envoy.api.v2.route.RateLimit.Action.RemoteAddress")
3428	proto.RegisterType((*RateLimit_Action_GenericKey)(nil), "envoy.api.v2.route.RateLimit.Action.GenericKey")
3429	proto.RegisterType((*RateLimit_Action_HeaderValueMatch)(nil), "envoy.api.v2.route.RateLimit.Action.HeaderValueMatch")
3430	proto.RegisterType((*HeaderMatcher)(nil), "envoy.api.v2.route.HeaderMatcher")
3431	proto.RegisterType((*QueryParameterMatcher)(nil), "envoy.api.v2.route.QueryParameterMatcher")
3432}
3433
3434func init() {
3435	proto.RegisterFile("envoy/api/v2/route/route_components.proto", fileDescriptor_a23c550601a0f392)
3436}
3437
3438var fileDescriptor_a23c550601a0f392 = []byte{
3439	// 4549 bytes of a gzipped FileDescriptorProto
3440	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0x4b, 0x70, 0x24, 0x47,
3441	0x5a, 0x56, 0xa9, 0x5b, 0xfd, 0xf8, 0xfb, 0xa1, 0x52, 0xea, 0xd5, 0xd3, 0xe3, 0x99, 0xd1, 0xb4,
3442	0xd7, 0xbb, 0xf2, 0xd8, 0x96, 0xb0, 0x66, 0xfc, 0x5e, 0xef, 0x5a, 0xa5, 0xd1, 0xb8, 0xa5, 0xd1,
3443	0x48, 0x22, 0xa5, 0x99, 0xc5, 0x18, 0x6f, 0x51, 0xd3, 0x95, 0x6a, 0xd5, 0x4e, 0x77, 0x55, 0x39,
3444	0x2b, 0x5b, 0x23, 0xdd, 0x1c, 0x7b, 0x04, 0x22, 0x00, 0x9f, 0xb8, 0x70, 0xe1, 0xc0, 0xc1, 0x04,
3445	0x41, 0x04, 0x27, 0x82, 0xd3, 0x9e, 0x08, 0x1f, 0xb8, 0x00, 0x17, 0x82, 0x08, 0x82, 0x1b, 0xc1,
3446	0x89, 0x83, 0xb9, 0x10, 0x03, 0x41, 0x10, 0xf9, 0xa8, 0x57, 0x77, 0x49, 0x2d, 0x39, 0x36, 0x1c,
3447	0x6c, 0x70, 0xb1, 0x55, 0x99, 0xdf, 0xff, 0x65, 0x76, 0x66, 0xfe, 0xcf, 0xcc, 0x81, 0x57, 0x89,
3448	0x7b, 0xe2, 0x9d, 0xad, 0x5a, 0xbe, 0xb3, 0x7a, 0xb2, 0xb6, 0x4a, 0xbd, 0x01, 0x23, 0xf2, 0xbf,
3449	0x66, 0xc7, 0xeb, 0xfb, 0x9e, 0x4b, 0x5c, 0x16, 0xac, 0xf8, 0xd4, 0x63, 0x1e, 0x42, 0x02, 0xba,
3450	0x62, 0xf9, 0xce, 0xca, 0xc9, 0xda, 0x8a, 0x00, 0x35, 0x5f, 0x4a, 0x89, 0x77, 0x3c, 0x4a, 0x56,
3451	0x9f, 0x5a, 0x01, 0x91, 0x12, 0xcd, 0x9b, 0xb2, 0x97, 0x9d, 0xf9, 0x64, 0xb5, 0x6f, 0xb1, 0xce,
3452	0x31, 0xa1, 0xab, 0x94, 0x74, 0xc9, 0xa9, 0xea, 0xbf, 0x95, 0xd1, 0x1f, 0x30, 0xea, 0xb8, 0x5d,
3453	0x05, 0x68, 0x24, 0x00, 0x3e, 0xa1, 0x1d, 0xe2, 0x32, 0xd5, 0xb3, 0x90, 0xe8, 0xa1, 0x96, 0xdb,
3454	0x0d, 0x87, 0xfc, 0x7e, 0xa2, 0x9d, 0x51, 0xab, 0xe3, 0xb8, 0x5d, 0x31, 0xb3, 0x41, 0xc0, 0xbc,
3455	0xbe, 0xc9, 0xac, 0x90, 0xf9, 0x5a, 0xd7, 0xf3, 0xba, 0x3d, 0xb2, 0x2a, 0xbe, 0x9e, 0x0e, 0x8e,
3456	0x56, 0x2d, 0xf7, 0x2c, 0x9c, 0xf5, 0x70, 0x97, 0x3d, 0xa0, 0x16, 0x73, 0x3c, 0x57, 0xf5, 0xbf,
3457	0x34, 0xdc, 0x1f, 0x30, 0x3a, 0xe8, 0xb0, 0xf3, 0xa4, 0x9f, 0x53, 0xcb, 0xf7, 0x09, 0x55, 0xab,
3458	0xd8, 0x7c, 0x59, 0xad, 0x98, 0xeb, 0x7a, 0x4c, 0xb0, 0x06, 0xab, 0x36, 0xf1, 0x29, 0xe9, 0x24,
3459	0x87, 0xb8, 0x39, 0xb0, 0x7d, 0x2b, 0x85, 0xe9, 0x3b, 0x5d, 0x6a, 0xb1, 0xf0, 0x57, 0xde, 0x18,
3460	0xe9, 0x0f, 0x98, 0xc5, 0x06, 0xe1, 0x18, 0x8b, 0x27, 0x56, 0xcf, 0xb1, 0x2d, 0x46, 0x56, 0xc3,
3461	0x3f, 0x64, 0x47, 0xeb, 0x0f, 0x6b, 0x50, 0x79, 0xe2, 0x50, 0x36, 0xb0, 0x7a, 0x6d, 0x2f, 0x60,
3462	0xe8, 0x3a, 0xe4, 0x5d, 0xab, 0x4f, 0x1a, 0xda, 0x92, 0xb6, 0x5c, 0x36, 0x8a, 0x2f, 0x8c, 0x3c,
3463	0x9d, 0x5c, 0xd2, 0xb0, 0x68, 0x44, 0xaf, 0x43, 0xd1, 0xf6, 0xfa, 0x96, 0xe3, 0x06, 0x8d, 0xc9,
3464	0xa5, 0xdc, 0x72, 0xd9, 0x40, 0x2f, 0x8c, 0xe9, 0x2f, 0xb5, 0x6a, 0x49, 0x6b, 0x95, 0x68, 0xe1,
3465	0x17, 0xda, 0xe4, 0xd7, 0xda, 0x04, 0x0e, 0x21, 0xe8, 0x4d, 0x28, 0x88, 0x23, 0x11, 0x34, 0x72,
3466	0x4b, 0xb9, 0xe5, 0xca, 0xda, 0xb5, 0x95, 0xd1, 0xe3, 0xb2, 0x82, 0xf9, 0x7f, 0xb1, 0x02, 0xa2,
3467	0xcf, 0xa0, 0x42, 0xc9, 0xe7, 0x03, 0x87, 0x12, 0x93, 0xf5, 0x82, 0x46, 0x7e, 0x49, 0x5b, 0xae,
3468	0xaf, 0xad, 0x65, 0xc9, 0x25, 0xe6, 0xbc, 0x72, 0xd8, 0x0b, 0xb0, 0x94, 0xea, 0x13, 0x97, 0x1d,
3469	0x9e, 0xf9, 0xc4, 0x28, 0xbd, 0x30, 0xa6, 0x7e, 0xae, 0x4d, 0xea, 0x1a, 0x06, 0x45, 0x78, 0xd8,
3470	0x0b, 0xd0, 0x23, 0xd0, 0x4f, 0xa4, 0x9c, 0xd9, 0xe9, 0x0d, 0x02, 0x46, 0x68, 0xd0, 0x98, 0x12,
3471	0x73, 0x6b, 0x5d, 0x30, 0xc6, 0x86, 0x84, 0xe2, 0xe9, 0x93, 0xd4, 0x77, 0x80, 0x7e, 0x04, 0x15,
3472	0xbe, 0x03, 0x66, 0xcf, 0xe9, 0x3b, 0x2c, 0x68, 0x14, 0x04, 0xd3, 0x8d, 0xcc, 0x5f, 0x69, 0x31,
3473	0xb2, 0xc3, 0x51, 0x18, 0x68, 0xf8, 0x67, 0x80, 0x6c, 0x58, 0xe0, 0x93, 0x23, 0x01, 0x33, 0x8f,
3474	0x89, 0x65, 0x13, 0x1a, 0x98, 0xcc, 0x33, 0x2d, 0xdb, 0x6e, 0x14, 0x05, 0xd5, 0xf7, 0xd2, 0x54,
3475	0x5c, 0x97, 0x56, 0xda, 0x02, 0xf8, 0xc4, 0xea, 0x0d, 0xc8, 0x9e, 0xcf, 0x37, 0xda, 0x28, 0xbf,
3476	0x30, 0x0a, 0x5f, 0x6a, 0x39, 0xfd, 0xdf, 0x8a, 0x78, 0x56, 0xd1, 0x49, 0x50, 0x70, 0xe8, 0xad,
3477	0xdb, 0x36, 0x7a, 0x0f, 0xae, 0x65, 0x8c, 0x42, 0x49, 0xdf, 0x3b, 0x21, 0x8d, 0x1a, 0xdf, 0x46,
3478	0xbc, 0x30, 0x2c, 0x87, 0x45, 0x2f, 0x3a, 0x82, 0x45, 0x4a, 0x02, 0xdf, 0x73, 0x03, 0x32, 0x3c,
3479	0x43, 0xf8, 0x76, 0x33, 0x9c, 0x0b, 0xf9, 0x52, 0x53, 0xfc, 0x00, 0x9a, 0x59, 0xe3, 0xa8, 0x39,
3480	0x56, 0xc4, 0x1c, 0x17, 0x47, 0x24, 0xd5, 0x24, 0xd7, 0x20, 0xdf, 0xf1, 0x68, 0xd0, 0x28, 0x2d,
3481	0x69, 0xcb, 0x95, 0xb5, 0x9b, 0x59, 0xcb, 0xbf, 0xe1, 0xd1, 0x60, 0xdf, 0xeb, 0x39, 0x9d, 0x33,
3482	0x2c, 0xb0, 0xc8, 0x86, 0x19, 0x9f, 0x50, 0xf3, 0xc8, 0xe9, 0x31, 0x42, 0xcd, 0x8e, 0xe7, 0x1e,
3483	0x39, 0xdd, 0x46, 0x55, 0xfc, 0xa4, 0x7b, 0xe3, 0x4e, 0xdb, 0x3e, 0xa1, 0x0f, 0x84, 0xdc, 0x86,
3484	0x10, 0xdb, 0x74, 0x19, 0x3d, 0x33, 0x26, 0x1b, 0x1a, 0x9e, 0xf6, 0xd3, 0x3d, 0xc8, 0x87, 0x45,
3485	0x6e, 0x75, 0x6c, 0x73, 0x74, 0xac, 0x69, 0x31, 0xd6, 0x7b, 0x63, 0x4f, 0x36, 0x17, 0xcf, 0x1a,
3486	0x10, 0xcf, 0xb1, 0x8c, 0x2e, 0xb4, 0x0e, 0x37, 0x1c, 0xb7, 0xd3, 0x1b, 0xd8, 0xc4, 0x0c, 0xf7,
3487	0xdc, 0x62, 0x8c, 0xf4, 0x7d, 0x66, 0x76, 0xbc, 0x81, 0xcb, 0x1a, 0xf5, 0x25, 0x6d, 0xb9, 0x84,
3488	0x9b, 0x0a, 0x84, 0x25, 0x66, 0x5d, 0x42, 0x36, 0x38, 0x02, 0xb5, 0xe1, 0x76, 0x48, 0x91, 0x12,
3489	0x35, 0x1d, 0xd7, 0x0c, 0xb7, 0xa0, 0x31, 0x2b, 0x68, 0xc2, 0xb1, 0x92, 0xf2, 0x5b, 0x2e, 0x56,
3490	0x20, 0x64, 0x40, 0x95, 0x12, 0x46, 0xcf, 0x4c, 0x5f, 0x2c, 0x7d, 0x43, 0x17, 0x1b, 0x74, 0x2b,
3491	0x53, 0x3f, 0x38, 0x4e, 0xed, 0x50, 0x85, 0xc6, 0x1f, 0x68, 0x8f, 0x1f, 0xde, 0x98, 0xc3, 0x94,
3492	0xeb, 0xa9, 0x16, 0x71, 0x4e, 0x10, 0xce, 0xad, 0x48, 0xfb, 0xba, 0x12, 0xda, 0xd7, 0x95, 0x75,
3493	0xf7, 0x8c, 0x1f, 0xe9, 0x88, 0x45, 0xac, 0xa2, 0x5a, 0x21, 0x03, 0xaa, 0xc7, 0xc4, 0xee, 0x92,
3494	0x70, 0x52, 0x33, 0xe7, 0x4f, 0xaa, 0xcd, 0x71, 0xe1, 0xa4, 0x8e, 0xe3, 0x0f, 0xf4, 0xdb, 0x70,
3495	0x93, 0xef, 0x68, 0xb8, 0xc2, 0x4f, 0x07, 0x47, 0x47, 0x84, 0x4a, 0x2b, 0x60, 0x3e, 0x3d, 0xe3,
3496	0x06, 0x0f, 0x09, 0xd6, 0x97, 0x46, 0x66, 0xf6, 0x78, 0xcb, 0x65, 0x77, 0xd7, 0x84, 0x6e, 0xe0,
3497	0xa6, 0x4f, 0xa8, 0xda, 0x00, 0x43, 0x30, 0x08, 0xab, 0x60, 0x70, 0xf9, 0xe6, 0xa7, 0x30, 0x97,
3498	0xb5, 0xeb, 0x48, 0x87, 0xdc, 0x33, 0x72, 0x26, 0x8d, 0x33, 0xe6, 0x7f, 0xa2, 0x37, 0x60, 0xea,
3499	0x84, 0xd3, 0x35, 0x26, 0xc5, 0x90, 0x8b, 0x23, 0x43, 0x1e, 0x08, 0x57, 0x84, 0x25, 0xea, 0xfd,
3500	0xc9, 0x77, 0xb5, 0xe6, 0x67, 0x70, 0xed, 0xdc, 0x73, 0x95, 0x31, 0xc2, 0x9d, 0xf4, 0x08, 0xd9,
3501	0xcb, 0x1d, 0xd3, 0xb7, 0xde, 0x07, 0x34, 0x6a, 0x90, 0x51, 0x09, 0xf2, 0xbb, 0x7b, 0xbb, 0x9b,
3502	0xfa, 0x04, 0x9a, 0x81, 0xda, 0xe6, 0x6f, 0x1c, 0x6e, 0xe2, 0xdd, 0xf5, 0x1d, 0x73, 0x6f, 0x77,
3503	0xe7, 0x13, 0x5d, 0x43, 0x45, 0xc8, 0xad, 0xef, 0xec, 0xe8, 0x93, 0xdb, 0xf9, 0x52, 0x59, 0x87,
3504	0xd6, 0x0f, 0xa1, 0x2a, 0x27, 0xb6, 0xde, 0xe1, 0xf6, 0x03, 0xbd, 0x0e, 0x05, 0x4b, 0xfc, 0x25,
3505	0xa6, 0x75, 0xde, 0x14, 0x14, 0xa6, 0xf5, 0xaf, 0x00, 0x53, 0xc2, 0xab, 0x20, 0xa4, 0x7c, 0x59,
3506	0x5d, 0xfc, 0x18, 0xe9, 0xc2, 0x7e, 0x04, 0x53, 0x22, 0xae, 0x50, 0x54, 0x37, 0xcf, 0xf5, 0x49,
3507	0x8f, 0x38, 0x4a, 0xf8, 0x91, 0xdf, 0x11, 0x7e, 0x44, 0x8a, 0xa1, 0x77, 0x60, 0x4a, 0x80, 0xd4,
3508	0x6a, 0xdc, 0x3a, 0x57, 0x5e, 0xce, 0xbd, 0x3d, 0x81, 0x25, 0x1e, 0x7d, 0x04, 0x25, 0x4a, 0x6c,
3509	0x87, 0x92, 0x0e, 0x6b, 0xe4, 0x84, 0x6c, 0x2b, 0x5b, 0x13, 0x24, 0x26, 0x12, 0x8f, 0xa4, 0xd0,
3510	0x01, 0x4c, 0xcb, 0xbf, 0x62, 0x3d, 0x2c, 0x0a, 0xa2, 0xe5, 0x2c, 0xa2, 0xfb, 0x02, 0x1a, 0x2a,
3511	0x63, 0x44, 0x57, 0xb7, 0x53, 0xed, 0xe8, 0x63, 0xa8, 0x29, 0xcb, 0xa4, 0x96, 0x58, 0x2a, 0xc4,
3512	0x52, 0x16, 0x65, 0x72, 0x53, 0xda, 0x13, 0xb8, 0x7a, 0x94, 0xdc, 0xa4, 0x77, 0xa0, 0xd4, 0x27,
3513	0xcc, 0xb2, 0x2d, 0x66, 0x09, 0xbf, 0x5d, 0x59, 0xbb, 0x9e, 0xe1, 0x1c, 0x1e, 0x29, 0x08, 0x8e,
3514	0xc0, 0xe8, 0x03, 0x28, 0xdb, 0xa4, 0xe3, 0x51, 0x8b, 0x79, 0xb4, 0x31, 0x25, 0x24, 0x33, 0x7d,
3515	0xe8, 0xfd, 0x10, 0x84, 0x63, 0x3c, 0xfa, 0x69, 0x96, 0x21, 0x2f, 0x09, 0xe3, 0xba, 0x72, 0xee,
3516	0xd6, 0x5c, 0xc1, 0x84, 0xff, 0xec, 0x7c, 0x13, 0x5e, 0x13, 0xa3, 0xdc, 0x3d, 0x7f, 0x94, 0xab,
3517	0x1a, 0xef, 0xf3, 0xc3, 0x81, 0xf2, 0x77, 0x15, 0x0e, 0x54, 0x7f, 0xf5, 0xc3, 0x81, 0xb7, 0xa0,
3518	0xa8, 0xa2, 0xfc, 0xc6, 0x74, 0xd6, 0x31, 0x94, 0x3b, 0x74, 0x28, 0x21, 0x38, 0xc4, 0x5e, 0xc2,
3519	0xa6, 0xeb, 0xff, 0x7f, 0x6d, 0xba, 0x51, 0x0b, 0x2d, 0x30, 0xca, 0xfd, 0xa7, 0xa1, 0x6d, 0xe7,
3520	0x4b, 0x05, 0xbd, 0xd8, 0xfa, 0x83, 0x32, 0x4c, 0xff, 0x84, 0x38, 0xdd, 0x63, 0x46, 0x6c, 0x15,
3521	0x13, 0xa3, 0x9f, 0x40, 0x29, 0x8a, 0xac, 0x35, 0x71, 0x26, 0xde, 0xcc, 0x5a, 0xfe, 0x21, 0xb1,
3522	0x15, 0xf5, 0x7f, 0xd9, 0x2c, 0x8c, 0xee, 0x97, 0xda, 0x64, 0x49, 0xc3, 0x11, 0x19, 0x6a, 0x43,
3523	0x95, 0x79, 0xcc, 0xea, 0x99, 0xcf, 0x05, 0x46, 0x99, 0xd0, 0x0b, 0x77, 0x43, 0x64, 0x2f, 0x77,
3524	0x26, 0x97, 0x35, 0x5c, 0x11, 0xa2, 0x92, 0x1d, 0xbd, 0x0e, 0x88, 0x0e, 0x5c, 0xe6, 0xf4, 0x89,
3525	0xf9, 0x8c, 0x9c, 0x99, 0x3e, 0x25, 0x47, 0xce, 0xa9, 0x58, 0x88, 0x32, 0xd6, 0x55, 0xcf, 0x43,
3526	0x72, 0xb6, 0x2f, 0xda, 0x9b, 0x7f, 0x56, 0x84, 0x5a, 0x6a, 0x76, 0x17, 0x67, 0x48, 0xf7, 0xa0,
3527	0xa0, 0x26, 0x38, 0x79, 0x89, 0xe3, 0xa2, 0xb0, 0xc8, 0x80, 0x7a, 0x68, 0x0e, 0x4d, 0xe9, 0x9d,
3528	0x72, 0xe3, 0x2d, 0x68, 0x2d, 0x14, 0x11, 0x9e, 0xea, 0x02, 0xeb, 0x91, 0xff, 0xae, 0xac, 0x47,
3529	0xf9, 0xdb, 0x5a, 0x8f, 0xa9, 0xef, 0xce, 0x7a, 0x14, 0x2e, 0xb6, 0x1e, 0x27, 0xe7, 0xfb, 0x93,
3530	0x07, 0x57, 0x3e, 0xc8, 0x57, 0xf0, 0x33, 0x3f, 0xd7, 0xce, 0x77, 0x34, 0xd2, 0xb6, 0x3e, 0xbc,
3531	0xfa, 0xf0, 0x57, 0x74, 0x40, 0xbf, 0xca, 0x16, 0x6a, 0x3b, 0x5f, 0x2a, 0xea, 0xa5, 0xd6, 0xd7,
3532	0x05, 0x80, 0x38, 0x7a, 0x43, 0x0d, 0x28, 0x28, 0xf5, 0x16, 0xcc, 0xed, 0x09, 0xac, 0xbe, 0xd1,
3533	0x1c, 0xe4, 0x7d, 0x8b, 0x1d, 0x4b, 0xb5, 0x6f, 0x4f, 0x60, 0xf1, 0x85, 0x96, 0x61, 0x4a, 0x14,
3534	0xa3, 0x84, 0xfa, 0x95, 0x0d, 0xfd, 0x85, 0x31, 0x45, 0x73, 0xcb, 0x5f, 0x94, 0xfe, 0xea, 0xdf,
3535	0xbf, 0xf9, 0xfb, 0x29, 0xad, 0xa1, 0x89, 0x68, 0x8e, 0x03, 0xd0, 0x43, 0x80, 0xc0, 0x3a, 0xe2,
3536	0x59, 0x16, 0x87, 0x43, 0x2a, 0x66, 0xe2, 0x6b, 0xbb, 0xa2, 0x8a, 0x57, 0x2b, 0x98, 0x03, 0x1e,
3537	0xc9, 0x8f, 0x38, 0x9a, 0x6c, 0x4f, 0xe0, 0x32, 0x97, 0x17, 0xbd, 0x68, 0x1d, 0xea, 0x1d, 0x2b,
3538	0x20, 0x66, 0x40, 0xdc, 0xc0, 0x61, 0xce, 0x09, 0x51, 0x01, 0x54, 0x73, 0xe4, 0x47, 0x1b, 0x9e,
3539	0xd7, 0x93, 0xa6, 0xa3, 0xc6, 0x25, 0x0e, 0x42, 0x01, 0xf4, 0x04, 0x42, 0xd3, 0x65, 0x1e, 0x51,
3540	0x15, 0xc9, 0x95, 0x05, 0xc9, 0x6b, 0x19, 0x5a, 0x85, 0x25, 0xf4, 0x81, 0x42, 0x5a, 0xbd, 0x7d,
3541	0x59, 0x49, 0xc3, 0xd3, 0x34, 0xdd, 0x83, 0x3e, 0x80, 0xa2, 0xd2, 0x21, 0x55, 0xde, 0xb8, 0x9d,
3542	0x9d, 0x29, 0x71, 0x88, 0xfa, 0x95, 0x38, 0x94, 0x40, 0x87, 0xa0, 0x7f, 0x3e, 0x20, 0x3c, 0x79,
3543	0xb3, 0xa8, 0xd5, 0x27, 0xc2, 0x29, 0xc8, 0xca, 0xc6, 0xab, 0x59, 0x2c, 0xbf, 0xce, 0xb1, 0xfb,
3544	0x21, 0x34, 0x64, 0x9b, 0xfe, 0x3c, 0xd5, 0xcc, 0x3d, 0x41, 0xbe, 0x4b, 0xfd, 0x8e, 0xca, 0xf7,
3545	0xef, 0x5d, 0x1c, 0xc0, 0xaf, 0x7c, 0x4c, 0xfd, 0x4e, 0xfc, 0x29, 0x6d, 0x48, 0x80, 0x05, 0x03,
3546	0x7a, 0x02, 0x15, 0xd6, 0x0b, 0xb8, 0x9a, 0x31, 0x72, 0xca, 0x1a, 0x15, 0x41, 0xf8, 0xd6, 0x18,
3547	0xc2, 0xc3, 0x5e, 0xb0, 0x21, 0x05, 0x52, 0x8c, 0xc0, 0xa2, 0xf6, 0xe6, 0x22, 0xcc, 0x67, 0x0e,
3548	0xdb, 0xfc, 0x3d, 0x0d, 0x16, 0xb2, 0xe5, 0xd1, 0xbb, 0x50, 0xf6, 0x29, 0x09, 0x88, 0xcb, 0x88,
3549	0xad, 0x72, 0x93, 0x8b, 0xb6, 0x3f, 0x06, 0x73, 0xc9, 0xb0, 0xa6, 0x67, 0x2b, 0x6d, 0xb9, 0x50,
3550	0x32, 0x02, 0x1b, 0xf3, 0x50, 0xe7, 0xc7, 0xde, 0x0c, 0x7c, 0xd2, 0x71, 0x8e, 0x1c, 0x42, 0x43,
3551	0xef, 0x3e, 0xa5, 0x17, 0x5a, 0x5f, 0x4d, 0x01, 0xc4, 0x75, 0x13, 0xf4, 0x1a, 0x54, 0xad, 0x5e,
3552	0xcf, 0x7b, 0x6e, 0x7a, 0xd4, 0xe9, 0x3a, 0xae, 0x70, 0xee, 0x65, 0x23, 0xd2, 0x0c, 0x5c, 0x11,
3553	0xbd, 0x7b, 0xa2, 0x13, 0x7d, 0x08, 0x28, 0x09, 0x56, 0x5a, 0x52, 0x12, 0x22, 0xd3, 0x2f, 0x0c,
3554	0xf8, 0x52, 0x2b, 0xb6, 0xa4, 0x66, 0x35, 0x34, 0xac, 0x27, 0x24, 0xa5, 0x3e, 0xfc, 0x16, 0x5c,
3555	0x4b, 0x89, 0xcb, 0x02, 0xb0, 0xf2, 0x8c, 0x95, 0xd4, 0x31, 0x4c, 0xe9, 0xda, 0x81, 0xc0, 0x85,
3556	0x07, 0x67, 0x21, 0xc1, 0x9b, 0xe8, 0x41, 0x2f, 0x43, 0x4d, 0xb2, 0xf7, 0x09, 0x3b, 0xf6, 0xec,
3557	0x40, 0xb9, 0x7e, 0xf9, 0xf3, 0x1e, 0xc9, 0xb6, 0x18, 0x14, 0x9e, 0xfe, 0x5c, 0x02, 0xa4, 0x9c,
3558	0x06, 0x7a, 0x05, 0xea, 0xe4, 0xd4, 0xf7, 0x62, 0x3f, 0x23, 0xf4, 0xb6, 0x8c, 0x6b, 0xb2, 0x35,
3559	0x84, 0x2d, 0x42, 0xb1, 0x6f, 0x9d, 0x9a, 0x56, 0x97, 0x88, 0xf4, 0xa6, 0x8c, 0x0b, 0x7d, 0xeb,
3560	0x74, 0xbd, 0xcb, 0x73, 0xaf, 0x19, 0x39, 0x48, 0x87, 0x12, 0x9b, 0xb8, 0xcc, 0xb1, 0x7a, 0x5c,
3561	0xcd, 0xc6, 0xed, 0xa0, 0x5c, 0xb0, 0x8d, 0x58, 0x06, 0x7d, 0x04, 0x45, 0xe2, 0x5a, 0x4f, 0x7b,
3562	0xc4, 0x56, 0x19, 0xe1, 0x05, 0xe2, 0x46, 0xd2, 0x9a, 0x85, 0x62, 0xe8, 0x10, 0xea, 0xca, 0xe9,
3563	0x84, 0x44, 0x57, 0xb7, 0x1e, 0xed, 0x09, 0xac, 0x72, 0xc9, 0x4d, 0xc5, 0x8a, 0xa1, 0x1e, 0x1c,
3564	0x5b, 0xb6, 0xf7, 0x3c, 0x62, 0x85, 0xab, 0xdb, 0xa4, 0x9a, 0xa4, 0x50, 0x9c, 0xc6, 0x2c, 0xcc,
3565	0x28, 0xb2, 0xf8, 0xdc, 0xb6, 0xfe, 0xeb, 0x3a, 0x54, 0x12, 0x59, 0x37, 0x7a, 0x19, 0x8a, 0x2a,
3566	0x72, 0x1c, 0x0a, 0xd3, 0xf8, 0x6f, 0x56, 0x3d, 0xe8, 0x6d, 0xa8, 0xab, 0x3f, 0xd5, 0xfe, 0xc9,
3567	0x93, 0x60, 0xd4, 0x5e, 0x18, 0x40, 0x4b, 0x4b, 0xda, 0x2f, 0x34, 0xed, 0x6b, 0x6d, 0x82, 0xff,
3568	0x2a, 0x05, 0x93, 0x1b, 0x8a, 0x30, 0xcc, 0x3c, 0x57, 0x7e, 0x37, 0x2e, 0x23, 0xcb, 0x80, 0xed,
3569	0xe5, 0x4b, 0x38, 0xe9, 0xf6, 0x04, 0xd6, 0x9f, 0xa7, 0x9b, 0x02, 0xf4, 0xbb, 0x1a, 0xdc, 0x0a,
3570	0x27, 0xe3, 0x7a, 0xcc, 0x3c, 0xf2, 0x06, 0xae, 0x1d, 0xe5, 0xf9, 0x66, 0xc7, 0xb3, 0x89, 0x28,
3571	0x77, 0xd5, 0xd7, 0x3e, 0x18, 0x53, 0x71, 0x08, 0x63, 0x80, 0x5d, 0x8f, 0x3d, 0xe0, 0x24, 0x61,
3572	0xa6, 0xbf, 0xe1, 0xd9, 0xc9, 0xb2, 0xf8, 0xf5, 0xce, 0xf9, 0xb0, 0x8c, 0x78, 0x34, 0x7f, 0xe5,
3573	0x78, 0x74, 0x0d, 0xea, 0xd2, 0xd7, 0x9a, 0x94, 0x3c, 0xa7, 0x0e, 0x53, 0x87, 0xdf, 0xa8, 0xbc,
3574	0x30, 0xe2, 0xbb, 0x82, 0x9a, 0x84, 0x60, 0x89, 0x40, 0xfb, 0x50, 0x13, 0xa6, 0x22, 0x12, 0x59,
3575	0x4a, 0x1d, 0x97, 0x73, 0x1c, 0xeb, 0xba, 0x6b, 0x1f, 0x0c, 0x9e, 0x06, 0xcc, 0x61, 0x03, 0x46,
3576	0x70, 0x55, 0x30, 0x84, 0x8c, 0x3b, 0x50, 0x3d, 0xf6, 0x02, 0x16, 0x11, 0x16, 0xc4, 0x1c, 0x7e,
3577	0x90, 0x98, 0xc3, 0x37, 0x7f, 0xf4, 0x3f, 0xbf, 0x3f, 0xb5, 0x00, 0x73, 0x49, 0x98, 0xd9, 0x73,
3578	0x18, 0xa1, 0x56, 0xaf, 0xad, 0xe1, 0x0a, 0x6f, 0x0f, 0xd9, 0xda, 0x30, 0x63, 0x0d, 0x98, 0x67,
3579	0xa6, 0x28, 0xc7, 0x6a, 0x5c, 0x5b, 0xc3, 0xd3, 0x5c, 0xac, 0x9d, 0x60, 0xb2, 0xa0, 0x31, 0xc2,
3580	0x14, 0x9e, 0xc2, 0x1b, 0x62, 0x8e, 0xdf, 0x57, 0x73, 0xd4, 0xc2, 0x39, 0xce, 0xc3, 0x6c, 0x06,
3581	0xba, 0xad, 0xe1, 0xf9, 0x21, 0x72, 0x75, 0x4c, 0xef, 0x42, 0x91, 0x2b, 0x94, 0x37, 0x60, 0xca,
3582	0x55, 0x5e, 0x1b, 0x99, 0xe2, 0x7d, 0x75, 0x8d, 0x85, 0x43, 0x24, 0xfa, 0x21, 0x54, 0x1d, 0xbb,
3583	0x47, 0xcc, 0x50, 0xb2, 0x31, 0x4e, 0xb2, 0xc2, 0xe1, 0x87, 0x4a, 0x7a, 0xb8, 0xe2, 0x5b, 0xfe,
3584	0x65, 0x57, 0x7c, 0x6f, 0x7f, 0x8b, 0x8a, 0xef, 0x33, 0x98, 0x0f, 0x53, 0x96, 0xbe, 0x43, 0xa9,
3585	0x47, 0xc3, 0xd9, 0x49, 0x5b, 0x74, 0x77, 0x9c, 0x3e, 0xa9, 0x7c, 0xfe, 0x91, 0x90, 0x95, 0xf4,
3586	0x22, 0x86, 0x0f, 0xf3, 0xa3, 0x64, 0x07, 0x7a, 0xc6, 0x93, 0x9c, 0xd1, 0xc1, 0x1c, 0x12, 0x34,
3587	0x6e, 0x8e, 0xa9, 0x17, 0x9d, 0x3f, 0x1c, 0x9e, 0x1f, 0x1d, 0xca, 0x21, 0x3c, 0x12, 0x2a, 0xf9,
3588	0xd4, 0xf1, 0xa8, 0xc3, 0xce, 0x44, 0xf0, 0x52, 0x1f, 0x2e, 0x29, 0x4a, 0xc3, 0xea, 0x0d, 0x98,
3589	0xe3, 0x76, 0xf7, 0x15, 0x32, 0x61, 0x03, 0x22, 0xe9, 0xe1, 0x9b, 0xac, 0xda, 0x55, 0x6f, 0xb2,
3590	0xf6, 0x60, 0x21, 0xbc, 0x34, 0x38, 0x39, 0x36, 0x93, 0x54, 0xf5, 0xb1, 0xee, 0x6c, 0x56, 0x49,
3591	0x3e, 0x39, 0xc6, 0x31, 0xe1, 0x43, 0xa8, 0x1c, 0x5b, 0xc1, 0x71, 0xb8, 0x55, 0xf2, 0xba, 0xe4,
3592	0xce, 0xb8, 0xb5, 0x6b, 0x5b, 0xc1, 0xb1, 0x5a, 0x32, 0x38, 0x8e, 0xfe, 0x8e, 0x6e, 0x88, 0x66,
3593	0xae, 0x70, 0x43, 0xb4, 0x01, 0x3a, 0x77, 0xda, 0x3c, 0x4e, 0x8c, 0x94, 0x61, 0x71, 0x9c, 0x32,
3594	0xd4, 0xfb, 0xd6, 0x29, 0x8f, 0xfc, 0x42, 0x7d, 0xd8, 0x82, 0xd9, 0x24, 0x81, 0xe9, 0x1d, 0x1d,
3595	0x05, 0x84, 0x35, 0x5e, 0x1a, 0xc7, 0x33, 0xd3, 0x8d, 0x49, 0xf6, 0x84, 0x0c, 0x7a, 0x02, 0xd3,
3596	0x03, 0xbf, 0x4b, 0x2d, 0x9b, 0x28, 0x5d, 0x08, 0x1a, 0xd7, 0xc4, 0xa2, 0xbc, 0x31, 0x6e, 0x51,
3597	0x1e, 0x4b, 0x31, 0xa9, 0x0d, 0xb8, 0x3e, 0x48, 0x7e, 0x06, 0xc8, 0x87, 0x86, 0xe3, 0x32, 0x42,
3598	0x5d, 0xab, 0x67, 0x86, 0x95, 0xe6, 0xb0, 0x14, 0xdc, 0x14, 0x67, 0xea, 0xed, 0x71, 0x03, 0x6c,
3599	0x29, 0xf9, 0x74, 0xe9, 0x1a, 0x2f, 0x38, 0x99, 0xed, 0x08, 0xc3, 0x02, 0x5f, 0xd9, 0x91, 0x51,
3600	0x83, 0xc6, 0xad, 0x4b, 0x94, 0x4c, 0xe6, 0xfa, 0xd6, 0xe9, 0xf0, 0x80, 0xc1, 0xc8, 0xad, 0xce,
3601	0xf5, 0xab, 0xdf, 0xea, 0x34, 0xff, 0x5b, 0x83, 0xd9, 0x0c, 0xe5, 0x43, 0xb7, 0xcf, 0x8b, 0x25,
3602	0xe2, 0x48, 0xe2, 0x55, 0xa8, 0x24, 0x4a, 0x4a, 0x2a, 0x8c, 0x88, 0x63, 0x63, 0x88, 0xab, 0x4a,
3603	0x99, 0x89, 0x5a, 0xee, 0x97, 0x90, 0xa8, 0xfd, 0x18, 0x6a, 0x8c, 0x5a, 0x1d, 0x62, 0x06, 0x56,
3604	0xdf, 0xe7, 0x91, 0xd6, 0xf8, 0x14, 0xb2, 0x2a, 0x04, 0x0e, 0x24, 0xbe, 0xf9, 0x37, 0x05, 0x80,
3605	0x58, 0x7f, 0xd0, 0x43, 0x28, 0x28, 0x77, 0x24, 0x93, 0x91, 0x37, 0x2f, 0xaf, 0x7b, 0x2a, 0x1d,
3606	0xe4, 0xd9, 0xb6, 0xa4, 0xe0, 0x64, 0x1d, 0xcf, 0x7b, 0xe6, 0x84, 0xd9, 0xfc, 0x55, 0xc8, 0x36,
3607	0x84, 0x20, 0x27, 0x93, 0x14, 0xe8, 0x04, 0xe6, 0x3b, 0x9e, 0xeb, 0x12, 0x81, 0x34, 0x7d, 0xea,
3608	0xf9, 0x84, 0x32, 0x87, 0x84, 0x21, 0xd8, 0x8f, 0xaf, 0xc4, 0x1d, 0xf2, 0xec, 0x47, 0x34, 0xed,
3609	0x09, 0x3c, 0xd7, 0xc9, 0x68, 0x47, 0x36, 0x4c, 0x0f, 0x65, 0xb3, 0xea, 0xb6, 0xe2, 0xbd, 0x2b,
3610	0x8c, 0x98, 0xce, 0x71, 0xdb, 0x13, 0xb8, 0x9e, 0x4e, 0x6f, 0xd1, 0xa7, 0xa0, 0xae, 0x55, 0xcc,
3611	0x80, 0x59, 0x2a, 0x60, 0xa9, 0x8c, 0xd7, 0xc1, 0xc4, 0x10, 0xb2, 0xba, 0x72, 0xc0, 0xa5, 0xdb,
3612	0x13, 0xb8, 0x72, 0x14, 0x7f, 0xa2, 0x26, 0x94, 0x18, 0xa1, 0x7d, 0xc7, 0xb5, 0x7a, 0xe2, 0x7c,
3613	0x94, 0x70, 0xf4, 0xdd, 0x7c, 0x17, 0x0a, 0x2a, 0x70, 0x58, 0x81, 0x8a, 0xdc, 0x37, 0x33, 0x51,
3614	0xe7, 0x4c, 0x07, 0xc5, 0x18, 0x24, 0x62, 0xd7, 0xea, 0x93, 0xe6, 0x11, 0x14, 0xe4, 0x26, 0x5d,
3615	0x5c, 0x1a, 0x7d, 0x0d, 0x72, 0x8c, 0xf5, 0xd4, 0x09, 0xb8, 0xc0, 0xf8, 0x71, 0x14, 0x42, 0xaa,
3616	0x3e, 0x23, 0xd3, 0x2e, 0xf1, 0x77, 0xf3, 0x2e, 0xcc, 0x65, 0x6d, 0x18, 0xba, 0x0e, 0xe5, 0xc0,
3617	0x1b, 0xd0, 0x0e, 0x31, 0x1d, 0x5f, 0x0c, 0x5d, 0xc2, 0x25, 0xd9, 0xb0, 0xe5, 0x37, 0xdf, 0x80,
3618	0x7a, 0x7a, 0xcd, 0x2f, 0x9c, 0x64, 0x73, 0x19, 0x2a, 0x89, 0xf5, 0x43, 0xd7, 0x12, 0x75, 0xa9,
3619	0x18, 0xca, 0xdb, 0x8c, 0x45, 0xd0, 0x55, 0x84, 0x92, 0x4e, 0x9f, 0x9b, 0x03, 0xa8, 0xa5, 0x4c,
3620	0x2e, 0x5a, 0x81, 0x6a, 0x68, 0xba, 0x79, 0x30, 0xa3, 0xd8, 0x52, 0x71, 0x70, 0x45, 0x01, 0xc4,
3621	0x55, 0xe9, 0xbd, 0x38, 0x9b, 0x1b, 0x9f, 0xce, 0x87, 0xd0, 0xd6, 0x26, 0x5c, 0xbf, 0x20, 0xf2,
3622	0x47, 0x8b, 0x30, 0x7b, 0xb0, 0x89, 0x9f, 0x6c, 0x6d, 0x6c, 0x9a, 0x8f, 0x77, 0xd7, 0x9f, 0xac,
3623	0x6f, 0xed, 0xac, 0x1b, 0x3b, 0x9b, 0xfa, 0x04, 0xaa, 0x41, 0x79, 0x77, 0xef, 0xd0, 0x7c, 0xb0,
3624	0xf7, 0x78, 0xf7, 0xbe, 0xae, 0xb5, 0x7e, 0x13, 0x16, 0xb2, 0xed, 0x39, 0x6a, 0xc1, 0xcd, 0xfd,
3625	0xf5, 0x83, 0x03, 0xf3, 0xb0, 0x8d, 0xf7, 0x1e, 0x7f, 0xdc, 0x36, 0xb7, 0x76, 0xd5, 0x25, 0x2e,
3626	0xde, 0xbc, 0xbf, 0x85, 0x37, 0x37, 0x0e, 0xf5, 0x09, 0xf4, 0x12, 0x34, 0xda, 0xeb, 0xbb, 0xf7,
3627	0x77, 0x36, 0x33, 0x7a, 0x35, 0xa3, 0x01, 0x33, 0x61, 0x8e, 0x93, 0x5e, 0x33, 0xa3, 0x01, 0x0b,
3628	0xa9, 0xd8, 0x36, 0xea, 0xde, 0xce, 0x97, 0xaa, 0x7a, 0x6d, 0x3b, 0x5f, 0x42, 0xfa, 0xec, 0x76,
3629	0xbe, 0x34, 0xab, 0xcf, 0x6d, 0xe7, 0x4b, 0xba, 0x3e, 0xb3, 0x9d, 0x2f, 0x2d, 0xe8, 0x8b, 0xdb,
3630	0xf9, 0xd2, 0xbc, 0xbe, 0xd0, 0xfa, 0x8f, 0x32, 0x54, 0x12, 0xf1, 0x24, 0xba, 0x06, 0x25, 0x19,
3631	0x42, 0xaa, 0x1b, 0xe3, 0x32, 0x2e, 0x8a, 0xef, 0x3d, 0x17, 0x7d, 0x08, 0x15, 0x77, 0xd0, 0x37,
3632	0xf9, 0x27, 0x37, 0x19, 0x97, 0x29, 0xd2, 0x83, 0x3b, 0xe8, 0x63, 0x89, 0x47, 0xeb, 0x30, 0xed,
3633	0x13, 0x6a, 0x72, 0xee, 0x30, 0x28, 0xc8, 0x8d, 0x3b, 0xcf, 0x35, 0x9f, 0xd0, 0x43, 0x7a, 0x16,
3634	0xc6, 0x04, 0x87, 0x50, 0x57, 0xf1, 0x6d, 0x18, 0xba, 0x49, 0x4b, 0xfd, 0xc6, 0x98, 0x28, 0x59,
3635	0xfd, 0xad, 0x84, 0x70, 0x8d, 0x26, 0x3f, 0x91, 0x0d, 0x73, 0x92, 0x55, 0x2c, 0xa3, 0xcf, 0x7d,
3636	0x6a, 0xc7, 0x12, 0x39, 0x17, 0x8f, 0x11, 0xd6, 0x2e, 0xc5, 0xcd, 0x53, 0x88, 0xfd, 0x50, 0x12,
3637	0x23, 0x3a, 0xd2, 0x86, 0xda, 0x70, 0x5b, 0xf0, 0x07, 0xa4, 0xa7, 0xcc, 0xaf, 0x1c, 0x54, 0x94,
3638	0x37, 0xe4, 0x23, 0x10, 0x59, 0xc0, 0xc8, 0xe1, 0x1b, 0x1c, 0x78, 0x10, 0xe2, 0x04, 0xff, 0x23,
3639	0xeb, 0x54, 0xbd, 0x14, 0x09, 0xd0, 0x3d, 0x10, 0xe1, 0xba, 0xc3, 0xcf, 0xae, 0x29, 0x5f, 0xaa,
3640	0x89, 0x24, 0x57, 0x16, 0x08, 0x6b, 0x78, 0x2e, 0xea, 0x3d, 0x10, 0x9d, 0xfc, 0x0c, 0x07, 0x08,
3641	0x87, 0x6b, 0xf7, 0xd4, 0xea, 0x3c, 0xe3, 0xd1, 0x94, 0xca, 0x6c, 0x5e, 0xbf, 0xd4, 0xef, 0x33,
3642	0xac, 0xce, 0xb3, 0xbd, 0xa3, 0x23, 0x2c, 0x73, 0x14, 0xf5, 0x85, 0x76, 0x61, 0x26, 0x9e, 0x49,
3643	0x58, 0xc7, 0x29, 0x5f, 0xb6, 0xd6, 0xa9, 0x47, 0xb2, 0x61, 0xb5, 0xe7, 0x33, 0x99, 0xbf, 0x48,
3644	0xbe, 0xa1, 0xbb, 0x12, 0x55, 0xca, 0xbf, 0x04, 0xef, 0x62, 0xc4, 0x81, 0x53, 0xb7, 0x29, 0xcd,
3645	0x3f, 0xd7, 0xa0, 0x96, 0x3a, 0x09, 0x17, 0x1b, 0xdd, 0xb7, 0xb8, 0xe7, 0x15, 0xa9, 0xd3, 0xc5,
3646	0x95, 0x7a, 0x9e, 0xd1, 0x48, 0x1f, 0x2b, 0x4c, 0xd6, 0x7b, 0x50, 0x4d, 0xe5, 0x5d, 0xb9, 0xf3,
3647	0xf3, 0x2e, 0xee, 0x63, 0x58, 0x9c, 0x6e, 0x19, 0x35, 0xa8, 0x48, 0x21, 0x61, 0xec, 0x9a, 0x7f,
3648	0xa9, 0x01, 0x1a, 0x3d, 0x5d, 0xff, 0xc7, 0x27, 0xfd, 0x27, 0x1a, 0x54, 0x93, 0x47, 0x06, 0x6d,
3649	0x43, 0xed, 0xa9, 0x15, 0x10, 0x19, 0xb4, 0x9e, 0x58, 0x3d, 0x15, 0x14, 0x9d, 0xaf, 0xf5, 0x06,
3650	0xbc, 0x30, 0x8a, 0x5f, 0x69, 0xf9, 0x92, 0x76, 0x67, 0x02, 0x57, 0xb9, 0xec, 0x96, 0x12, 0x45,
3651	0x0f, 0xa0, 0x1a, 0xc5, 0xbf, 0x9c, 0x6a, 0x9c, 0x43, 0x14, 0x09, 0xdb, 0x57, 0xda, 0xe4, 0x9d,
3652	0x09, 0x5c, 0x09, 0x83, 0xdf, 0x13, 0xab, 0xd7, 0xfa, 0x46, 0x83, 0x4a, 0x22, 0x98, 0x45, 0xfb,
3653	0xa0, 0x3b, 0xae, 0xc3, 0x1c, 0x11, 0x52, 0x8b, 0x33, 0x13, 0xa8, 0x69, 0x5e, 0xf2, 0x96, 0x74,
3654	0x5a, 0x89, 0xab, 0x13, 0x17, 0xa0, 0x4f, 0xe0, 0x9a, 0x65, 0xdb, 0x8e, 0x8c, 0x3c, 0xa3, 0xb3,
3655	0xdc, 0x39, 0xb6, 0xdc, 0x4e, 0x18, 0xc9, 0xdd, 0x48, 0x96, 0x66, 0x46, 0xc3, 0xd4, 0xc5, 0x58,
3656	0x5e, 0xb1, 0x6e, 0x08, 0x69, 0xf4, 0x36, 0x34, 0x64, 0xc0, 0xce, 0x43, 0xb8, 0x0c, 0x8b, 0x5a,
3657	0xc2, 0x73, 0xa2, 0x7f, 0xcf, 0xdd, 0x4f, 0x5a, 0xcf, 0xd6, 0x3f, 0xe7, 0xa1, 0x3e, 0xe4, 0x97,
3658	0x7e, 0x00, 0xf5, 0x63, 0xc6, 0xfc, 0x20, 0x4a, 0x24, 0x64, 0x68, 0xd3, 0x9e, 0xc0, 0x35, 0xd1,
3659	0x1e, 0xc2, 0xd1, 0xab, 0x30, 0x1d, 0x74, 0x8e, 0x49, 0x9f, 0xc4, 0xc8, 0xa2, 0xba, 0xfe, 0xa9,
3660	0xcb, 0x8e, 0x08, 0xfa, 0x6b, 0x50, 0x53, 0xfe, 0x48, 0x01, 0x33, 0x7c, 0x76, 0x55, 0x56, 0x86,
3661	0x94, 0xc4, 0xcb, 0x50, 0xf3, 0x3d, 0x9a, 0x90, 0xe0, 0x96, 0xa9, 0x86, 0xab, 0xbc, 0x31, 0x02,
3662	0xad, 0x41, 0x4d, 0x14, 0xdc, 0x23, 0xd0, 0xe4, 0x08, 0x6d, 0x5b, 0xc3, 0x55, 0x8e, 0x89, 0x64,
3663	0xee, 0x5d, 0xa2, 0x8e, 0xd6, 0xd6, 0x86, 0x2b, 0x69, 0x47, 0x50, 0x4b, 0x17, 0x0f, 0x73, 0x22,
3664	0x97, 0x7b, 0x67, 0xfc, 0x93, 0xa3, 0xe8, 0xf3, 0x9c, 0xc2, 0x61, 0x95, 0x26, 0xc3, 0x8a, 0x5b,
3665	0x50, 0x09, 0x18, 0x75, 0x7c, 0x53, 0x84, 0xb1, 0xc2, 0xf6, 0x97, 0x30, 0x88, 0x26, 0x11, 0x76,
3666	0xb5, 0x9e, 0xc3, 0x5c, 0x16, 0x21, 0x9a, 0x87, 0x99, 0x47, 0x7b, 0x4f, 0x36, 0xef, 0x9b, 0xfb,
3667	0x9b, 0xf8, 0xd1, 0xfa, 0xee, 0xe6, 0xee, 0xe1, 0xce, 0x27, 0xfa, 0x04, 0x2a, 0xc3, 0x94, 0x8a,
3668	0x44, 0x78, 0x60, 0x72, 0xb0, 0xb9, 0x69, 0xee, 0x1d, 0xb6, 0x37, 0xb1, 0x3e, 0x89, 0x16, 0x00,
3669	0x1d, 0x6e, 0x3e, 0xda, 0xdf, 0xc3, 0xeb, 0xf8, 0x93, 0x38, 0xa8, 0xc8, 0xf1, 0xf6, 0x88, 0x22,
3670	0x6e, 0xcf, 0x1b, 0x4d, 0x68, 0x44, 0xbb, 0x3d, 0x14, 0x54, 0xf0, 0x70, 0x43, 0xed, 0xc3, 0x50,
3671	0x4f, 0xab, 0x0f, 0x73, 0x59, 0x0f, 0xa7, 0x50, 0x0b, 0x0a, 0xd2, 0x4b, 0x89, 0x93, 0x50, 0x13,
3672	0xea, 0x7d, 0x67, 0x4a, 0xff, 0xc7, 0xfc, 0xb2, 0x8d, 0x55, 0x0f, 0x7a, 0x13, 0xf2, 0x4f, 0x3d,
3673	0xfb, 0x6c, 0x48, 0x33, 0x92, 0xe9, 0xdc, 0x7d, 0x8b, 0x59, 0x07, 0x22, 0x32, 0xc5, 0x02, 0xda,
3674	0xea, 0x41, 0x39, 0x7a, 0xd6, 0x84, 0x5e, 0x81, 0x32, 0x8f, 0x69, 0xad, 0xe8, 0xa5, 0x5b, 0xc2,
3675	0x30, 0xc6, 0x3d, 0xf2, 0xa6, 0xc8, 0xf3, 0xad, 0xae, 0x15, 0xbd, 0x42, 0x1b, 0x73, 0x53, 0xa4,
3676	0xc0, 0xad, 0x3f, 0x9d, 0x84, 0xa2, 0x7a, 0xf8, 0x82, 0x1e, 0xc0, 0x74, 0xa7, 0xe7, 0x10, 0x97,
3677	0xc9, 0x84, 0xd1, 0x71, 0xbb, 0xca, 0x58, 0x8c, 0xd1, 0xe8, 0xba, 0x94, 0x3a, 0x50, 0x42, 0x9c,
3678	0x87, 0x5a, 0xae, 0xed, 0xf5, 0x63, 0x9e, 0x4b, 0x59, 0x86, 0xba, 0x94, 0x8a, 0x78, 0xda, 0xa0,
3679	0x7b, 0x27, 0x84, 0x5a, 0xbd, 0x5e, 0x4c, 0x94, 0xbb, 0x0c, 0xd1, 0xb4, 0x12, 0x8b, 0x98, 0xd6,
3680	0xa1, 0x12, 0xbf, 0xed, 0x0f, 0xd4, 0xeb, 0x87, 0xd4, 0xdd, 0xac, 0x7a, 0xf3, 0xc3, 0xb7, 0x65,
3681	0x43, 0x20, 0x0f, 0xad, 0x2e, 0x86, 0x4e, 0xf8, 0x67, 0xd0, 0xfa, 0x27, 0x0d, 0xea, 0xe9, 0xc7,
3682	0xdf, 0xe8, 0x0e, 0x14, 0x7d, 0x1e, 0xe2, 0xd0, 0x70, 0x6b, 0x46, 0x2e, 0x87, 0x71, 0x08, 0x48,
3683	0x5e, 0x9a, 0xe6, 0xaf, 0x7c, 0x69, 0x1a, 0x7a, 0xc6, 0xc9, 0x2c, 0xcf, 0x68, 0x40, 0x41, 0xde,
3684	0x5a, 0x29, 0x7d, 0x5e, 0xca, 0xaa, 0x19, 0xa8, 0x1a, 0x86, 0xc0, 0x25, 0xaa, 0x10, 0x4a, 0xb2,
3685	0xf5, 0x0f, 0x65, 0x28, 0x47, 0x95, 0x36, 0xf4, 0x01, 0x4c, 0x05, 0xcc, 0xea, 0x92, 0x2b, 0xb8,
3686	0x8a, 0x06, 0x60, 0x29, 0xc3, 0xb5, 0xdf, 0x76, 0x02, 0x11, 0xe9, 0x44, 0x75, 0x0f, 0x0c, 0xaa,
3687	0xe9, 0x21, 0x39, 0x43, 0x6d, 0x28, 0xca, 0xfd, 0x0a, 0xff, 0x0d, 0xc0, 0xf7, 0x2e, 0xac, 0x29,
3688	0xae, 0x48, 0x6d, 0x4b, 0x3c, 0x00, 0x0a, 0xc5, 0x9b, 0x7f, 0x5c, 0x82, 0x82, 0xd2, 0xc5, 0x4f,
3689	0xa1, 0xae, 0xf2, 0xbd, 0x64, 0x5d, 0xe6, 0xbc, 0x28, 0x77, 0x88, 0x7b, 0x45, 0xea, 0x5f, 0x7c,
3690	0x17, 0x53, 0x0b, 0x92, 0x0d, 0xe8, 0x67, 0x30, 0x6b, 0x93, 0x80, 0x39, 0xae, 0x50, 0xb6, 0x68,
3691	0x04, 0x79, 0xa6, 0xdf, 0xb9, 0xd4, 0x08, 0xf7, 0x63, 0xf9, 0x78, 0x18, 0x64, 0x8f, 0xb4, 0xa2,
3692	0x9f, 0xc2, 0xf4, 0x70, 0x80, 0x98, 0xbb, 0xa0, 0x26, 0x3d, 0x3c, 0x4e, 0x3a, 0x32, 0xe4, 0x5e,
3693	0x2c, 0xfd, 0xf2, 0x86, 0x2f, 0x14, 0x25, 0x7d, 0x8f, 0x11, 0xd3, 0xb2, 0x6d, 0x4a, 0x82, 0x40,
3694	0xa5, 0x1a, 0x6b, 0x97, 0xa4, 0xe7, 0xa2, 0xeb, 0x52, 0x92, 0x2f, 0x14, 0x4d, 0x36, 0x20, 0x0c,
3695	0x95, 0x2e, 0x71, 0x09, 0x75, 0x3a, 0x62, 0xef, 0x65, 0x29, 0x64, 0xf5, 0x52, 0xcc, 0x1f, 0x4b,
3696	0xb9, 0x87, 0x84, 0xc7, 0x61, 0xd0, 0x8d, 0xbe, 0x10, 0x01, 0xa4, 0x2a, 0x0f, 0xe2, 0x61, 0x87,
3697	0xba, 0x7b, 0x2a, 0x5c, 0x70, 0x2f, 0x3f, 0x4c, 0x9d, 0x78, 0x2f, 0x24, 0x34, 0xab, 0x3d, 0x81,
3698	0xf5, 0xe3, 0xa1, 0xb6, 0xe6, 0x34, 0xd4, 0x52, 0xa7, 0xa0, 0x39, 0x07, 0x68, 0x74, 0xd3, 0x9a,
3699	0x3e, 0x0f, 0x35, 0x52, 0x0b, 0x7a, 0xc5, 0xca, 0x08, 0x5a, 0x81, 0xba, 0x4d, 0x82, 0x0e, 0x75,
3700	0x7c, 0xe6, 0xd1, 0x44, 0x69, 0x30, 0xd2, 0xea, 0x5a, 0xdc, 0xfd, 0x90, 0x9c, 0xf1, 0x89, 0xa5,
3701	0x56, 0xbd, 0xf9, 0x11, 0x40, 0xbc, 0x58, 0x68, 0x0d, 0xf4, 0x04, 0x9d, 0x7c, 0x1e, 0x33, 0xe4,
3702	0x27, 0xa6, 0x63, 0x80, 0xf8, 0xc1, 0xcd, 0xbf, 0xd5, 0x40, 0x1f, 0x5e, 0x94, 0x6f, 0x43, 0x84,
3703	0x3e, 0x84, 0x2a, 0x39, 0xf5, 0x49, 0x87, 0xa9, 0x5d, 0x19, 0xef, 0x79, 0x2a, 0x12, 0x2f, 0x87,
3704	0xdc, 0x8c, 0x6d, 0x62, 0xee, 0x92, 0x36, 0x31, 0x69, 0x06, 0x94, 0xac, 0xb1, 0x08, 0xba, 0xb4,
3705	0x08, 0x43, 0x15, 0x84, 0xd6, 0xbf, 0xe4, 0xa0, 0x96, 0x92, 0x46, 0xb7, 0x53, 0x29, 0xc6, 0xd0,
3706	0x2e, 0x49, 0x73, 0x7a, 0x1b, 0x2a, 0xe4, 0xd4, 0x8a, 0x7e, 0x52, 0x5e, 0x45, 0x83, 0x20, 0x1a,
3707	0xe5, 0xbc, 0xef, 0x42, 0x45, 0x5e, 0x49, 0x4a, 0xc8, 0xd4, 0xb9, 0x0f, 0x83, 0x80, 0x46, 0x17,
3708	0x92, 0x68, 0x07, 0xf4, 0xf8, 0x75, 0x50, 0xf4, 0x6e, 0xe1, 0x52, 0x6f, 0x84, 0x44, 0x30, 0x1a,
3709	0xbe, 0x0c, 0x92, 0x6c, 0xef, 0x41, 0x45, 0xfc, 0x7b, 0xb6, 0x94, 0x3a, 0x2c, 0x24, 0x89, 0xb6,
3710	0x5c, 0xf6, 0xf6, 0x3d, 0xcc, 0x31, 0x62, 0x22, 0xfc, 0x0f, 0x29, 0xfa, 0x0a, 0xd4, 0xd4, 0x43,
3711	0x11, 0x25, 0x5c, 0x54, 0xa1, 0x71, 0x55, 0x35, 0x4b, 0xd8, 0xeb, 0x50, 0x55, 0x31, 0xa6, 0x44,
3712	0x95, 0x87, 0xef, 0xcc, 0x2b, 0xb2, 0x3b, 0x42, 0x07, 0x83, 0xa3, 0x18, 0x0d, 0x23, 0x68, 0xd9,
3713	0x2d, 0xd1, 0xb7, 0xa1, 0xea, 0xb8, 0x27, 0x84, 0x86, 0x33, 0x28, 0x89, 0x10, 0xb1, 0x22, 0xdb,
3714	0xe4, 0x23, 0xfb, 0x06, 0x2c, 0x28, 0xb5, 0x12, 0x90, 0x54, 0xf5, 0x67, 0x52, 0xcf, 0x6d, 0xe7,
3715	0x4b, 0x39, 0x3d, 0xdf, 0xfa, 0x8b, 0x49, 0x98, 0xcf, 0x7c, 0x22, 0x84, 0x6e, 0xa6, 0x76, 0x9a,
3716	0x87, 0x66, 0x94, 0xef, 0xd3, 0x17, 0x25, 0xb5, 0xcd, 0x37, 0xc3, 0xb7, 0x64, 0xb9, 0xa1, 0xc2,
3717	0xbc, 0x6c, 0x46, 0xef, 0x87, 0xcf, 0xbe, 0xf2, 0x97, 0x7f, 0x3c, 0x11, 0x3e, 0x04, 0xdb, 0x87,
3718	0x6a, 0xea, 0x79, 0x8a, 0xb4, 0x83, 0xe3, 0x9f, 0xa7, 0xa4, 0xde, 0x82, 0x55, 0x82, 0xc4, 0xfb,
3719	0x94, 0x91, 0x3d, 0x2b, 0x64, 0xed, 0x99, 0x71, 0x1b, 0x6e, 0x0d, 0x95, 0xa3, 0x87, 0x57, 0xcf,
3720	0x30, 0xc5, 0xbd, 0xf1, 0x22, 0x9a, 0x97, 0x93, 0x91, 0x19, 0xae, 0xd2, 0xb4, 0x93, 0xbb, 0x7f,
3721	0xfd, 0xc5, 0xd7, 0x7f, 0x57, 0x98, 0xd4, 0x35, 0x58, 0x72, 0x3c, 0x39, 0x5d, 0x9f, 0x7a, 0xa7,
3722	0x67, 0x19, 0x6a, 0x69, 0xcc, 0x89, 0x52, 0xf3, 0x46, 0xf4, 0xcf, 0x3f, 0xf7, 0xf9, 0xc2, 0xec,
3723	0x6b, 0x4f, 0x0b, 0x62, 0x85, 0xee, 0xfe, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x23, 0xa3, 0xe0,
3724	0x4b, 0x33, 0x3a, 0x00, 0x00,
3725}
3726