// Code generated by protoc-gen-go. DO NOT EDIT.
// source: envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto

package envoy_extensions_filters_network_http_connection_manager_v3

import (
	fmt "fmt"
	_ "github.com/cncf/udpa/go/udpa/annotations"
	_ "github.com/envoyproxy/go-control-plane/envoy/annotations"
	v32 "github.com/envoyproxy/go-control-plane/envoy/config/accesslog/v3"
	v31 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
	v3 "github.com/envoyproxy/go-control-plane/envoy/config/route/v3"
	v35 "github.com/envoyproxy/go-control-plane/envoy/config/trace/v3"
	v34 "github.com/envoyproxy/go-control-plane/envoy/type/tracing/v3"
	v33 "github.com/envoyproxy/go-control-plane/envoy/type/v3"
	_ "github.com/envoyproxy/protoc-gen-validate/validate"
	proto "github.com/golang/protobuf/proto"
	any "github.com/golang/protobuf/ptypes/any"
	duration "github.com/golang/protobuf/ptypes/duration"
	_struct "github.com/golang/protobuf/ptypes/struct"
	wrappers "github.com/golang/protobuf/ptypes/wrappers"
	math "math"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package

type HttpConnectionManager_CodecType int32

const (
	HttpConnectionManager_AUTO  HttpConnectionManager_CodecType = 0
	HttpConnectionManager_HTTP1 HttpConnectionManager_CodecType = 1
	HttpConnectionManager_HTTP2 HttpConnectionManager_CodecType = 2
	HttpConnectionManager_HTTP3 HttpConnectionManager_CodecType = 3
)

var HttpConnectionManager_CodecType_name = map[int32]string{
	0: "AUTO",
	1: "HTTP1",
	2: "HTTP2",
	3: "HTTP3",
}

var HttpConnectionManager_CodecType_value = map[string]int32{
	"AUTO":  0,
	"HTTP1": 1,
	"HTTP2": 2,
	"HTTP3": 3,
}

func (x HttpConnectionManager_CodecType) String() string {
	return proto.EnumName(HttpConnectionManager_CodecType_name, int32(x))
}

func (HttpConnectionManager_CodecType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{0, 0}
}

type HttpConnectionManager_ServerHeaderTransformation int32

const (
	HttpConnectionManager_OVERWRITE        HttpConnectionManager_ServerHeaderTransformation = 0
	HttpConnectionManager_APPEND_IF_ABSENT HttpConnectionManager_ServerHeaderTransformation = 1
	HttpConnectionManager_PASS_THROUGH     HttpConnectionManager_ServerHeaderTransformation = 2
)

var HttpConnectionManager_ServerHeaderTransformation_name = map[int32]string{
	0: "OVERWRITE",
	1: "APPEND_IF_ABSENT",
	2: "PASS_THROUGH",
}

var HttpConnectionManager_ServerHeaderTransformation_value = map[string]int32{
	"OVERWRITE":        0,
	"APPEND_IF_ABSENT": 1,
	"PASS_THROUGH":     2,
}

func (x HttpConnectionManager_ServerHeaderTransformation) String() string {
	return proto.EnumName(HttpConnectionManager_ServerHeaderTransformation_name, int32(x))
}

func (HttpConnectionManager_ServerHeaderTransformation) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{0, 1}
}

type HttpConnectionManager_ForwardClientCertDetails int32

const (
	HttpConnectionManager_SANITIZE            HttpConnectionManager_ForwardClientCertDetails = 0
	HttpConnectionManager_FORWARD_ONLY        HttpConnectionManager_ForwardClientCertDetails = 1
	HttpConnectionManager_APPEND_FORWARD      HttpConnectionManager_ForwardClientCertDetails = 2
	HttpConnectionManager_SANITIZE_SET        HttpConnectionManager_ForwardClientCertDetails = 3
	HttpConnectionManager_ALWAYS_FORWARD_ONLY HttpConnectionManager_ForwardClientCertDetails = 4
)

var HttpConnectionManager_ForwardClientCertDetails_name = map[int32]string{
	0: "SANITIZE",
	1: "FORWARD_ONLY",
	2: "APPEND_FORWARD",
	3: "SANITIZE_SET",
	4: "ALWAYS_FORWARD_ONLY",
}

var HttpConnectionManager_ForwardClientCertDetails_value = map[string]int32{
	"SANITIZE":            0,
	"FORWARD_ONLY":        1,
	"APPEND_FORWARD":      2,
	"SANITIZE_SET":        3,
	"ALWAYS_FORWARD_ONLY": 4,
}

func (x HttpConnectionManager_ForwardClientCertDetails) String() string {
	return proto.EnumName(HttpConnectionManager_ForwardClientCertDetails_name, int32(x))
}

func (HttpConnectionManager_ForwardClientCertDetails) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{0, 2}
}

type HttpConnectionManager_Tracing_OperationName int32

const (
	HttpConnectionManager_Tracing_INGRESS HttpConnectionManager_Tracing_OperationName = 0
	HttpConnectionManager_Tracing_EGRESS  HttpConnectionManager_Tracing_OperationName = 1
)

var HttpConnectionManager_Tracing_OperationName_name = map[int32]string{
	0: "INGRESS",
	1: "EGRESS",
}

var HttpConnectionManager_Tracing_OperationName_value = map[string]int32{
	"INGRESS": 0,
	"EGRESS":  1,
}

func (x HttpConnectionManager_Tracing_OperationName) String() string {
	return proto.EnumName(HttpConnectionManager_Tracing_OperationName_name, int32(x))
}

func (HttpConnectionManager_Tracing_OperationName) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{0, 0, 0}
}

type HttpConnectionManager struct {
	CodecType  HttpConnectionManager_CodecType `protobuf:"varint,1,opt,name=codec_type,json=codecType,proto3,enum=envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager_CodecType" json:"codec_type,omitempty"`
	StatPrefix string                          `protobuf:"bytes,2,opt,name=stat_prefix,json=statPrefix,proto3" json:"stat_prefix,omitempty"`
	// Types that are valid to be assigned to RouteSpecifier:
	//	*HttpConnectionManager_Rds
	//	*HttpConnectionManager_RouteConfig
	//	*HttpConnectionManager_ScopedRoutes
	RouteSpecifier                             isHttpConnectionManager_RouteSpecifier             `protobuf_oneof:"route_specifier"`
	HttpFilters                                []*HttpFilter                                      `protobuf:"bytes,5,rep,name=http_filters,json=httpFilters,proto3" json:"http_filters,omitempty"`
	AddUserAgent                               *wrappers.BoolValue                                `protobuf:"bytes,6,opt,name=add_user_agent,json=addUserAgent,proto3" json:"add_user_agent,omitempty"`
	Tracing                                    *HttpConnectionManager_Tracing                     `protobuf:"bytes,7,opt,name=tracing,proto3" json:"tracing,omitempty"`
	CommonHttpProtocolOptions                  *v31.HttpProtocolOptions                           `protobuf:"bytes,35,opt,name=common_http_protocol_options,json=commonHttpProtocolOptions,proto3" json:"common_http_protocol_options,omitempty"`
	HttpProtocolOptions                        *v31.Http1ProtocolOptions                          `protobuf:"bytes,8,opt,name=http_protocol_options,json=httpProtocolOptions,proto3" json:"http_protocol_options,omitempty"`
	Http2ProtocolOptions                       *v31.Http2ProtocolOptions                          `protobuf:"bytes,9,opt,name=http2_protocol_options,json=http2ProtocolOptions,proto3" json:"http2_protocol_options,omitempty"`
	ServerName                                 string                                             `protobuf:"bytes,10,opt,name=server_name,json=serverName,proto3" json:"server_name,omitempty"`
	ServerHeaderTransformation                 HttpConnectionManager_ServerHeaderTransformation   `protobuf:"varint,34,opt,name=server_header_transformation,json=serverHeaderTransformation,proto3,enum=envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager_ServerHeaderTransformation" json:"server_header_transformation,omitempty"`
	MaxRequestHeadersKb                        *wrappers.UInt32Value                              `protobuf:"bytes,29,opt,name=max_request_headers_kb,json=maxRequestHeadersKb,proto3" json:"max_request_headers_kb,omitempty"`
	HiddenEnvoyDeprecatedIdleTimeout           *duration.Duration                                 `protobuf:"bytes,11,opt,name=hidden_envoy_deprecated_idle_timeout,json=hiddenEnvoyDeprecatedIdleTimeout,proto3" json:"hidden_envoy_deprecated_idle_timeout,omitempty"` // Deprecated: Do not use.
	StreamIdleTimeout                          *duration.Duration                                 `protobuf:"bytes,24,opt,name=stream_idle_timeout,json=streamIdleTimeout,proto3" json:"stream_idle_timeout,omitempty"`
	RequestTimeout                             *duration.Duration                                 `protobuf:"bytes,28,opt,name=request_timeout,json=requestTimeout,proto3" json:"request_timeout,omitempty"`
	DrainTimeout                               *duration.Duration                                 `protobuf:"bytes,12,opt,name=drain_timeout,json=drainTimeout,proto3" json:"drain_timeout,omitempty"`
	DelayedCloseTimeout                        *duration.Duration                                 `protobuf:"bytes,26,opt,name=delayed_close_timeout,json=delayedCloseTimeout,proto3" json:"delayed_close_timeout,omitempty"`
	AccessLog                                  []*v32.AccessLog                                   `protobuf:"bytes,13,rep,name=access_log,json=accessLog,proto3" json:"access_log,omitempty"`
	UseRemoteAddress                           *wrappers.BoolValue                                `protobuf:"bytes,14,opt,name=use_remote_address,json=useRemoteAddress,proto3" json:"use_remote_address,omitempty"`
	XffNumTrustedHops                          uint32                                             `protobuf:"varint,19,opt,name=xff_num_trusted_hops,json=xffNumTrustedHops,proto3" json:"xff_num_trusted_hops,omitempty"`
	InternalAddressConfig                      *HttpConnectionManager_InternalAddressConfig       `protobuf:"bytes,25,opt,name=internal_address_config,json=internalAddressConfig,proto3" json:"internal_address_config,omitempty"`
	SkipXffAppend                              bool                                               `protobuf:"varint,21,opt,name=skip_xff_append,json=skipXffAppend,proto3" json:"skip_xff_append,omitempty"`
	Via                                        string                                             `protobuf:"bytes,22,opt,name=via,proto3" json:"via,omitempty"`
	GenerateRequestId                          *wrappers.BoolValue                                `protobuf:"bytes,15,opt,name=generate_request_id,json=generateRequestId,proto3" json:"generate_request_id,omitempty"`
	PreserveExternalRequestId                  bool                                               `protobuf:"varint,32,opt,name=preserve_external_request_id,json=preserveExternalRequestId,proto3" json:"preserve_external_request_id,omitempty"`
	ForwardClientCertDetails                   HttpConnectionManager_ForwardClientCertDetails     `protobuf:"varint,16,opt,name=forward_client_cert_details,json=forwardClientCertDetails,proto3,enum=envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager_ForwardClientCertDetails" json:"forward_client_cert_details,omitempty"`
	SetCurrentClientCertDetails                *HttpConnectionManager_SetCurrentClientCertDetails `protobuf:"bytes,17,opt,name=set_current_client_cert_details,json=setCurrentClientCertDetails,proto3" json:"set_current_client_cert_details,omitempty"`
	Proxy_100Continue                          bool                                               `protobuf:"varint,18,opt,name=proxy_100_continue,json=proxy100Continue,proto3" json:"proxy_100_continue,omitempty"`
	RepresentIpv4RemoteAddressAsIpv4MappedIpv6 bool                                               `protobuf:"varint,20,opt,name=represent_ipv4_remote_address_as_ipv4_mapped_ipv6,json=representIpv4RemoteAddressAsIpv4MappedIpv6,proto3" json:"represent_ipv4_remote_address_as_ipv4_mapped_ipv6,omitempty"`
	UpgradeConfigs                             []*HttpConnectionManager_UpgradeConfig             `protobuf:"bytes,23,rep,name=upgrade_configs,json=upgradeConfigs,proto3" json:"upgrade_configs,omitempty"`
	NormalizePath                              *wrappers.BoolValue                                `protobuf:"bytes,30,opt,name=normalize_path,json=normalizePath,proto3" json:"normalize_path,omitempty"`
	MergeSlashes                               bool                                               `protobuf:"varint,33,opt,name=merge_slashes,json=mergeSlashes,proto3" json:"merge_slashes,omitempty"`
	RequestIdExtension                         *RequestIDExtension                                `protobuf:"bytes,36,opt,name=request_id_extension,json=requestIdExtension,proto3" json:"request_id_extension,omitempty"`
	XXX_NoUnkeyedLiteral                       struct{}                                           `json:"-"`
	XXX_unrecognized                           []byte                                             `json:"-"`
	XXX_sizecache                              int32                                              `json:"-"`
}

func (m *HttpConnectionManager) Reset()         { *m = HttpConnectionManager{} }
func (m *HttpConnectionManager) String() string { return proto.CompactTextString(m) }
func (*HttpConnectionManager) ProtoMessage()    {}
func (*HttpConnectionManager) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{0}
}

func (m *HttpConnectionManager) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HttpConnectionManager.Unmarshal(m, b)
}
func (m *HttpConnectionManager) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HttpConnectionManager.Marshal(b, m, deterministic)
}
func (m *HttpConnectionManager) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HttpConnectionManager.Merge(m, src)
}
func (m *HttpConnectionManager) XXX_Size() int {
	return xxx_messageInfo_HttpConnectionManager.Size(m)
}
func (m *HttpConnectionManager) XXX_DiscardUnknown() {
	xxx_messageInfo_HttpConnectionManager.DiscardUnknown(m)
}

var xxx_messageInfo_HttpConnectionManager proto.InternalMessageInfo

func (m *HttpConnectionManager) GetCodecType() HttpConnectionManager_CodecType {
	if m != nil {
		return m.CodecType
	}
	return HttpConnectionManager_AUTO
}

func (m *HttpConnectionManager) GetStatPrefix() string {
	if m != nil {
		return m.StatPrefix
	}
	return ""
}

type isHttpConnectionManager_RouteSpecifier interface {
	isHttpConnectionManager_RouteSpecifier()
}

type HttpConnectionManager_Rds struct {
	Rds *Rds `protobuf:"bytes,3,opt,name=rds,proto3,oneof"`
}

type HttpConnectionManager_RouteConfig struct {
	RouteConfig *v3.RouteConfiguration `protobuf:"bytes,4,opt,name=route_config,json=routeConfig,proto3,oneof"`
}

type HttpConnectionManager_ScopedRoutes struct {
	ScopedRoutes *ScopedRoutes `protobuf:"bytes,31,opt,name=scoped_routes,json=scopedRoutes,proto3,oneof"`
}

func (*HttpConnectionManager_Rds) isHttpConnectionManager_RouteSpecifier() {}

func (*HttpConnectionManager_RouteConfig) isHttpConnectionManager_RouteSpecifier() {}

func (*HttpConnectionManager_ScopedRoutes) isHttpConnectionManager_RouteSpecifier() {}

func (m *HttpConnectionManager) GetRouteSpecifier() isHttpConnectionManager_RouteSpecifier {
	if m != nil {
		return m.RouteSpecifier
	}
	return nil
}

func (m *HttpConnectionManager) GetRds() *Rds {
	if x, ok := m.GetRouteSpecifier().(*HttpConnectionManager_Rds); ok {
		return x.Rds
	}
	return nil
}

func (m *HttpConnectionManager) GetRouteConfig() *v3.RouteConfiguration {
	if x, ok := m.GetRouteSpecifier().(*HttpConnectionManager_RouteConfig); ok {
		return x.RouteConfig
	}
	return nil
}

func (m *HttpConnectionManager) GetScopedRoutes() *ScopedRoutes {
	if x, ok := m.GetRouteSpecifier().(*HttpConnectionManager_ScopedRoutes); ok {
		return x.ScopedRoutes
	}
	return nil
}

func (m *HttpConnectionManager) GetHttpFilters() []*HttpFilter {
	if m != nil {
		return m.HttpFilters
	}
	return nil
}

func (m *HttpConnectionManager) GetAddUserAgent() *wrappers.BoolValue {
	if m != nil {
		return m.AddUserAgent
	}
	return nil
}

func (m *HttpConnectionManager) GetTracing() *HttpConnectionManager_Tracing {
	if m != nil {
		return m.Tracing
	}
	return nil
}

func (m *HttpConnectionManager) GetCommonHttpProtocolOptions() *v31.HttpProtocolOptions {
	if m != nil {
		return m.CommonHttpProtocolOptions
	}
	return nil
}

func (m *HttpConnectionManager) GetHttpProtocolOptions() *v31.Http1ProtocolOptions {
	if m != nil {
		return m.HttpProtocolOptions
	}
	return nil
}

func (m *HttpConnectionManager) GetHttp2ProtocolOptions() *v31.Http2ProtocolOptions {
	if m != nil {
		return m.Http2ProtocolOptions
	}
	return nil
}

func (m *HttpConnectionManager) GetServerName() string {
	if m != nil {
		return m.ServerName
	}
	return ""
}

func (m *HttpConnectionManager) GetServerHeaderTransformation() HttpConnectionManager_ServerHeaderTransformation {
	if m != nil {
		return m.ServerHeaderTransformation
	}
	return HttpConnectionManager_OVERWRITE
}

func (m *HttpConnectionManager) GetMaxRequestHeadersKb() *wrappers.UInt32Value {
	if m != nil {
		return m.MaxRequestHeadersKb
	}
	return nil
}

// Deprecated: Do not use.
func (m *HttpConnectionManager) GetHiddenEnvoyDeprecatedIdleTimeout() *duration.Duration {
	if m != nil {
		return m.HiddenEnvoyDeprecatedIdleTimeout
	}
	return nil
}

func (m *HttpConnectionManager) GetStreamIdleTimeout() *duration.Duration {
	if m != nil {
		return m.StreamIdleTimeout
	}
	return nil
}

func (m *HttpConnectionManager) GetRequestTimeout() *duration.Duration {
	if m != nil {
		return m.RequestTimeout
	}
	return nil
}

func (m *HttpConnectionManager) GetDrainTimeout() *duration.Duration {
	if m != nil {
		return m.DrainTimeout
	}
	return nil
}

func (m *HttpConnectionManager) GetDelayedCloseTimeout() *duration.Duration {
	if m != nil {
		return m.DelayedCloseTimeout
	}
	return nil
}

func (m *HttpConnectionManager) GetAccessLog() []*v32.AccessLog {
	if m != nil {
		return m.AccessLog
	}
	return nil
}

func (m *HttpConnectionManager) GetUseRemoteAddress() *wrappers.BoolValue {
	if m != nil {
		return m.UseRemoteAddress
	}
	return nil
}

func (m *HttpConnectionManager) GetXffNumTrustedHops() uint32 {
	if m != nil {
		return m.XffNumTrustedHops
	}
	return 0
}

func (m *HttpConnectionManager) GetInternalAddressConfig() *HttpConnectionManager_InternalAddressConfig {
	if m != nil {
		return m.InternalAddressConfig
	}
	return nil
}

func (m *HttpConnectionManager) GetSkipXffAppend() bool {
	if m != nil {
		return m.SkipXffAppend
	}
	return false
}

func (m *HttpConnectionManager) GetVia() string {
	if m != nil {
		return m.Via
	}
	return ""
}

func (m *HttpConnectionManager) GetGenerateRequestId() *wrappers.BoolValue {
	if m != nil {
		return m.GenerateRequestId
	}
	return nil
}

func (m *HttpConnectionManager) GetPreserveExternalRequestId() bool {
	if m != nil {
		return m.PreserveExternalRequestId
	}
	return false
}

func (m *HttpConnectionManager) GetForwardClientCertDetails() HttpConnectionManager_ForwardClientCertDetails {
	if m != nil {
		return m.ForwardClientCertDetails
	}
	return HttpConnectionManager_SANITIZE
}

func (m *HttpConnectionManager) GetSetCurrentClientCertDetails() *HttpConnectionManager_SetCurrentClientCertDetails {
	if m != nil {
		return m.SetCurrentClientCertDetails
	}
	return nil
}

func (m *HttpConnectionManager) GetProxy_100Continue() bool {
	if m != nil {
		return m.Proxy_100Continue
	}
	return false
}

func (m *HttpConnectionManager) GetRepresentIpv4RemoteAddressAsIpv4MappedIpv6() bool {
	if m != nil {
		return m.RepresentIpv4RemoteAddressAsIpv4MappedIpv6
	}
	return false
}

func (m *HttpConnectionManager) GetUpgradeConfigs() []*HttpConnectionManager_UpgradeConfig {
	if m != nil {
		return m.UpgradeConfigs
	}
	return nil
}

func (m *HttpConnectionManager) GetNormalizePath() *wrappers.BoolValue {
	if m != nil {
		return m.NormalizePath
	}
	return nil
}

func (m *HttpConnectionManager) GetMergeSlashes() bool {
	if m != nil {
		return m.MergeSlashes
	}
	return false
}

func (m *HttpConnectionManager) GetRequestIdExtension() *RequestIDExtension {
	if m != nil {
		return m.RequestIdExtension
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*HttpConnectionManager) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*HttpConnectionManager_Rds)(nil),
		(*HttpConnectionManager_RouteConfig)(nil),
		(*HttpConnectionManager_ScopedRoutes)(nil),
	}
}

type HttpConnectionManager_Tracing struct {
	HiddenEnvoyDeprecatedOperationName         HttpConnectionManager_Tracing_OperationName `protobuf:"varint,1,opt,name=hidden_envoy_deprecated_operation_name,json=hiddenEnvoyDeprecatedOperationName,proto3,enum=envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager_Tracing_OperationName" json:"hidden_envoy_deprecated_operation_name,omitempty"` // Deprecated: Do not use.
	HiddenEnvoyDeprecatedRequestHeadersForTags []string                                    `protobuf:"bytes,2,rep,name=hidden_envoy_deprecated_request_headers_for_tags,json=hiddenEnvoyDeprecatedRequestHeadersForTags,proto3" json:"hidden_envoy_deprecated_request_headers_for_tags,omitempty"`                                                                                   // Deprecated: Do not use.
	ClientSampling                             *v33.Percent                                `protobuf:"bytes,3,opt,name=client_sampling,json=clientSampling,proto3" json:"client_sampling,omitempty"`
	RandomSampling                             *v33.Percent                                `protobuf:"bytes,4,opt,name=random_sampling,json=randomSampling,proto3" json:"random_sampling,omitempty"`
	OverallSampling                            *v33.Percent                                `protobuf:"bytes,5,opt,name=overall_sampling,json=overallSampling,proto3" json:"overall_sampling,omitempty"`
	Verbose                                    bool                                        `protobuf:"varint,6,opt,name=verbose,proto3" json:"verbose,omitempty"`
	MaxPathTagLength                           *wrappers.UInt32Value                       `protobuf:"bytes,7,opt,name=max_path_tag_length,json=maxPathTagLength,proto3" json:"max_path_tag_length,omitempty"`
	CustomTags                                 []*v34.CustomTag                            `protobuf:"bytes,8,rep,name=custom_tags,json=customTags,proto3" json:"custom_tags,omitempty"`
	Provider                                   *v35.Tracing_Http                           `protobuf:"bytes,9,opt,name=provider,proto3" json:"provider,omitempty"`
	XXX_NoUnkeyedLiteral                       struct{}                                    `json:"-"`
	XXX_unrecognized                           []byte                                      `json:"-"`
	XXX_sizecache                              int32                                       `json:"-"`
}

func (m *HttpConnectionManager_Tracing) Reset()         { *m = HttpConnectionManager_Tracing{} }
func (m *HttpConnectionManager_Tracing) String() string { return proto.CompactTextString(m) }
func (*HttpConnectionManager_Tracing) ProtoMessage()    {}
func (*HttpConnectionManager_Tracing) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{0, 0}
}

func (m *HttpConnectionManager_Tracing) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HttpConnectionManager_Tracing.Unmarshal(m, b)
}
func (m *HttpConnectionManager_Tracing) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HttpConnectionManager_Tracing.Marshal(b, m, deterministic)
}
func (m *HttpConnectionManager_Tracing) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HttpConnectionManager_Tracing.Merge(m, src)
}
func (m *HttpConnectionManager_Tracing) XXX_Size() int {
	return xxx_messageInfo_HttpConnectionManager_Tracing.Size(m)
}
func (m *HttpConnectionManager_Tracing) XXX_DiscardUnknown() {
	xxx_messageInfo_HttpConnectionManager_Tracing.DiscardUnknown(m)
}

var xxx_messageInfo_HttpConnectionManager_Tracing proto.InternalMessageInfo

// Deprecated: Do not use.
func (m *HttpConnectionManager_Tracing) GetHiddenEnvoyDeprecatedOperationName() HttpConnectionManager_Tracing_OperationName {
	if m != nil {
		return m.HiddenEnvoyDeprecatedOperationName
	}
	return HttpConnectionManager_Tracing_INGRESS
}

// Deprecated: Do not use.
func (m *HttpConnectionManager_Tracing) GetHiddenEnvoyDeprecatedRequestHeadersForTags() []string {
	if m != nil {
		return m.HiddenEnvoyDeprecatedRequestHeadersForTags
	}
	return nil
}

func (m *HttpConnectionManager_Tracing) GetClientSampling() *v33.Percent {
	if m != nil {
		return m.ClientSampling
	}
	return nil
}

func (m *HttpConnectionManager_Tracing) GetRandomSampling() *v33.Percent {
	if m != nil {
		return m.RandomSampling
	}
	return nil
}

func (m *HttpConnectionManager_Tracing) GetOverallSampling() *v33.Percent {
	if m != nil {
		return m.OverallSampling
	}
	return nil
}

func (m *HttpConnectionManager_Tracing) GetVerbose() bool {
	if m != nil {
		return m.Verbose
	}
	return false
}

func (m *HttpConnectionManager_Tracing) GetMaxPathTagLength() *wrappers.UInt32Value {
	if m != nil {
		return m.MaxPathTagLength
	}
	return nil
}

func (m *HttpConnectionManager_Tracing) GetCustomTags() []*v34.CustomTag {
	if m != nil {
		return m.CustomTags
	}
	return nil
}

func (m *HttpConnectionManager_Tracing) GetProvider() *v35.Tracing_Http {
	if m != nil {
		return m.Provider
	}
	return nil
}

type HttpConnectionManager_InternalAddressConfig struct {
	UnixSockets          bool     `protobuf:"varint,1,opt,name=unix_sockets,json=unixSockets,proto3" json:"unix_sockets,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *HttpConnectionManager_InternalAddressConfig) Reset() {
	*m = HttpConnectionManager_InternalAddressConfig{}
}
func (m *HttpConnectionManager_InternalAddressConfig) String() string {
	return proto.CompactTextString(m)
}
func (*HttpConnectionManager_InternalAddressConfig) ProtoMessage() {}
func (*HttpConnectionManager_InternalAddressConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{0, 1}
}

func (m *HttpConnectionManager_InternalAddressConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HttpConnectionManager_InternalAddressConfig.Unmarshal(m, b)
}
func (m *HttpConnectionManager_InternalAddressConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HttpConnectionManager_InternalAddressConfig.Marshal(b, m, deterministic)
}
func (m *HttpConnectionManager_InternalAddressConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HttpConnectionManager_InternalAddressConfig.Merge(m, src)
}
func (m *HttpConnectionManager_InternalAddressConfig) XXX_Size() int {
	return xxx_messageInfo_HttpConnectionManager_InternalAddressConfig.Size(m)
}
func (m *HttpConnectionManager_InternalAddressConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_HttpConnectionManager_InternalAddressConfig.DiscardUnknown(m)
}

var xxx_messageInfo_HttpConnectionManager_InternalAddressConfig proto.InternalMessageInfo

func (m *HttpConnectionManager_InternalAddressConfig) GetUnixSockets() bool {
	if m != nil {
		return m.UnixSockets
	}
	return false
}

type HttpConnectionManager_SetCurrentClientCertDetails struct {
	Subject              *wrappers.BoolValue `protobuf:"bytes,1,opt,name=subject,proto3" json:"subject,omitempty"`
	Cert                 bool                `protobuf:"varint,3,opt,name=cert,proto3" json:"cert,omitempty"`
	Chain                bool                `protobuf:"varint,6,opt,name=chain,proto3" json:"chain,omitempty"`
	Dns                  bool                `protobuf:"varint,4,opt,name=dns,proto3" json:"dns,omitempty"`
	Uri                  bool                `protobuf:"varint,5,opt,name=uri,proto3" json:"uri,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (m *HttpConnectionManager_SetCurrentClientCertDetails) Reset() {
	*m = HttpConnectionManager_SetCurrentClientCertDetails{}
}
func (m *HttpConnectionManager_SetCurrentClientCertDetails) String() string {
	return proto.CompactTextString(m)
}
func (*HttpConnectionManager_SetCurrentClientCertDetails) ProtoMessage() {}
func (*HttpConnectionManager_SetCurrentClientCertDetails) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{0, 2}
}

func (m *HttpConnectionManager_SetCurrentClientCertDetails) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HttpConnectionManager_SetCurrentClientCertDetails.Unmarshal(m, b)
}
func (m *HttpConnectionManager_SetCurrentClientCertDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HttpConnectionManager_SetCurrentClientCertDetails.Marshal(b, m, deterministic)
}
func (m *HttpConnectionManager_SetCurrentClientCertDetails) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HttpConnectionManager_SetCurrentClientCertDetails.Merge(m, src)
}
func (m *HttpConnectionManager_SetCurrentClientCertDetails) XXX_Size() int {
	return xxx_messageInfo_HttpConnectionManager_SetCurrentClientCertDetails.Size(m)
}
func (m *HttpConnectionManager_SetCurrentClientCertDetails) XXX_DiscardUnknown() {
	xxx_messageInfo_HttpConnectionManager_SetCurrentClientCertDetails.DiscardUnknown(m)
}

var xxx_messageInfo_HttpConnectionManager_SetCurrentClientCertDetails proto.InternalMessageInfo

func (m *HttpConnectionManager_SetCurrentClientCertDetails) GetSubject() *wrappers.BoolValue {
	if m != nil {
		return m.Subject
	}
	return nil
}

func (m *HttpConnectionManager_SetCurrentClientCertDetails) GetCert() bool {
	if m != nil {
		return m.Cert
	}
	return false
}

func (m *HttpConnectionManager_SetCurrentClientCertDetails) GetChain() bool {
	if m != nil {
		return m.Chain
	}
	return false
}

func (m *HttpConnectionManager_SetCurrentClientCertDetails) GetDns() bool {
	if m != nil {
		return m.Dns
	}
	return false
}

func (m *HttpConnectionManager_SetCurrentClientCertDetails) GetUri() bool {
	if m != nil {
		return m.Uri
	}
	return false
}

type HttpConnectionManager_UpgradeConfig struct {
	UpgradeType          string              `protobuf:"bytes,1,opt,name=upgrade_type,json=upgradeType,proto3" json:"upgrade_type,omitempty"`
	Filters              []*HttpFilter       `protobuf:"bytes,2,rep,name=filters,proto3" json:"filters,omitempty"`
	Enabled              *wrappers.BoolValue `protobuf:"bytes,3,opt,name=enabled,proto3" json:"enabled,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (m *HttpConnectionManager_UpgradeConfig) Reset()         { *m = HttpConnectionManager_UpgradeConfig{} }
func (m *HttpConnectionManager_UpgradeConfig) String() string { return proto.CompactTextString(m) }
func (*HttpConnectionManager_UpgradeConfig) ProtoMessage()    {}
func (*HttpConnectionManager_UpgradeConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{0, 3}
}

func (m *HttpConnectionManager_UpgradeConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HttpConnectionManager_UpgradeConfig.Unmarshal(m, b)
}
func (m *HttpConnectionManager_UpgradeConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HttpConnectionManager_UpgradeConfig.Marshal(b, m, deterministic)
}
func (m *HttpConnectionManager_UpgradeConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HttpConnectionManager_UpgradeConfig.Merge(m, src)
}
func (m *HttpConnectionManager_UpgradeConfig) XXX_Size() int {
	return xxx_messageInfo_HttpConnectionManager_UpgradeConfig.Size(m)
}
func (m *HttpConnectionManager_UpgradeConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_HttpConnectionManager_UpgradeConfig.DiscardUnknown(m)
}

var xxx_messageInfo_HttpConnectionManager_UpgradeConfig proto.InternalMessageInfo

func (m *HttpConnectionManager_UpgradeConfig) GetUpgradeType() string {
	if m != nil {
		return m.UpgradeType
	}
	return ""
}

func (m *HttpConnectionManager_UpgradeConfig) GetFilters() []*HttpFilter {
	if m != nil {
		return m.Filters
	}
	return nil
}

func (m *HttpConnectionManager_UpgradeConfig) GetEnabled() *wrappers.BoolValue {
	if m != nil {
		return m.Enabled
	}
	return nil
}

type Rds struct {
	ConfigSource         *v31.ConfigSource `protobuf:"bytes,1,opt,name=config_source,json=configSource,proto3" json:"config_source,omitempty"`
	RouteConfigName      string            `protobuf:"bytes,2,opt,name=route_config_name,json=routeConfigName,proto3" json:"route_config_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *Rds) Reset()         { *m = Rds{} }
func (m *Rds) String() string { return proto.CompactTextString(m) }
func (*Rds) ProtoMessage()    {}
func (*Rds) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{1}
}

func (m *Rds) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Rds.Unmarshal(m, b)
}
func (m *Rds) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Rds.Marshal(b, m, deterministic)
}
func (m *Rds) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Rds.Merge(m, src)
}
func (m *Rds) XXX_Size() int {
	return xxx_messageInfo_Rds.Size(m)
}
func (m *Rds) XXX_DiscardUnknown() {
	xxx_messageInfo_Rds.DiscardUnknown(m)
}

var xxx_messageInfo_Rds proto.InternalMessageInfo

func (m *Rds) GetConfigSource() *v31.ConfigSource {
	if m != nil {
		return m.ConfigSource
	}
	return nil
}

func (m *Rds) GetRouteConfigName() string {
	if m != nil {
		return m.RouteConfigName
	}
	return ""
}

type ScopedRouteConfigurationsList struct {
	ScopedRouteConfigurations []*v3.ScopedRouteConfiguration `protobuf:"bytes,1,rep,name=scoped_route_configurations,json=scopedRouteConfigurations,proto3" json:"scoped_route_configurations,omitempty"`
	XXX_NoUnkeyedLiteral      struct{}                       `json:"-"`
	XXX_unrecognized          []byte                         `json:"-"`
	XXX_sizecache             int32                          `json:"-"`
}

func (m *ScopedRouteConfigurationsList) Reset()         { *m = ScopedRouteConfigurationsList{} }
func (m *ScopedRouteConfigurationsList) String() string { return proto.CompactTextString(m) }
func (*ScopedRouteConfigurationsList) ProtoMessage()    {}
func (*ScopedRouteConfigurationsList) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{2}
}

func (m *ScopedRouteConfigurationsList) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ScopedRouteConfigurationsList.Unmarshal(m, b)
}
func (m *ScopedRouteConfigurationsList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ScopedRouteConfigurationsList.Marshal(b, m, deterministic)
}
func (m *ScopedRouteConfigurationsList) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ScopedRouteConfigurationsList.Merge(m, src)
}
func (m *ScopedRouteConfigurationsList) XXX_Size() int {
	return xxx_messageInfo_ScopedRouteConfigurationsList.Size(m)
}
func (m *ScopedRouteConfigurationsList) XXX_DiscardUnknown() {
	xxx_messageInfo_ScopedRouteConfigurationsList.DiscardUnknown(m)
}

var xxx_messageInfo_ScopedRouteConfigurationsList proto.InternalMessageInfo

func (m *ScopedRouteConfigurationsList) GetScopedRouteConfigurations() []*v3.ScopedRouteConfiguration {
	if m != nil {
		return m.ScopedRouteConfigurations
	}
	return nil
}

type ScopedRoutes struct {
	Name            string                        `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	ScopeKeyBuilder *ScopedRoutes_ScopeKeyBuilder `protobuf:"bytes,2,opt,name=scope_key_builder,json=scopeKeyBuilder,proto3" json:"scope_key_builder,omitempty"`
	RdsConfigSource *v31.ConfigSource             `protobuf:"bytes,3,opt,name=rds_config_source,json=rdsConfigSource,proto3" json:"rds_config_source,omitempty"`
	// Types that are valid to be assigned to ConfigSpecifier:
	//	*ScopedRoutes_ScopedRouteConfigurationsList
	//	*ScopedRoutes_ScopedRds
	ConfigSpecifier      isScopedRoutes_ConfigSpecifier `protobuf_oneof:"config_specifier"`
	XXX_NoUnkeyedLiteral struct{}                       `json:"-"`
	XXX_unrecognized     []byte                         `json:"-"`
	XXX_sizecache        int32                          `json:"-"`
}

func (m *ScopedRoutes) Reset()         { *m = ScopedRoutes{} }
func (m *ScopedRoutes) String() string { return proto.CompactTextString(m) }
func (*ScopedRoutes) ProtoMessage()    {}
func (*ScopedRoutes) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{3}
}

func (m *ScopedRoutes) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ScopedRoutes.Unmarshal(m, b)
}
func (m *ScopedRoutes) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ScopedRoutes.Marshal(b, m, deterministic)
}
func (m *ScopedRoutes) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ScopedRoutes.Merge(m, src)
}
func (m *ScopedRoutes) XXX_Size() int {
	return xxx_messageInfo_ScopedRoutes.Size(m)
}
func (m *ScopedRoutes) XXX_DiscardUnknown() {
	xxx_messageInfo_ScopedRoutes.DiscardUnknown(m)
}

var xxx_messageInfo_ScopedRoutes proto.InternalMessageInfo

func (m *ScopedRoutes) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *ScopedRoutes) GetScopeKeyBuilder() *ScopedRoutes_ScopeKeyBuilder {
	if m != nil {
		return m.ScopeKeyBuilder
	}
	return nil
}

func (m *ScopedRoutes) GetRdsConfigSource() *v31.ConfigSource {
	if m != nil {
		return m.RdsConfigSource
	}
	return nil
}

type isScopedRoutes_ConfigSpecifier interface {
	isScopedRoutes_ConfigSpecifier()
}

type ScopedRoutes_ScopedRouteConfigurationsList struct {
	ScopedRouteConfigurationsList *ScopedRouteConfigurationsList `protobuf:"bytes,4,opt,name=scoped_route_configurations_list,json=scopedRouteConfigurationsList,proto3,oneof"`
}

type ScopedRoutes_ScopedRds struct {
	ScopedRds *ScopedRds `protobuf:"bytes,5,opt,name=scoped_rds,json=scopedRds,proto3,oneof"`
}

func (*ScopedRoutes_ScopedRouteConfigurationsList) isScopedRoutes_ConfigSpecifier() {}

func (*ScopedRoutes_ScopedRds) isScopedRoutes_ConfigSpecifier() {}

func (m *ScopedRoutes) GetConfigSpecifier() isScopedRoutes_ConfigSpecifier {
	if m != nil {
		return m.ConfigSpecifier
	}
	return nil
}

func (m *ScopedRoutes) GetScopedRouteConfigurationsList() *ScopedRouteConfigurationsList {
	if x, ok := m.GetConfigSpecifier().(*ScopedRoutes_ScopedRouteConfigurationsList); ok {
		return x.ScopedRouteConfigurationsList
	}
	return nil
}

func (m *ScopedRoutes) GetScopedRds() *ScopedRds {
	if x, ok := m.GetConfigSpecifier().(*ScopedRoutes_ScopedRds); ok {
		return x.ScopedRds
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*ScopedRoutes) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*ScopedRoutes_ScopedRouteConfigurationsList)(nil),
		(*ScopedRoutes_ScopedRds)(nil),
	}
}

type ScopedRoutes_ScopeKeyBuilder struct {
	Fragments            []*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder `protobuf:"bytes,1,rep,name=fragments,proto3" json:"fragments,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                                        `json:"-"`
	XXX_unrecognized     []byte                                          `json:"-"`
	XXX_sizecache        int32                                           `json:"-"`
}

func (m *ScopedRoutes_ScopeKeyBuilder) Reset()         { *m = ScopedRoutes_ScopeKeyBuilder{} }
func (m *ScopedRoutes_ScopeKeyBuilder) String() string { return proto.CompactTextString(m) }
func (*ScopedRoutes_ScopeKeyBuilder) ProtoMessage()    {}
func (*ScopedRoutes_ScopeKeyBuilder) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{3, 0}
}

func (m *ScopedRoutes_ScopeKeyBuilder) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder.Unmarshal(m, b)
}
func (m *ScopedRoutes_ScopeKeyBuilder) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder.Marshal(b, m, deterministic)
}
func (m *ScopedRoutes_ScopeKeyBuilder) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder.Merge(m, src)
}
func (m *ScopedRoutes_ScopeKeyBuilder) XXX_Size() int {
	return xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder.Size(m)
}
func (m *ScopedRoutes_ScopeKeyBuilder) XXX_DiscardUnknown() {
	xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder.DiscardUnknown(m)
}

var xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder proto.InternalMessageInfo

func (m *ScopedRoutes_ScopeKeyBuilder) GetFragments() []*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder {
	if m != nil {
		return m.Fragments
	}
	return nil
}

type ScopedRoutes_ScopeKeyBuilder_FragmentBuilder struct {
	// Types that are valid to be assigned to Type:
	//	*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_
	Type                 isScopedRoutes_ScopeKeyBuilder_FragmentBuilder_Type `protobuf_oneof:"type"`
	XXX_NoUnkeyedLiteral struct{}                                            `json:"-"`
	XXX_unrecognized     []byte                                              `json:"-"`
	XXX_sizecache        int32                                               `json:"-"`
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder) Reset() {
	*m = ScopedRoutes_ScopeKeyBuilder_FragmentBuilder{}
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder) String() string {
	return proto.CompactTextString(m)
}
func (*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder) ProtoMessage() {}
func (*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{3, 0, 0}
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder.Unmarshal(m, b)
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder.Marshal(b, m, deterministic)
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder.Merge(m, src)
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder) XXX_Size() int {
	return xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder.Size(m)
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder) XXX_DiscardUnknown() {
	xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder.DiscardUnknown(m)
}

var xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder proto.InternalMessageInfo

type isScopedRoutes_ScopeKeyBuilder_FragmentBuilder_Type interface {
	isScopedRoutes_ScopeKeyBuilder_FragmentBuilder_Type()
}

type ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_ struct {
	HeaderValueExtractor *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor `protobuf:"bytes,1,opt,name=header_value_extractor,json=headerValueExtractor,proto3,oneof"`
}

func (*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_) isScopedRoutes_ScopeKeyBuilder_FragmentBuilder_Type() {
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder) GetType() isScopedRoutes_ScopeKeyBuilder_FragmentBuilder_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder) GetHeaderValueExtractor() *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor {
	if x, ok := m.GetType().(*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_); ok {
		return x.HeaderValueExtractor
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_)(nil),
	}
}

type ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor struct {
	Name             string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	ElementSeparator string `protobuf:"bytes,2,opt,name=element_separator,json=elementSeparator,proto3" json:"element_separator,omitempty"`
	// Types that are valid to be assigned to ExtractType:
	//	*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_Index
	//	*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_Element
	ExtractType          isScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_ExtractType `protobuf_oneof:"extract_type"`
	XXX_NoUnkeyedLiteral struct{}                                                                        `json:"-"`
	XXX_unrecognized     []byte                                                                          `json:"-"`
	XXX_sizecache        int32                                                                           `json:"-"`
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) Reset() {
	*m = ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor{}
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) String() string {
	return proto.CompactTextString(m)
}
func (*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) ProtoMessage() {}
func (*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{3, 0, 0, 0}
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor.Unmarshal(m, b)
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor.Marshal(b, m, deterministic)
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor.Merge(m, src)
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) XXX_Size() int {
	return xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor.Size(m)
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) XXX_DiscardUnknown() {
	xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor.DiscardUnknown(m)
}

var xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor proto.InternalMessageInfo

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) GetElementSeparator() string {
	if m != nil {
		return m.ElementSeparator
	}
	return ""
}

type isScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_ExtractType interface {
	isScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_ExtractType()
}

type ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_Index struct {
	Index uint32 `protobuf:"varint,3,opt,name=index,proto3,oneof"`
}

type ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_Element struct {
	Element *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement `protobuf:"bytes,4,opt,name=element,proto3,oneof"`
}

func (*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_Index) isScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_ExtractType() {
}

func (*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_Element) isScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_ExtractType() {
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) GetExtractType() isScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_ExtractType {
	if m != nil {
		return m.ExtractType
	}
	return nil
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) GetIndex() uint32 {
	if x, ok := m.GetExtractType().(*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_Index); ok {
		return x.Index
	}
	return 0
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) GetElement() *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement {
	if x, ok := m.GetExtractType().(*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_Element); ok {
		return x.Element
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_Index)(nil),
		(*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_Element)(nil),
	}
}

type ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement struct {
	Separator            string   `protobuf:"bytes,1,opt,name=separator,proto3" json:"separator,omitempty"`
	Key                  string   `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement) Reset() {
	*m = ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement{}
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement) String() string {
	return proto.CompactTextString(m)
}
func (*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement) ProtoMessage() {}
func (*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{3, 0, 0, 0, 0}
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement.Unmarshal(m, b)
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement.Marshal(b, m, deterministic)
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement.Merge(m, src)
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement) XXX_Size() int {
	return xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement.Size(m)
}
func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement) XXX_DiscardUnknown() {
	xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement.DiscardUnknown(m)
}

var xxx_messageInfo_ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement proto.InternalMessageInfo

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement) GetSeparator() string {
	if m != nil {
		return m.Separator
	}
	return ""
}

func (m *ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement) GetKey() string {
	if m != nil {
		return m.Key
	}
	return ""
}

type ScopedRds struct {
	ScopedRdsConfigSource *v31.ConfigSource `protobuf:"bytes,1,opt,name=scoped_rds_config_source,json=scopedRdsConfigSource,proto3" json:"scoped_rds_config_source,omitempty"`
	XXX_NoUnkeyedLiteral  struct{}          `json:"-"`
	XXX_unrecognized      []byte            `json:"-"`
	XXX_sizecache         int32             `json:"-"`
}

func (m *ScopedRds) Reset()         { *m = ScopedRds{} }
func (m *ScopedRds) String() string { return proto.CompactTextString(m) }
func (*ScopedRds) ProtoMessage()    {}
func (*ScopedRds) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{4}
}

func (m *ScopedRds) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ScopedRds.Unmarshal(m, b)
}
func (m *ScopedRds) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ScopedRds.Marshal(b, m, deterministic)
}
func (m *ScopedRds) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ScopedRds.Merge(m, src)
}
func (m *ScopedRds) XXX_Size() int {
	return xxx_messageInfo_ScopedRds.Size(m)
}
func (m *ScopedRds) XXX_DiscardUnknown() {
	xxx_messageInfo_ScopedRds.DiscardUnknown(m)
}

var xxx_messageInfo_ScopedRds proto.InternalMessageInfo

func (m *ScopedRds) GetScopedRdsConfigSource() *v31.ConfigSource {
	if m != nil {
		return m.ScopedRdsConfigSource
	}
	return nil
}

type HttpFilter struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Types that are valid to be assigned to ConfigType:
	//	*HttpFilter_HiddenEnvoyDeprecatedConfig
	//	*HttpFilter_TypedConfig
	ConfigType           isHttpFilter_ConfigType `protobuf_oneof:"config_type"`
	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
	XXX_unrecognized     []byte                  `json:"-"`
	XXX_sizecache        int32                   `json:"-"`
}

func (m *HttpFilter) Reset()         { *m = HttpFilter{} }
func (m *HttpFilter) String() string { return proto.CompactTextString(m) }
func (*HttpFilter) ProtoMessage()    {}
func (*HttpFilter) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{5}
}

func (m *HttpFilter) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HttpFilter.Unmarshal(m, b)
}
func (m *HttpFilter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HttpFilter.Marshal(b, m, deterministic)
}
func (m *HttpFilter) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HttpFilter.Merge(m, src)
}
func (m *HttpFilter) XXX_Size() int {
	return xxx_messageInfo_HttpFilter.Size(m)
}
func (m *HttpFilter) XXX_DiscardUnknown() {
	xxx_messageInfo_HttpFilter.DiscardUnknown(m)
}

var xxx_messageInfo_HttpFilter proto.InternalMessageInfo

func (m *HttpFilter) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

type isHttpFilter_ConfigType interface {
	isHttpFilter_ConfigType()
}

type HttpFilter_HiddenEnvoyDeprecatedConfig struct {
	HiddenEnvoyDeprecatedConfig *_struct.Struct `protobuf:"bytes,2,opt,name=hidden_envoy_deprecated_config,json=hiddenEnvoyDeprecatedConfig,proto3,oneof"`
}

type HttpFilter_TypedConfig struct {
	TypedConfig *any.Any `protobuf:"bytes,4,opt,name=typed_config,json=typedConfig,proto3,oneof"`
}

func (*HttpFilter_HiddenEnvoyDeprecatedConfig) isHttpFilter_ConfigType() {}

func (*HttpFilter_TypedConfig) isHttpFilter_ConfigType() {}

func (m *HttpFilter) GetConfigType() isHttpFilter_ConfigType {
	if m != nil {
		return m.ConfigType
	}
	return nil
}

// Deprecated: Do not use.
func (m *HttpFilter) GetHiddenEnvoyDeprecatedConfig() *_struct.Struct {
	if x, ok := m.GetConfigType().(*HttpFilter_HiddenEnvoyDeprecatedConfig); ok {
		return x.HiddenEnvoyDeprecatedConfig
	}
	return nil
}

func (m *HttpFilter) GetTypedConfig() *any.Any {
	if x, ok := m.GetConfigType().(*HttpFilter_TypedConfig); ok {
		return x.TypedConfig
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*HttpFilter) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*HttpFilter_HiddenEnvoyDeprecatedConfig)(nil),
		(*HttpFilter_TypedConfig)(nil),
	}
}

type RequestIDExtension struct {
	TypedConfig          *any.Any `protobuf:"bytes,1,opt,name=typed_config,json=typedConfig,proto3" json:"typed_config,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RequestIDExtension) Reset()         { *m = RequestIDExtension{} }
func (m *RequestIDExtension) String() string { return proto.CompactTextString(m) }
func (*RequestIDExtension) ProtoMessage()    {}
func (*RequestIDExtension) Descriptor() ([]byte, []int) {
	return fileDescriptor_7f8b1b876d9c097a, []int{6}
}

func (m *RequestIDExtension) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RequestIDExtension.Unmarshal(m, b)
}
func (m *RequestIDExtension) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RequestIDExtension.Marshal(b, m, deterministic)
}
func (m *RequestIDExtension) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RequestIDExtension.Merge(m, src)
}
func (m *RequestIDExtension) XXX_Size() int {
	return xxx_messageInfo_RequestIDExtension.Size(m)
}
func (m *RequestIDExtension) XXX_DiscardUnknown() {
	xxx_messageInfo_RequestIDExtension.DiscardUnknown(m)
}

var xxx_messageInfo_RequestIDExtension proto.InternalMessageInfo

func (m *RequestIDExtension) GetTypedConfig() *any.Any {
	if m != nil {
		return m.TypedConfig
	}
	return nil
}

func init() {
	proto.RegisterEnum("envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager_CodecType", HttpConnectionManager_CodecType_name, HttpConnectionManager_CodecType_value)
	proto.RegisterEnum("envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager_ServerHeaderTransformation", HttpConnectionManager_ServerHeaderTransformation_name, HttpConnectionManager_ServerHeaderTransformation_value)
	proto.RegisterEnum("envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager_ForwardClientCertDetails", HttpConnectionManager_ForwardClientCertDetails_name, HttpConnectionManager_ForwardClientCertDetails_value)
	proto.RegisterEnum("envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager_Tracing_OperationName", HttpConnectionManager_Tracing_OperationName_name, HttpConnectionManager_Tracing_OperationName_value)
	proto.RegisterType((*HttpConnectionManager)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager")
	proto.RegisterType((*HttpConnectionManager_Tracing)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.Tracing")
	proto.RegisterType((*HttpConnectionManager_InternalAddressConfig)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.InternalAddressConfig")
	proto.RegisterType((*HttpConnectionManager_SetCurrentClientCertDetails)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.SetCurrentClientCertDetails")
	proto.RegisterType((*HttpConnectionManager_UpgradeConfig)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.UpgradeConfig")
	proto.RegisterType((*Rds)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.Rds")
	proto.RegisterType((*ScopedRouteConfigurationsList)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.ScopedRouteConfigurationsList")
	proto.RegisterType((*ScopedRoutes)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes")
	proto.RegisterType((*ScopedRoutes_ScopeKeyBuilder)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes.ScopeKeyBuilder")
	proto.RegisterType((*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes.ScopeKeyBuilder.FragmentBuilder")
	proto.RegisterType((*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes.ScopeKeyBuilder.FragmentBuilder.HeaderValueExtractor")
	proto.RegisterType((*ScopedRoutes_ScopeKeyBuilder_FragmentBuilder_HeaderValueExtractor_KvElement)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.ScopedRoutes.ScopeKeyBuilder.FragmentBuilder.HeaderValueExtractor.KvElement")
	proto.RegisterType((*ScopedRds)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.ScopedRds")
	proto.RegisterType((*HttpFilter)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.HttpFilter")
	proto.RegisterType((*RequestIDExtension)(nil), "envoy.extensions.filters.network.http_connection_manager.v3.RequestIDExtension")
}

func init() {
	proto.RegisterFile("envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto", fileDescriptor_7f8b1b876d9c097a)
}

var fileDescriptor_7f8b1b876d9c097a = []byte{
	// 2751 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x59, 0xcb, 0x6f, 0x23, 0xc7,
	0xd1, 0xd7, 0x50, 0xd2, 0x8a, 0x2c, 0x52, 0xd2, 0xa8, 0x57, 0xd2, 0x8e, 0x28, 0xed, 0x5a, 0xcb,
	0xf5, 0x67, 0xc8, 0xfb, 0x05, 0xd4, 0xae, 0x64, 0x38, 0x08, 0x13, 0xc4, 0x26, 0xb5, 0xd2, 0x92,
	0xbb, 0x6b, 0x49, 0x19, 0x72, 0x6d, 0xef, 0xc6, 0xc8, 0xb8, 0x35, 0xd3, 0x24, 0x67, 0x45, 0xce,
	0x8c, 0xbb, 0x87, 0xb4, 0xe4, 0x43, 0x1e, 0x06, 0x0c, 0x38, 0xc9, 0xc1, 0x48, 0x72, 0x09, 0x72,
	0x49, 0x2e, 0x46, 0x6e, 0x39, 0x05, 0x41, 0x1e, 0xe7, 0x00, 0x39, 0x05, 0x49, 0x80, 0x1c, 0x82,
	0xfc, 0x05, 0xb9, 0xe4, 0x90, 0x4b, 0x02, 0xe7, 0x12, 0xf4, 0x63, 0xf8, 0x90, 0x48, 0x0a, 0xb0,
	0x24, 0xfb, 0xd6, 0xd3, 0x5d, 0xf5, 0xab, 0xea, 0xea, 0xaa, 0xea, 0xea, 0x1a, 0x78, 0x42, 0xbc,
	0xb6, 0x7f, 0xbc, 0x4e, 0x8e, 0x42, 0xe2, 0x31, 0xd7, 0xf7, 0xd8, 0x7a, 0xd5, 0x6d, 0x84, 0x84,
	0xb2, 0x75, 0x8f, 0x84, 0xef, 0xfa, 0xf4, 0x70, 0xbd, 0x1e, 0x86, 0x81, 0x65, 0xfb, 0x9e, 0x47,
	0xec, 0xd0, 0xf5, 0x3d, 0xab, 0x89, 0x3d, 0x5c, 0x23, 0x74, 0xbd, 0xbd, 0x39, 0x6c, 0x29, 0x1b,
	0x50, 0x3f, 0xf4, 0xd1, 0x97, 0x05, 0x74, 0xb6, 0x0b, 0x9d, 0x55, 0xd0, 0x59, 0x05, 0x9d, 0x1d,
	0xc6, 0xdf, 0xde, 0x4c, 0xbf, 0x28, 0xf5, 0xb2, 0x7d, 0xaf, 0xea, 0xd6, 0xd6, 0xb1, 0x6d, 0x13,
	0xc6, 0x1a, 0x7e, 0x8d, 0x4b, 0xed, 0x7c, 0x48, 0x39, 0xe9, 0xb5, 0x3e, 0x52, 0xdb, 0xa7, 0x84,
	0x53, 0xc9, 0x4f, 0x8b, 0xf9, 0x2d, 0x6a, 0x13, 0x45, 0x79, 0x6b, 0x20, 0xa5, 0x58, 0xb3, 0xfd,
	0x86, 0x22, 0xba, 0xd9, 0x47, 0x44, 0xfd, 0x56, 0x28, 0xa8, 0xc4, 0x60, 0xa0, 0xc4, 0x0e, 0x09,
	0xb3, 0xfd, 0x80, 0x38, 0x56, 0x2f, 0x65, 0x3f, 0x58, 0x48, 0xb1, 0x2d, 0x28, 0xc5, 0x40, 0x91,
	0xbc, 0x20, 0x49, 0xc2, 0xe3, 0x80, 0x88, 0x79, 0xd7, 0x13, 0xbb, 0xb4, 0x5b, 0x2c, 0xf4, 0x9b,
	0x56, 0x88, 0xa3, 0x6d, 0x2e, 0xf7, 0xd0, 0x71, 0xad, 0x09, 0xb5, 0x89, 0x17, 0xaa, 0xc5, 0xa5,
	0x9a, 0xef, 0xd7, 0x1a, 0x44, 0xee, 0xe5, 0xa0, 0x55, 0x5d, 0xc7, 0xde, 0xb1, 0x5a, 0xba, 0x71,
	0x72, 0xc9, 0x69, 0x51, 0xcc, 0xcd, 0xad, 0xd6, 0x57, 0x4e, 0xae, 0xb3, 0x90, 0xb6, 0xec, 0x70,
	0x18, 0xf7, 0xbb, 0x14, 0x07, 0x01, 0x3f, 0xc4, 0x3e, 0x93, 0x62, 0xcf, 0xf3, 0x43, 0x81, 0xca,
	0xd6, 0x1d, 0x12, 0x50, 0x62, 0xf7, 0x8a, 0xb8, 0xde, 0x72, 0x02, 0xdc, 0x47, 0xc3, 0x42, 0x1c,
	0xb6, 0x22, 0x8c, 0x9b, 0xa7, 0x96, 0xdb, 0x84, 0x72, 0x8f, 0x71, 0xbd, 0x68, 0xf3, 0xd7, 0xda,
	0xb8, 0xe1, 0x3a, 0x98, 0xdb, 0x59, 0x0d, 0xe4, 0x42, 0xe6, 0x47, 0x2f, 0xc2, 0x42, 0x31, 0x0c,
	0x83, 0xad, 0x8e, 0x17, 0xbd, 0x26, 0x9d, 0x08, 0x7d, 0xa0, 0x01, 0xd8, 0xbe, 0x43, 0x6c, 0x8b,
	0x9b, 0xcc, 0xd0, 0x56, 0xb5, 0xb5, 0x99, 0x8d, 0xb7, 0xb2, 0xe7, 0x70, 0xca, 0xec, 0x40, 0x41,
	0xd9, 0x2d, 0x2e, 0xa4, 0x72, 0x1c, 0x90, 0x42, 0xfc, 0x93, 0xc2, 0xe4, 0xfb, 0x5a, 0x4c, 0xd7,
	0xcc, 0x84, 0x1d, 0x4d, 0xa2, 0x35, 0x48, 0xf2, 0xdd, 0x5a, 0x01, 0x25, 0x55, 0xf7, 0xc8, 0x88,
	0xad, 0x6a, 0x6b, 0x89, 0xc2, 0xd4, 0x27, 0x85, 0x09, 0x1a, 0x5b, 0xd5, 0x4c, 0xe0, 0x6b, 0xfb,
	0x62, 0x09, 0x55, 0x60, 0x9c, 0x3a, 0xcc, 0x18, 0x5f, 0xd5, 0xd6, 0x92, 0x1b, 0xaf, 0x9e, 0x4b,
	0x53, 0xd3, 0x61, 0xc5, 0x31, 0x93, 0xc3, 0xa1, 0x5d, 0x48, 0x09, 0x8f, 0xb4, 0xa4, 0x13, 0x1a,
	0x13, 0x02, 0xfe, 0x45, 0x05, 0x2f, 0x27, 0xb3, 0xd2, 0x67, 0x39, 0x23, 0x1f, 0x6c, 0x89, 0x49,
	0xe5, 0x26, 0xc5, 0x31, 0x33, 0x49, 0xbb, 0xb3, 0x28, 0x80, 0xe9, 0x5e, 0x47, 0x67, 0xc6, 0x73,
	0x02, 0xb0, 0x74, 0x2e, 0x7d, 0xcb, 0x02, 0x51, 0x08, 0xe7, 0x8a, 0xa7, 0x58, 0xcf, 0x37, 0x7a,
	0x06, 0x29, 0xc1, 0xaa, 0xf0, 0x8c, 0xc9, 0xd5, 0xf1, 0xb5, 0xe4, 0xc6, 0xfd, 0x73, 0x1f, 0xe5,
	0x8e, 0x20, 0x37, 0x93, 0xf5, 0xce, 0x98, 0xa1, 0x57, 0x61, 0x06, 0x3b, 0x8e, 0xd5, 0x62, 0x84,
	0x5a, 0xb8, 0x46, 0xbc, 0xd0, 0xb8, 0x22, 0xb6, 0x97, 0xce, 0xca, 0x40, 0xc8, 0x46, 0x81, 0x90,
	0x2d, 0xf8, 0x7e, 0xe3, 0x75, 0xdc, 0x68, 0x11, 0x33, 0x85, 0x1d, 0xe7, 0x31, 0x23, 0x34, 0xcf,
	0xe9, 0x51, 0x08, 0x53, 0x2a, 0x8c, 0x8d, 0x29, 0xc1, 0xfa, 0xf4, 0x12, 0x7c, 0xae, 0x22, 0x25,
	0x98, 0x91, 0x28, 0xf4, 0x0c, 0x56, 0x6c, 0xbf, 0xd9, 0xf4, 0x3d, 0x4b, 0x60, 0x45, 0x39, 0xcd,
	0xf2, 0x03, 0x11, 0x51, 0xc6, 0xad, 0x41, 0xa7, 0xce, 0x33, 0x60, 0x24, 0x63, 0x5f, 0x71, 0xec,
	0x49, 0x06, 0x73, 0x49, 0xc2, 0x0d, 0x58, 0x42, 0xdf, 0x80, 0x85, 0xc1, 0x42, 0xe2, 0x42, 0xc8,
	0xed, 0xe1, 0x42, 0xee, 0x9e, 0x94, 0x72, 0xb5, 0x3e, 0x00, 0xff, 0x6d, 0x58, 0xe4, 0xd3, 0x1b,
	0xa7, 0x05, 0x24, 0xce, 0x12, 0xb0, 0x71, 0x52, 0xc0, 0x7c, 0x7d, 0xc0, 0x2c, 0x7a, 0x0e, 0x92,
	0x8c, 0xd0, 0x36, 0xa1, 0x96, 0x87, 0x9b, 0xc4, 0x00, 0x1e, 0x93, 0x26, 0xc8, 0xa9, 0x5d, 0xdc,
	0x24, 0xe8, 0x37, 0x1a, 0xac, 0x28, 0x8a, 0x3a, 0xc1, 0x0e, 0xa1, 0x56, 0x48, 0xb1, 0xc7, 0xaa,
	0x3e, 0x6d, 0x8a, 0xa0, 0x30, 0x32, 0x22, 0x9d, 0x34, 0x2f, 0xe1, 0x68, 0xcb, 0x42, 0x6c, 0x51,
	0x48, 0xad, 0xf4, 0x09, 0xed, 0xc9, 0x2f, 0x69, 0x36, 0x94, 0x0a, 0xbd, 0x05, 0x8b, 0x4d, 0x7c,
	0x64, 0x51, 0xf2, 0x4e, 0x8b, 0xb0, 0x50, 0xe9, 0xcf, 0xac, 0xc3, 0x03, 0xe3, 0xba, 0x30, 0xdf,
	0xca, 0x29, 0x57, 0x7e, 0x5c, 0xf2, 0xc2, 0xcd, 0x0d, 0xe1, 0xcc, 0x85, 0xc4, 0x27, 0x85, 0x2b,
	0xb7, 0x27, 0x8c, 0xb7, 0x57, 0xc7, 0xcc, 0xab, 0x4d, 0x7c, 0x64, 0x4a, 0x14, 0x29, 0x88, 0x3d,
	0x3c, 0x40, 0x0c, 0x9e, 0xaf, 0xbb, 0x8e, 0x43, 0x3c, 0x4b, 0x6c, 0xdd, 0x8a, 0xb2, 0x3d, 0x71,
	0x2c, 0xd7, 0x69, 0x10, 0x2b, 0x74, 0x9b, 0xc4, 0x6f, 0x85, 0x46, 0x52, 0xc8, 0x5a, 0x3a, 0x25,
	0xeb, 0x9e, 0x4a, 0x2b, 0x85, 0xf8, 0xaf, 0xff, 0xf9, 0xaf, 0xbf, 0x4c, 0x6a, 0x86, 0x66, 0xae,
	0x4a, 0xc0, 0x6d, 0x8e, 0x77, 0xaf, 0x03, 0x57, 0x72, 0x1a, 0xa4, 0x22, 0xc1, 0x50, 0x09, 0xae,
	0xb2, 0x90, 0x12, 0xdc, 0xec, 0x97, 0x61, 0x9c, 0x21, 0xc3, 0x9c, 0x93, 0x5c, 0xbd, 0x50, 0x05,
	0x98, 0x8d, 0x2c, 0x13, 0xc1, 0xac, 0x9c, 0x05, 0x33, 0xa3, 0x38, 0x22, 0x8c, 0xaf, 0xc2, 0xb4,
	0x43, 0xb1, 0xeb, 0x75, 0x10, 0x52, 0x67, 0x21, 0xa4, 0x04, 0x7d, 0xc4, 0xff, 0x1a, 0x2c, 0x38,
	0xa4, 0x81, 0x8f, 0x89, 0x63, 0xd9, 0x0d, 0x9f, 0x75, 0x37, 0x94, 0x3e, 0x0b, 0xe7, 0xaa, 0xe2,
	0xdb, 0xe2, 0x6c, 0x11, 0xdc, 0x16, 0x80, 0xac, 0x89, 0xac, 0x86, 0x5f, 0x33, 0xa6, 0x45, 0x76,
	0x7c, 0xbe, 0x3f, 0x46, 0xba, 0x35, 0x53, 0x7b, 0x33, 0x9b, 0x17, 0x1f, 0x8f, 0xfc, 0x9a, 0x99,
	0xc0, 0xd1, 0x10, 0x15, 0x01, 0xb5, 0x18, 0xb1, 0x28, 0x69, 0xfa, 0x21, 0xb1, 0xb0, 0xe3, 0x50,
	0xc2, 0x98, 0x31, 0x73, 0x66, 0xf2, 0xd3, 0x5b, 0x8c, 0x98, 0x82, 0x29, 0x2f, 0x79, 0xd0, 0x3a,
	0xcc, 0x1f, 0x55, 0xab, 0x96, 0xd7, 0x6a, 0x5a, 0x21, 0x6d, 0x31, 0xee, 0x19, 0x75, 0x3f, 0x60,
	0xc6, 0xd5, 0x55, 0x6d, 0x6d, 0xda, 0x9c, 0x3b, 0xaa, 0x56, 0x77, 0x5b, 0xcd, 0x8a, 0x5c, 0x29,
	0xfa, 0x01, 0x43, 0x3f, 0xd3, 0xe0, 0x9a, 0xeb, 0x85, 0x84, 0x7a, 0xb8, 0x11, 0x49, 0x8e, 0x6e,
	0xab, 0x25, 0xa1, 0x40, 0xfd, 0x12, 0xe2, 0xac, 0xa4, 0x24, 0x2a, 0xb5, 0xe5, 0xed, 0x66, 0x2e,
	0xb8, 0x83, 0xa6, 0xd1, 0x0b, 0x30, 0xcb, 0x0e, 0xdd, 0xc0, 0xe2, 0x1b, 0xe3, 0xf5, 0x8f, 0xe7,
	0x18, 0x0b, 0xab, 0xda, 0x5a, 0xdc, 0x9c, 0xe6, 0xd3, 0x6f, 0x56, 0xab, 0x79, 0x31, 0x89, 0x74,
	0x18, 0x6f, 0xbb, 0xd8, 0x58, 0x14, 0x09, 0x85, 0x0f, 0xd1, 0x03, 0xb8, 0x5a, 0x23, 0x1e, 0xa1,
	0x38, 0x24, 0x9d, 0x90, 0x74, 0x1d, 0x63, 0xf6, 0x4c, 0xc3, 0xce, 0x45, 0x6c, 0x2a, 0x04, 0x4b,
	0x0e, 0x7a, 0x05, 0x56, 0x02, 0x4a, 0x44, 0xe8, 0x5b, 0xdc, 0x14, 0xc2, 0x60, 0x3d, 0xa0, 0xab,
	0x42, 0xa5, 0xa5, 0x88, 0x66, 0x5b, 0x91, 0x74, 0x01, 0x7e, 0xa9, 0xc1, 0x72, 0xd5, 0xa7, 0xef,
	0x62, 0xca, 0x3d, 0xcf, 0x25, 0x5e, 0x68, 0xd9, 0x84, 0x86, 0x96, 0x43, 0x42, 0xec, 0x36, 0x98,
	0xa1, 0x8b, 0xac, 0x76, 0x78, 0x09, 0xd6, 0xde, 0x91, 0x52, 0xb7, 0x84, 0xd0, 0x2d, 0x42, 0xc3,
	0x7b, 0x52, 0x64, 0x4f, 0x4e, 0x33, 0xaa, 0x43, 0x68, 0xb8, 0xda, 0xcf, 0x31, 0x12, 0x5a, 0x76,
	0x8b, 0x52, 0xa1, 0xf3, 0x00, 0xd5, 0xe7, 0x84, 0x41, 0xbd, 0x4b, 0x49, 0xc8, 0xe1, 0x96, 0x14,
	0x7c, 0x4a, 0x33, 0x73, 0x99, 0x0d, 0x5f, 0x44, 0x5f, 0x00, 0x14, 0x50, 0xff, 0xe8, 0xd8, 0xba,
	0x7b, 0xe7, 0x0e, 0x97, 0x18, 0xba, 0x5e, 0x8b, 0x18, 0x48, 0x1c, 0x92, 0x2e, 0x56, 0xee, 0xde,
	0xb9, 0xb3, 0xa5, 0xe6, 0x11, 0x81, 0xbb, 0x94, 0x88, 0xa3, 0xf3, 0x42, 0xcb, 0x0d, 0xda, 0x2f,
	0x9d, 0x88, 0x45, 0x0b, 0x33, 0x39, 0xdd, 0xe4, 0x0e, 0xe8, 0xf0, 0xf1, 0xcb, 0xc6, 0xbc, 0x00,
	0xbb, 0xdd, 0x61, 0x2c, 0x05, 0xed, 0x97, 0xfa, 0xa2, 0x31, 0xcf, 0xf8, 0xd4, 0x6b, 0x82, 0xa5,
	0x14, 0xb4, 0x5f, 0x46, 0xdf, 0xd5, 0x60, 0xb6, 0x15, 0xd4, 0x28, 0x76, 0xa2, 0x8a, 0x90, 0x19,
	0xd7, 0x44, 0xca, 0x78, 0xfb, 0x12, 0x6c, 0xf7, 0x58, 0x4a, 0x52, 0xc1, 0x35, 0xd3, 0xea, 0xfd,
	0x64, 0x28, 0x0f, 0x33, 0x1e, 0xbf, 0xb6, 0x1a, 0xee, 0x7b, 0xc4, 0x0a, 0x70, 0x58, 0x37, 0x6e,
	0x9c, 0x19, 0x16, 0xd3, 0x1d, 0x8e, 0x7d, 0x1c, 0xd6, 0xd1, 0x2d, 0x98, 0x6e, 0x12, 0x5a, 0x23,
	0x16, 0x6b, 0x60, 0x56, 0x27, 0xcc, 0xb8, 0x29, 0x2c, 0x92, 0x12, 0x93, 0x65, 0x39, 0x87, 0xbe,
	0xa3, 0xc1, 0x7c, 0x37, 0x4c, 0xac, 0xce, 0x06, 0x8d, 0xe7, 0x85, 0xb8, 0xbd, 0xf3, 0x95, 0xda,
	0x2a, 0xba, 0xee, 0x6d, 0x47, 0xec, 0x26, 0xa2, 0x51, 0xc4, 0x75, 0xe6, 0xd2, 0xff, 0xbd, 0x02,
	0x53, 0xaa, 0x6a, 0x43, 0x7f, 0xd4, 0xe0, 0x85, 0x61, 0x97, 0xa8, 0x1f, 0x10, 0x99, 0xeb, 0x65,
	0x69, 0x22, 0x9f, 0x2d, 0xf5, 0xcb, 0x2b, 0x21, 0xb3, 0x7b, 0x91, 0x40, 0x5e, 0xf8, 0x14, 0xf4,
	0x28, 0x1c, 0x3b, 0xb7, 0x73, 0x66, 0xe0, 0xed, 0xdc, 0xc7, 0x85, 0xea, 0x70, 0x67, 0xd8, 0x7e,
	0x4e, 0x96, 0x21, 0x55, 0x9f, 0xf2, 0x47, 0x2d, 0x33, 0x62, 0xab, 0xe3, 0x6b, 0x89, 0x42, 0xcc,
	0xd0, 0xcc, 0xdb, 0x03, 0x25, 0xf4, 0x57, 0x1e, 0x3b, 0x3e, 0xad, 0xe0, 0x1a, 0x43, 0xaf, 0xc0,
	0xac, 0x8a, 0x7e, 0x86, 0x9b, 0x41, 0x83, 0x57, 0xd9, 0xf2, 0xbd, 0xb4, 0xa8, 0x4c, 0xc4, 0x1f,
	0x7b, 0x7c, 0xd3, 0xfb, 0xf2, 0x7d, 0x6c, 0xce, 0x48, 0xf2, 0xb2, 0xa2, 0xe6, 0x00, 0x14, 0x7b,
	0x8e, 0xdf, 0xec, 0x02, 0x4c, 0x8c, 0x06, 0x90, 0xe4, 0x1d, 0x80, 0x3c, 0xe8, 0x7e, 0x9b, 0x50,
	0xdc, 0x68, 0x74, 0x11, 0x26, 0x47, 0x22, 0xcc, 0x2a, 0xfa, 0x0e, 0x84, 0x01, 0x53, 0x6d, 0x42,
	0x0f, 0x7c, 0x46, 0xc4, 0xeb, 0x22, 0x6e, 0x46, 0x9f, 0xe8, 0x21, 0xf0, 0xa2, 0x4b, 0xc4, 0x02,
	0xb7, 0x92, 0xd5, 0x20, 0x5e, 0x2d, 0xac, 0xab, 0x87, 0xc4, 0xc8, 0xc2, 0xcd, 0xd4, 0x9b, 0xf8,
	0x88, 0x87, 0x44, 0x05, 0xd7, 0x1e, 0x09, 0x2e, 0x94, 0x87, 0x64, 0xb7, 0x8b, 0xc0, 0xab, 0x73,
	0x1e, 0xe5, 0xab, 0xbd, 0x4a, 0xaa, 0xd7, 0x03, 0x57, 0x76, 0x4b, 0x50, 0x56, 0x70, 0xcd, 0x04,
	0x3b, 0x1a, 0x72, 0x73, 0xc7, 0x03, 0xea, 0xb7, 0x5d, 0x87, 0x50, 0x55, 0x7c, 0xdf, 0xea, 0x2f,
	0x2c, 0x64, 0x27, 0xa3, 0xbd, 0xd9, 0x71, 0x27, 0xee, 0x6c, 0x66, 0x87, 0x29, 0xb3, 0x06, 0xd3,
	0xfd, 0xae, 0x92, 0x84, 0xa9, 0xd2, 0xee, 0x7d, 0x73, 0xbb, 0x5c, 0xd6, 0xc7, 0x10, 0xc0, 0x95,
	0x6d, 0x39, 0xd6, 0x72, 0x5f, 0xff, 0xc9, 0xef, 0x3f, 0xbc, 0xf1, 0x3a, 0x54, 0xfa, 0xe0, 0xa5,
	0x97, 0x9f, 0xed, 0xe4, 0x1b, 0xa3, 0x9d, 0x3c, 0xfd, 0xb1, 0x06, 0x0b, 0x03, 0x2f, 0x7c, 0x74,
	0x13, 0x52, 0x2d, 0xcf, 0x3d, 0xb2, 0x98, 0x6f, 0x1f, 0x92, 0x90, 0x89, 0x80, 0x8b, 0x9b, 0x49,
	0x3e, 0x57, 0x96, 0x53, 0x39, 0x97, 0x6b, 0xe6, 0xc0, 0xc1, 0x85, 0x6a, 0x36, 0x50, 0x9b, 0xf4,
	0x8f, 0x63, 0xb0, 0x3c, 0xe2, 0xbe, 0x41, 0x2f, 0xc1, 0x14, 0x6b, 0x1d, 0x3c, 0x23, 0x76, 0x28,
	0x14, 0x1d, 0x9d, 0x2a, 0x23, 0x52, 0x84, 0x60, 0x82, 0xdf, 0x95, 0x22, 0x52, 0xe2, 0xa6, 0x18,
	0xa3, 0x79, 0x98, 0xb4, 0xeb, 0xd8, 0xf5, 0x94, 0x07, 0xca, 0x0f, 0x5e, 0xbf, 0x38, 0x1e, 0x13,
	0x11, 0x11, 0x37, 0xf9, 0x90, 0xcf, 0xb4, 0xa8, 0x2b, 0x3c, 0x3c, 0x6e, 0xf2, 0x61, 0xce, 0xe7,
	0xe6, 0x78, 0x06, 0xf5, 0x0b, 0x35, 0xc7, 0x88, 0x4d, 0x3f, 0x98, 0x88, 0xc7, 0xf4, 0xf1, 0xf4,
	0x2f, 0x62, 0x30, 0xdd, 0x77, 0x9d, 0x88, 0xa3, 0x53, 0x37, 0x59, 0xa7, 0xc5, 0x93, 0x30, 0x93,
	0x6a, 0x4e, 0x34, 0x5f, 0x30, 0x4c, 0x45, 0x5d, 0x83, 0xd8, 0xc5, 0x76, 0x0d, 0x22, 0x5c, 0x7e,
	0x24, 0xc4, 0xc3, 0x07, 0x0d, 0xe2, 0xa8, 0x4c, 0x34, 0xf2, 0x48, 0x14, 0x69, 0x0e, 0x73, 0x23,
	0xbe, 0x05, 0x4f, 0x2f, 0xd4, 0x88, 0x7d, 0xe6, 0xc9, 0xbc, 0x0c, 0x89, 0x4e, 0x6b, 0x0a, 0xc5,
	0x61, 0x22, 0xff, 0xb8, 0xb2, 0xa7, 0x8f, 0xa1, 0x04, 0x4c, 0x16, 0x2b, 0x95, 0xfd, 0xbb, 0xba,
	0x16, 0x0d, 0x37, 0xf4, 0x58, 0x34, 0xdc, 0xd4, 0xc7, 0x33, 0x65, 0x48, 0x0f, 0x7f, 0x83, 0xa2,
	0x69, 0x48, 0xec, 0xbd, 0xbe, 0x6d, 0xbe, 0x61, 0x96, 0x2a, 0xdb, 0xfa, 0x18, 0x9a, 0x07, 0x3d,
	0xbf, 0xbf, 0xbf, 0xbd, 0x7b, 0xcf, 0x2a, 0xed, 0x58, 0xf9, 0x42, 0x79, 0x7b, 0xb7, 0xa2, 0x6b,
	0x48, 0x87, 0xd4, 0x7e, 0xbe, 0x5c, 0xb6, 0x2a, 0x45, 0x73, 0xef, 0xf1, 0xfd, 0xa2, 0x1e, 0xcb,
	0x1c, 0x83, 0x31, 0xac, 0x04, 0x44, 0x29, 0x88, 0x97, 0xf3, 0xbb, 0xa5, 0x4a, 0xe9, 0x29, 0x47,
	0xd4, 0x21, 0xb5, 0xb3, 0x67, 0xbe, 0x91, 0x37, 0xef, 0x59, 0x7b, 0xbb, 0x8f, 0x9e, 0xe8, 0x1a,
	0x42, 0x30, 0xa3, 0x64, 0xa8, 0x05, 0x3d, 0xc6, 0xa9, 0x22, 0x1e, 0xab, 0xbc, 0x5d, 0xd1, 0xc7,
	0xd1, 0x35, 0xb8, 0x9a, 0x7f, 0xf4, 0x46, 0xfe, 0x49, 0xd9, 0xea, 0x63, 0x9f, 0xc8, 0x95, 0xb9,
	0xa9, 0x77, 0xe1, 0xd1, 0x45, 0x9a, 0xba, 0xb0, 0x08, 0xb3, 0xb2, 0xab, 0xc6, 0x02, 0x62, 0xbb,
	0x55, 0x97, 0x50, 0x34, 0xfe, 0x9f, 0x82, 0xf6, 0x60, 0x22, 0xbe, 0xac, 0xaf, 0x64, 0xfe, 0xa4,
	0xc1, 0xb8, 0xe9, 0x30, 0xf4, 0x35, 0x98, 0xee, 0xeb, 0x43, 0xab, 0xa0, 0xcd, 0x0c, 0x6e, 0x60,
	0xc8, 0x73, 0x2b, 0x0b, 0x4a, 0x51, 0x17, 0x7f, 0x4f, 0xd4, 0xc5, 0x29, 0xbb, 0x67, 0x1e, 0x6d,
	0xc2, 0x5c, 0x6f, 0x3b, 0x4f, 0x56, 0x09, 0x27, 0x9a, 0x8a, 0xb3, 0x3d, 0xfd, 0x3a, 0x9e, 0x74,
	0x73, 0x79, 0x6e, 0x82, 0xaf, 0x40, 0xee, 0x53, 0x9a, 0xc0, 0x74, 0x58, 0xe6, 0xdf, 0x1a, 0x5c,
	0xef, 0xe9, 0xd2, 0xf5, 0xb5, 0x08, 0xd9, 0x23, 0x97, 0x85, 0xe8, 0x18, 0x96, 0x7b, 0x1b, 0x83,
	0x4a, 0xc1, 0x88, 0xc4, 0xd0, 0x44, 0xfc, 0xad, 0x0f, 0xe9, 0x3b, 0x0e, 0x83, 0x16, 0x76, 0xf8,
	0xa1, 0x16, 0x8b, 0x6b, 0xe6, 0x12, 0x1b, 0x26, 0xfe, 0xbc, 0x77, 0xc7, 0xc8, 0x7d, 0x65, 0xfe,
	0x31, 0x03, 0xa9, 0xde, 0xfe, 0x24, 0x5a, 0x86, 0x89, 0x4e, 0x6d, 0xd6, 0x63, 0x75, 0x31, 0x89,
	0x3e, 0xd2, 0x60, 0x4e, 0x28, 0x6a, 0x1d, 0x92, 0x63, 0xeb, 0xa0, 0xe5, 0x36, 0xf8, 0xdd, 0x19,
	0x13, 0xe7, 0xfe, 0xe4, 0xc2, 0x7a, 0xa4, 0xf2, 0xe3, 0x21, 0x39, 0x2e, 0x48, 0x01, 0x3d, 0xee,
	0x32, 0xcb, 0xfa, 0x97, 0xd0, 0x9b, 0x30, 0x47, 0x9d, 0xe8, 0x41, 0x1d, 0x39, 0xe2, 0xf8, 0xa7,
	0x70, 0xc4, 0x59, 0xea, 0xb0, 0xde, 0x25, 0xf4, 0xb1, 0x06, 0xab, 0x23, 0x8e, 0xdc, 0x6a, 0xb8,
	0x2c, 0x54, 0xd5, 0xd5, 0xd3, 0x8b, 0xda, 0xfa, 0xe9, 0x03, 0x2a, 0x8e, 0x99, 0xd7, 0xd9, 0x48,
	0xcf, 0xac, 0x01, 0x44, 0x6a, 0x3a, 0x4c, 0x15, 0x6b, 0x3b, 0x17, 0xa1, 0x90, 0xe8, 0xb2, 0x27,
	0x58, 0xf4, 0x91, 0xfe, 0x5b, 0x02, 0x66, 0x4f, 0x9c, 0x0c, 0xfa, 0x81, 0x06, 0x89, 0x2a, 0xc5,
	0xb5, 0x26, 0xf1, 0xc2, 0x28, 0x0a, 0xdc, 0x4b, 0x73, 0x84, 0xec, 0x8e, 0x12, 0xd5, 0xeb, 0x18,
	0x32, 0x7e, 0xba, 0x5a, 0xa4, 0xff, 0x3a, 0x05, 0xb3, 0x27, 0x08, 0xd1, 0xaf, 0x34, 0x58, 0x54,
	0xbd, 0xce, 0x36, 0xbf, 0xab, 0xf8, 0x33, 0x89, 0x62, 0x3b, 0xf4, 0xa9, 0xca, 0x5a, 0xdf, 0xfc,
	0xcc, 0x94, 0xce, 0xca, 0x9b, 0x47, 0x5c, 0x99, 0xdb, 0x91, 0x16, 0xc5, 0x31, 0x73, 0xbe, 0x3e,
	0x60, 0x3e, 0xfd, 0xd1, 0x24, 0xcc, 0x0f, 0x62, 0x18, 0x1d, 0xa7, 0xff, 0x0f, 0x73, 0xa4, 0x41,
	0x9a, 0xe2, 0x25, 0x41, 0x02, 0x4c, 0x31, 0xdf, 0xa8, 0xc8, 0xa3, 0xa6, 0xae, 0x16, 0xca, 0xd1,
	0x3c, 0x5a, 0x84, 0x49, 0xd7, 0x73, 0xc8, 0x91, 0x08, 0x9b, 0xe9, 0xe2, 0x98, 0x29, 0x3f, 0x79,
	0x00, 0x4c, 0x29, 0x62, 0xe5, 0xe7, 0x1f, 0x6a, 0x9f, 0xaf, 0x95, 0xb2, 0x0f, 0xdb, 0xdb, 0x52,
	0xa1, 0xe2, 0x98, 0x19, 0xe9, 0x96, 0xfe, 0xbb, 0x06, 0x89, 0xce, 0x02, 0xfa, 0x3f, 0x48, 0x74,
	0xb7, 0x7c, 0xc2, 0x38, 0xdd, 0x15, 0xb4, 0x04, 0xe3, 0x87, 0xe4, 0xf8, 0xe4, 0xdd, 0xc2, 0xe7,
	0x72, 0xdf, 0xd7, 0x78, 0xc2, 0xfd, 0x40, 0x83, 0xf7, 0xb5, 0xf3, 0xa7, 0xdc, 0xf3, 0x6e, 0x34,
	0xf7, 0x2d, 0xae, 0xcc, 0x7b, 0x70, 0xf4, 0x79, 0xa9, 0x52, 0x98, 0x81, 0x94, 0x0a, 0x16, 0x51,
	0x88, 0xe6, 0x9e, 0x71, 0x85, 0x08, 0xd8, 0x9f, 0x81, 0x42, 0x85, 0x24, 0x4c, 0x70, 0x99, 0xa2,
	0xfa, 0xc8, 0x3d, 0xe5, 0x82, 0x1f, 0x43, 0xf9, 0x12, 0x04, 0xe7, 0x1e, 0x70, 0xec, 0x6d, 0xd8,
	0xba, 0x00, 0xec, 0xc2, 0x35, 0xd0, 0xa3, 0xeb, 0xa8, 0xaf, 0x7c, 0xca, 0xfc, 0x4e, 0x83, 0x44,
	0x27, 0xb7, 0x22, 0x02, 0x46, 0x37, 0x6f, 0x5b, 0xe7, 0xaf, 0xa4, 0x16, 0x3a, 0x99, 0xba, 0x97,
	0x20, 0x77, 0x9f, 0xef, 0xac, 0x00, 0xaf, 0x9e, 0x6f, 0x67, 0x0e, 0xcb, 0xfc, 0x3c, 0x06, 0xd0,
	0x7d, 0x22, 0x8c, 0xce, 0x3f, 0x07, 0x70, 0x63, 0x58, 0xcb, 0x44, 0xb5, 0xbe, 0x65, 0xcd, 0x70,
	0xed, 0xd4, 0x6b, 0xa2, 0x2c, 0xfe, 0xcf, 0x17, 0x62, 0x86, 0x56, 0x1c, 0x33, 0x97, 0x07, 0xf6,
	0x4e, 0xd4, 0x03, 0xe9, 0x4b, 0x90, 0xe2, 0xbe, 0xe1, 0xf4, 0xff, 0xfa, 0x9d, 0x3f, 0x85, 0x98,
	0xf7, 0x8e, 0x8b, 0x63, 0x66, 0x52, 0xd0, 0x4a, 0xd6, 0x5c, 0x91, 0xdb, 0x64, 0x0b, 0xf2, 0xe7,
	0x28, 0x9a, 0xa5, 0x15, 0x0a, 0xd3, 0x90, 0x54, 0x27, 0xc7, 0xf1, 0x1f, 0x4c, 0xc4, 0xc7, 0xf5,
	0x89, 0xcc, 0x4f, 0x35, 0x40, 0xa7, 0x1b, 0x67, 0xe8, 0x8b, 0x27, 0x14, 0xd6, 0x86, 0x2b, 0xdc,
	0xaf, 0xee, 0x3e, 0x57, 0xf7, 0x21, 0x94, 0x3e, 0x6d, 0x81, 0x7b, 0x4a, 0x95, 0xc2, 0x3b, 0xbf,
	0xfd, 0xf6, 0x1f, 0xfe, 0x7c, 0x25, 0xa6, 0xc7, 0xa0, 0xe4, 0xfa, 0xd2, 0xcb, 0x44, 0xcb, 0xf6,
	0x3c, 0xe9, 0xbd, 0x90, 0x1e, 0xf8, 0x98, 0x10, 0x7f, 0x27, 0xf7, 0xb5, 0x83, 0x2b, 0x62, 0x7f,
	0x9b, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0xb8, 0xfa, 0x64, 0x4f, 0x94, 0x23, 0x00, 0x00,
}
