// Code generated by protoc-gen-go. DO NOT EDIT.
// source: envoy/api/v2/core/health_check.proto

package envoy_api_v2_core

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import any "github.com/golang/protobuf/ptypes/any"
import duration "github.com/golang/protobuf/ptypes/duration"
import _struct "github.com/golang/protobuf/ptypes/struct"
import wrappers "github.com/golang/protobuf/ptypes/wrappers"
import base "google.golang.org/grpc/balancer/xds/internal/proto/envoy/api/v2/core/base"
import _range "google.golang.org/grpc/balancer/xds/internal/proto/envoy/type/range"
import _ "google.golang.org/grpc/balancer/xds/internal/proto/validate"

// 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.ProtoPackageIsVersion2 // please upgrade the proto package

type HealthStatus int32

const (
	HealthStatus_UNKNOWN   HealthStatus = 0
	HealthStatus_HEALTHY   HealthStatus = 1
	HealthStatus_UNHEALTHY HealthStatus = 2
	HealthStatus_DRAINING  HealthStatus = 3
	HealthStatus_TIMEOUT   HealthStatus = 4
	HealthStatus_DEGRADED  HealthStatus = 5
)

var HealthStatus_name = map[int32]string{
	0: "UNKNOWN",
	1: "HEALTHY",
	2: "UNHEALTHY",
	3: "DRAINING",
	4: "TIMEOUT",
	5: "DEGRADED",
}
var HealthStatus_value = map[string]int32{
	"UNKNOWN":   0,
	"HEALTHY":   1,
	"UNHEALTHY": 2,
	"DRAINING":  3,
	"TIMEOUT":   4,
	"DEGRADED":  5,
}

func (x HealthStatus) String() string {
	return proto.EnumName(HealthStatus_name, int32(x))
}
func (HealthStatus) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_health_check_0d3155ea06758d89, []int{0}
}

type HealthCheck struct {
	Timeout               *duration.Duration    `protobuf:"bytes,1,opt,name=timeout,proto3" json:"timeout,omitempty"`
	Interval              *duration.Duration    `protobuf:"bytes,2,opt,name=interval,proto3" json:"interval,omitempty"`
	InitialJitter         *duration.Duration    `protobuf:"bytes,20,opt,name=initial_jitter,json=initialJitter,proto3" json:"initial_jitter,omitempty"`
	IntervalJitter        *duration.Duration    `protobuf:"bytes,3,opt,name=interval_jitter,json=intervalJitter,proto3" json:"interval_jitter,omitempty"`
	IntervalJitterPercent uint32                `protobuf:"varint,18,opt,name=interval_jitter_percent,json=intervalJitterPercent,proto3" json:"interval_jitter_percent,omitempty"`
	UnhealthyThreshold    *wrappers.UInt32Value `protobuf:"bytes,4,opt,name=unhealthy_threshold,json=unhealthyThreshold,proto3" json:"unhealthy_threshold,omitempty"`
	HealthyThreshold      *wrappers.UInt32Value `protobuf:"bytes,5,opt,name=healthy_threshold,json=healthyThreshold,proto3" json:"healthy_threshold,omitempty"`
	AltPort               *wrappers.UInt32Value `protobuf:"bytes,6,opt,name=alt_port,json=altPort,proto3" json:"alt_port,omitempty"`
	ReuseConnection       *wrappers.BoolValue   `protobuf:"bytes,7,opt,name=reuse_connection,json=reuseConnection,proto3" json:"reuse_connection,omitempty"`
	// Types that are valid to be assigned to HealthChecker:
	//	*HealthCheck_HttpHealthCheck_
	//	*HealthCheck_TcpHealthCheck_
	//	*HealthCheck_GrpcHealthCheck_
	//	*HealthCheck_CustomHealthCheck_
	HealthChecker                isHealthCheck_HealthChecker `protobuf_oneof:"health_checker"`
	NoTrafficInterval            *duration.Duration          `protobuf:"bytes,12,opt,name=no_traffic_interval,json=noTrafficInterval,proto3" json:"no_traffic_interval,omitempty"`
	UnhealthyInterval            *duration.Duration          `protobuf:"bytes,14,opt,name=unhealthy_interval,json=unhealthyInterval,proto3" json:"unhealthy_interval,omitempty"`
	UnhealthyEdgeInterval        *duration.Duration          `protobuf:"bytes,15,opt,name=unhealthy_edge_interval,json=unhealthyEdgeInterval,proto3" json:"unhealthy_edge_interval,omitempty"`
	HealthyEdgeInterval          *duration.Duration          `protobuf:"bytes,16,opt,name=healthy_edge_interval,json=healthyEdgeInterval,proto3" json:"healthy_edge_interval,omitempty"`
	EventLogPath                 string                      `protobuf:"bytes,17,opt,name=event_log_path,json=eventLogPath,proto3" json:"event_log_path,omitempty"`
	AlwaysLogHealthCheckFailures bool                        `protobuf:"varint,19,opt,name=always_log_health_check_failures,json=alwaysLogHealthCheckFailures,proto3" json:"always_log_health_check_failures,omitempty"`
	XXX_NoUnkeyedLiteral         struct{}                    `json:"-"`
	XXX_unrecognized             []byte                      `json:"-"`
	XXX_sizecache                int32                       `json:"-"`
}

func (m *HealthCheck) Reset()         { *m = HealthCheck{} }
func (m *HealthCheck) String() string { return proto.CompactTextString(m) }
func (*HealthCheck) ProtoMessage()    {}
func (*HealthCheck) Descriptor() ([]byte, []int) {
	return fileDescriptor_health_check_0d3155ea06758d89, []int{0}
}
func (m *HealthCheck) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HealthCheck.Unmarshal(m, b)
}
func (m *HealthCheck) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HealthCheck.Marshal(b, m, deterministic)
}
func (dst *HealthCheck) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HealthCheck.Merge(dst, src)
}
func (m *HealthCheck) XXX_Size() int {
	return xxx_messageInfo_HealthCheck.Size(m)
}
func (m *HealthCheck) XXX_DiscardUnknown() {
	xxx_messageInfo_HealthCheck.DiscardUnknown(m)
}

var xxx_messageInfo_HealthCheck proto.InternalMessageInfo

func (m *HealthCheck) GetTimeout() *duration.Duration {
	if m != nil {
		return m.Timeout
	}
	return nil
}

func (m *HealthCheck) GetInterval() *duration.Duration {
	if m != nil {
		return m.Interval
	}
	return nil
}

func (m *HealthCheck) GetInitialJitter() *duration.Duration {
	if m != nil {
		return m.InitialJitter
	}
	return nil
}

func (m *HealthCheck) GetIntervalJitter() *duration.Duration {
	if m != nil {
		return m.IntervalJitter
	}
	return nil
}

func (m *HealthCheck) GetIntervalJitterPercent() uint32 {
	if m != nil {
		return m.IntervalJitterPercent
	}
	return 0
}

func (m *HealthCheck) GetUnhealthyThreshold() *wrappers.UInt32Value {
	if m != nil {
		return m.UnhealthyThreshold
	}
	return nil
}

func (m *HealthCheck) GetHealthyThreshold() *wrappers.UInt32Value {
	if m != nil {
		return m.HealthyThreshold
	}
	return nil
}

func (m *HealthCheck) GetAltPort() *wrappers.UInt32Value {
	if m != nil {
		return m.AltPort
	}
	return nil
}

func (m *HealthCheck) GetReuseConnection() *wrappers.BoolValue {
	if m != nil {
		return m.ReuseConnection
	}
	return nil
}

type isHealthCheck_HealthChecker interface {
	isHealthCheck_HealthChecker()
}

type HealthCheck_HttpHealthCheck_ struct {
	HttpHealthCheck *HealthCheck_HttpHealthCheck `protobuf:"bytes,8,opt,name=http_health_check,json=httpHealthCheck,proto3,oneof"`
}

type HealthCheck_TcpHealthCheck_ struct {
	TcpHealthCheck *HealthCheck_TcpHealthCheck `protobuf:"bytes,9,opt,name=tcp_health_check,json=tcpHealthCheck,proto3,oneof"`
}

type HealthCheck_GrpcHealthCheck_ struct {
	GrpcHealthCheck *HealthCheck_GrpcHealthCheck `protobuf:"bytes,11,opt,name=grpc_health_check,json=grpcHealthCheck,proto3,oneof"`
}

type HealthCheck_CustomHealthCheck_ struct {
	CustomHealthCheck *HealthCheck_CustomHealthCheck `protobuf:"bytes,13,opt,name=custom_health_check,json=customHealthCheck,proto3,oneof"`
}

func (*HealthCheck_HttpHealthCheck_) isHealthCheck_HealthChecker() {}

func (*HealthCheck_TcpHealthCheck_) isHealthCheck_HealthChecker() {}

func (*HealthCheck_GrpcHealthCheck_) isHealthCheck_HealthChecker() {}

func (*HealthCheck_CustomHealthCheck_) isHealthCheck_HealthChecker() {}

func (m *HealthCheck) GetHealthChecker() isHealthCheck_HealthChecker {
	if m != nil {
		return m.HealthChecker
	}
	return nil
}

func (m *HealthCheck) GetHttpHealthCheck() *HealthCheck_HttpHealthCheck {
	if x, ok := m.GetHealthChecker().(*HealthCheck_HttpHealthCheck_); ok {
		return x.HttpHealthCheck
	}
	return nil
}

func (m *HealthCheck) GetTcpHealthCheck() *HealthCheck_TcpHealthCheck {
	if x, ok := m.GetHealthChecker().(*HealthCheck_TcpHealthCheck_); ok {
		return x.TcpHealthCheck
	}
	return nil
}

func (m *HealthCheck) GetGrpcHealthCheck() *HealthCheck_GrpcHealthCheck {
	if x, ok := m.GetHealthChecker().(*HealthCheck_GrpcHealthCheck_); ok {
		return x.GrpcHealthCheck
	}
	return nil
}

func (m *HealthCheck) GetCustomHealthCheck() *HealthCheck_CustomHealthCheck {
	if x, ok := m.GetHealthChecker().(*HealthCheck_CustomHealthCheck_); ok {
		return x.CustomHealthCheck
	}
	return nil
}

func (m *HealthCheck) GetNoTrafficInterval() *duration.Duration {
	if m != nil {
		return m.NoTrafficInterval
	}
	return nil
}

func (m *HealthCheck) GetUnhealthyInterval() *duration.Duration {
	if m != nil {
		return m.UnhealthyInterval
	}
	return nil
}

func (m *HealthCheck) GetUnhealthyEdgeInterval() *duration.Duration {
	if m != nil {
		return m.UnhealthyEdgeInterval
	}
	return nil
}

func (m *HealthCheck) GetHealthyEdgeInterval() *duration.Duration {
	if m != nil {
		return m.HealthyEdgeInterval
	}
	return nil
}

func (m *HealthCheck) GetEventLogPath() string {
	if m != nil {
		return m.EventLogPath
	}
	return ""
}

func (m *HealthCheck) GetAlwaysLogHealthCheckFailures() bool {
	if m != nil {
		return m.AlwaysLogHealthCheckFailures
	}
	return false
}

// XXX_OneofFuncs is for the internal use of the proto package.
func (*HealthCheck) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
	return _HealthCheck_OneofMarshaler, _HealthCheck_OneofUnmarshaler, _HealthCheck_OneofSizer, []interface{}{
		(*HealthCheck_HttpHealthCheck_)(nil),
		(*HealthCheck_TcpHealthCheck_)(nil),
		(*HealthCheck_GrpcHealthCheck_)(nil),
		(*HealthCheck_CustomHealthCheck_)(nil),
	}
}

func _HealthCheck_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
	m := msg.(*HealthCheck)
	// health_checker
	switch x := m.HealthChecker.(type) {
	case *HealthCheck_HttpHealthCheck_:
		b.EncodeVarint(8<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.HttpHealthCheck); err != nil {
			return err
		}
	case *HealthCheck_TcpHealthCheck_:
		b.EncodeVarint(9<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.TcpHealthCheck); err != nil {
			return err
		}
	case *HealthCheck_GrpcHealthCheck_:
		b.EncodeVarint(11<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.GrpcHealthCheck); err != nil {
			return err
		}
	case *HealthCheck_CustomHealthCheck_:
		b.EncodeVarint(13<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.CustomHealthCheck); err != nil {
			return err
		}
	case nil:
	default:
		return fmt.Errorf("HealthCheck.HealthChecker has unexpected type %T", x)
	}
	return nil
}

func _HealthCheck_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
	m := msg.(*HealthCheck)
	switch tag {
	case 8: // health_checker.http_health_check
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(HealthCheck_HttpHealthCheck)
		err := b.DecodeMessage(msg)
		m.HealthChecker = &HealthCheck_HttpHealthCheck_{msg}
		return true, err
	case 9: // health_checker.tcp_health_check
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(HealthCheck_TcpHealthCheck)
		err := b.DecodeMessage(msg)
		m.HealthChecker = &HealthCheck_TcpHealthCheck_{msg}
		return true, err
	case 11: // health_checker.grpc_health_check
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(HealthCheck_GrpcHealthCheck)
		err := b.DecodeMessage(msg)
		m.HealthChecker = &HealthCheck_GrpcHealthCheck_{msg}
		return true, err
	case 13: // health_checker.custom_health_check
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(HealthCheck_CustomHealthCheck)
		err := b.DecodeMessage(msg)
		m.HealthChecker = &HealthCheck_CustomHealthCheck_{msg}
		return true, err
	default:
		return false, nil
	}
}

func _HealthCheck_OneofSizer(msg proto.Message) (n int) {
	m := msg.(*HealthCheck)
	// health_checker
	switch x := m.HealthChecker.(type) {
	case *HealthCheck_HttpHealthCheck_:
		s := proto.Size(x.HttpHealthCheck)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *HealthCheck_TcpHealthCheck_:
		s := proto.Size(x.TcpHealthCheck)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *HealthCheck_GrpcHealthCheck_:
		s := proto.Size(x.GrpcHealthCheck)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *HealthCheck_CustomHealthCheck_:
		s := proto.Size(x.CustomHealthCheck)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case nil:
	default:
		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
	}
	return n
}

type HealthCheck_Payload struct {
	// Types that are valid to be assigned to Payload:
	//	*HealthCheck_Payload_Text
	//	*HealthCheck_Payload_Binary
	Payload              isHealthCheck_Payload_Payload `protobuf_oneof:"payload"`
	XXX_NoUnkeyedLiteral struct{}                      `json:"-"`
	XXX_unrecognized     []byte                        `json:"-"`
	XXX_sizecache        int32                         `json:"-"`
}

func (m *HealthCheck_Payload) Reset()         { *m = HealthCheck_Payload{} }
func (m *HealthCheck_Payload) String() string { return proto.CompactTextString(m) }
func (*HealthCheck_Payload) ProtoMessage()    {}
func (*HealthCheck_Payload) Descriptor() ([]byte, []int) {
	return fileDescriptor_health_check_0d3155ea06758d89, []int{0, 0}
}
func (m *HealthCheck_Payload) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HealthCheck_Payload.Unmarshal(m, b)
}
func (m *HealthCheck_Payload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HealthCheck_Payload.Marshal(b, m, deterministic)
}
func (dst *HealthCheck_Payload) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HealthCheck_Payload.Merge(dst, src)
}
func (m *HealthCheck_Payload) XXX_Size() int {
	return xxx_messageInfo_HealthCheck_Payload.Size(m)
}
func (m *HealthCheck_Payload) XXX_DiscardUnknown() {
	xxx_messageInfo_HealthCheck_Payload.DiscardUnknown(m)
}

var xxx_messageInfo_HealthCheck_Payload proto.InternalMessageInfo

type isHealthCheck_Payload_Payload interface {
	isHealthCheck_Payload_Payload()
}

type HealthCheck_Payload_Text struct {
	Text string `protobuf:"bytes,1,opt,name=text,proto3,oneof"`
}

type HealthCheck_Payload_Binary struct {
	Binary []byte `protobuf:"bytes,2,opt,name=binary,proto3,oneof"`
}

func (*HealthCheck_Payload_Text) isHealthCheck_Payload_Payload() {}

func (*HealthCheck_Payload_Binary) isHealthCheck_Payload_Payload() {}

func (m *HealthCheck_Payload) GetPayload() isHealthCheck_Payload_Payload {
	if m != nil {
		return m.Payload
	}
	return nil
}

func (m *HealthCheck_Payload) GetText() string {
	if x, ok := m.GetPayload().(*HealthCheck_Payload_Text); ok {
		return x.Text
	}
	return ""
}

func (m *HealthCheck_Payload) GetBinary() []byte {
	if x, ok := m.GetPayload().(*HealthCheck_Payload_Binary); ok {
		return x.Binary
	}
	return nil
}

// XXX_OneofFuncs is for the internal use of the proto package.
func (*HealthCheck_Payload) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
	return _HealthCheck_Payload_OneofMarshaler, _HealthCheck_Payload_OneofUnmarshaler, _HealthCheck_Payload_OneofSizer, []interface{}{
		(*HealthCheck_Payload_Text)(nil),
		(*HealthCheck_Payload_Binary)(nil),
	}
}

func _HealthCheck_Payload_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
	m := msg.(*HealthCheck_Payload)
	// payload
	switch x := m.Payload.(type) {
	case *HealthCheck_Payload_Text:
		b.EncodeVarint(1<<3 | proto.WireBytes)
		b.EncodeStringBytes(x.Text)
	case *HealthCheck_Payload_Binary:
		b.EncodeVarint(2<<3 | proto.WireBytes)
		b.EncodeRawBytes(x.Binary)
	case nil:
	default:
		return fmt.Errorf("HealthCheck_Payload.Payload has unexpected type %T", x)
	}
	return nil
}

func _HealthCheck_Payload_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
	m := msg.(*HealthCheck_Payload)
	switch tag {
	case 1: // payload.text
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		x, err := b.DecodeStringBytes()
		m.Payload = &HealthCheck_Payload_Text{x}
		return true, err
	case 2: // payload.binary
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		x, err := b.DecodeRawBytes(true)
		m.Payload = &HealthCheck_Payload_Binary{x}
		return true, err
	default:
		return false, nil
	}
}

func _HealthCheck_Payload_OneofSizer(msg proto.Message) (n int) {
	m := msg.(*HealthCheck_Payload)
	// payload
	switch x := m.Payload.(type) {
	case *HealthCheck_Payload_Text:
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(len(x.Text)))
		n += len(x.Text)
	case *HealthCheck_Payload_Binary:
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(len(x.Binary)))
		n += len(x.Binary)
	case nil:
	default:
		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
	}
	return n
}

type HealthCheck_HttpHealthCheck struct {
	Host                   string                    `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"`
	Path                   string                    `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
	Send                   *HealthCheck_Payload      `protobuf:"bytes,3,opt,name=send,proto3" json:"send,omitempty"`
	Receive                *HealthCheck_Payload      `protobuf:"bytes,4,opt,name=receive,proto3" json:"receive,omitempty"`
	ServiceName            string                    `protobuf:"bytes,5,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
	RequestHeadersToAdd    []*base.HeaderValueOption `protobuf:"bytes,6,rep,name=request_headers_to_add,json=requestHeadersToAdd,proto3" json:"request_headers_to_add,omitempty"`
	RequestHeadersToRemove []string                  `protobuf:"bytes,8,rep,name=request_headers_to_remove,json=requestHeadersToRemove,proto3" json:"request_headers_to_remove,omitempty"`
	UseHttp2               bool                      `protobuf:"varint,7,opt,name=use_http2,json=useHttp2,proto3" json:"use_http2,omitempty"`
	ExpectedStatuses       []*_range.Int64Range      `protobuf:"bytes,9,rep,name=expected_statuses,json=expectedStatuses,proto3" json:"expected_statuses,omitempty"`
	XXX_NoUnkeyedLiteral   struct{}                  `json:"-"`
	XXX_unrecognized       []byte                    `json:"-"`
	XXX_sizecache          int32                     `json:"-"`
}

func (m *HealthCheck_HttpHealthCheck) Reset()         { *m = HealthCheck_HttpHealthCheck{} }
func (m *HealthCheck_HttpHealthCheck) String() string { return proto.CompactTextString(m) }
func (*HealthCheck_HttpHealthCheck) ProtoMessage()    {}
func (*HealthCheck_HttpHealthCheck) Descriptor() ([]byte, []int) {
	return fileDescriptor_health_check_0d3155ea06758d89, []int{0, 1}
}
func (m *HealthCheck_HttpHealthCheck) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HealthCheck_HttpHealthCheck.Unmarshal(m, b)
}
func (m *HealthCheck_HttpHealthCheck) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HealthCheck_HttpHealthCheck.Marshal(b, m, deterministic)
}
func (dst *HealthCheck_HttpHealthCheck) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HealthCheck_HttpHealthCheck.Merge(dst, src)
}
func (m *HealthCheck_HttpHealthCheck) XXX_Size() int {
	return xxx_messageInfo_HealthCheck_HttpHealthCheck.Size(m)
}
func (m *HealthCheck_HttpHealthCheck) XXX_DiscardUnknown() {
	xxx_messageInfo_HealthCheck_HttpHealthCheck.DiscardUnknown(m)
}

var xxx_messageInfo_HealthCheck_HttpHealthCheck proto.InternalMessageInfo

func (m *HealthCheck_HttpHealthCheck) GetHost() string {
	if m != nil {
		return m.Host
	}
	return ""
}

func (m *HealthCheck_HttpHealthCheck) GetPath() string {
	if m != nil {
		return m.Path
	}
	return ""
}

func (m *HealthCheck_HttpHealthCheck) GetSend() *HealthCheck_Payload {
	if m != nil {
		return m.Send
	}
	return nil
}

func (m *HealthCheck_HttpHealthCheck) GetReceive() *HealthCheck_Payload {
	if m != nil {
		return m.Receive
	}
	return nil
}

func (m *HealthCheck_HttpHealthCheck) GetServiceName() string {
	if m != nil {
		return m.ServiceName
	}
	return ""
}

func (m *HealthCheck_HttpHealthCheck) GetRequestHeadersToAdd() []*base.HeaderValueOption {
	if m != nil {
		return m.RequestHeadersToAdd
	}
	return nil
}

func (m *HealthCheck_HttpHealthCheck) GetRequestHeadersToRemove() []string {
	if m != nil {
		return m.RequestHeadersToRemove
	}
	return nil
}

func (m *HealthCheck_HttpHealthCheck) GetUseHttp2() bool {
	if m != nil {
		return m.UseHttp2
	}
	return false
}

func (m *HealthCheck_HttpHealthCheck) GetExpectedStatuses() []*_range.Int64Range {
	if m != nil {
		return m.ExpectedStatuses
	}
	return nil
}

type HealthCheck_TcpHealthCheck struct {
	Send                 *HealthCheck_Payload   `protobuf:"bytes,1,opt,name=send,proto3" json:"send,omitempty"`
	Receive              []*HealthCheck_Payload `protobuf:"bytes,2,rep,name=receive,proto3" json:"receive,omitempty"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *HealthCheck_TcpHealthCheck) Reset()         { *m = HealthCheck_TcpHealthCheck{} }
func (m *HealthCheck_TcpHealthCheck) String() string { return proto.CompactTextString(m) }
func (*HealthCheck_TcpHealthCheck) ProtoMessage()    {}
func (*HealthCheck_TcpHealthCheck) Descriptor() ([]byte, []int) {
	return fileDescriptor_health_check_0d3155ea06758d89, []int{0, 2}
}
func (m *HealthCheck_TcpHealthCheck) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HealthCheck_TcpHealthCheck.Unmarshal(m, b)
}
func (m *HealthCheck_TcpHealthCheck) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HealthCheck_TcpHealthCheck.Marshal(b, m, deterministic)
}
func (dst *HealthCheck_TcpHealthCheck) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HealthCheck_TcpHealthCheck.Merge(dst, src)
}
func (m *HealthCheck_TcpHealthCheck) XXX_Size() int {
	return xxx_messageInfo_HealthCheck_TcpHealthCheck.Size(m)
}
func (m *HealthCheck_TcpHealthCheck) XXX_DiscardUnknown() {
	xxx_messageInfo_HealthCheck_TcpHealthCheck.DiscardUnknown(m)
}

var xxx_messageInfo_HealthCheck_TcpHealthCheck proto.InternalMessageInfo

func (m *HealthCheck_TcpHealthCheck) GetSend() *HealthCheck_Payload {
	if m != nil {
		return m.Send
	}
	return nil
}

func (m *HealthCheck_TcpHealthCheck) GetReceive() []*HealthCheck_Payload {
	if m != nil {
		return m.Receive
	}
	return nil
}

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

func (m *HealthCheck_RedisHealthCheck) Reset()         { *m = HealthCheck_RedisHealthCheck{} }
func (m *HealthCheck_RedisHealthCheck) String() string { return proto.CompactTextString(m) }
func (*HealthCheck_RedisHealthCheck) ProtoMessage()    {}
func (*HealthCheck_RedisHealthCheck) Descriptor() ([]byte, []int) {
	return fileDescriptor_health_check_0d3155ea06758d89, []int{0, 3}
}
func (m *HealthCheck_RedisHealthCheck) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HealthCheck_RedisHealthCheck.Unmarshal(m, b)
}
func (m *HealthCheck_RedisHealthCheck) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HealthCheck_RedisHealthCheck.Marshal(b, m, deterministic)
}
func (dst *HealthCheck_RedisHealthCheck) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HealthCheck_RedisHealthCheck.Merge(dst, src)
}
func (m *HealthCheck_RedisHealthCheck) XXX_Size() int {
	return xxx_messageInfo_HealthCheck_RedisHealthCheck.Size(m)
}
func (m *HealthCheck_RedisHealthCheck) XXX_DiscardUnknown() {
	xxx_messageInfo_HealthCheck_RedisHealthCheck.DiscardUnknown(m)
}

var xxx_messageInfo_HealthCheck_RedisHealthCheck proto.InternalMessageInfo

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

type HealthCheck_GrpcHealthCheck struct {
	ServiceName          string   `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
	Authority            string   `protobuf:"bytes,2,opt,name=authority,proto3" json:"authority,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *HealthCheck_GrpcHealthCheck) Reset()         { *m = HealthCheck_GrpcHealthCheck{} }
func (m *HealthCheck_GrpcHealthCheck) String() string { return proto.CompactTextString(m) }
func (*HealthCheck_GrpcHealthCheck) ProtoMessage()    {}
func (*HealthCheck_GrpcHealthCheck) Descriptor() ([]byte, []int) {
	return fileDescriptor_health_check_0d3155ea06758d89, []int{0, 4}
}
func (m *HealthCheck_GrpcHealthCheck) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HealthCheck_GrpcHealthCheck.Unmarshal(m, b)
}
func (m *HealthCheck_GrpcHealthCheck) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HealthCheck_GrpcHealthCheck.Marshal(b, m, deterministic)
}
func (dst *HealthCheck_GrpcHealthCheck) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HealthCheck_GrpcHealthCheck.Merge(dst, src)
}
func (m *HealthCheck_GrpcHealthCheck) XXX_Size() int {
	return xxx_messageInfo_HealthCheck_GrpcHealthCheck.Size(m)
}
func (m *HealthCheck_GrpcHealthCheck) XXX_DiscardUnknown() {
	xxx_messageInfo_HealthCheck_GrpcHealthCheck.DiscardUnknown(m)
}

var xxx_messageInfo_HealthCheck_GrpcHealthCheck proto.InternalMessageInfo

func (m *HealthCheck_GrpcHealthCheck) GetServiceName() string {
	if m != nil {
		return m.ServiceName
	}
	return ""
}

func (m *HealthCheck_GrpcHealthCheck) GetAuthority() string {
	if m != nil {
		return m.Authority
	}
	return ""
}

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

func (m *HealthCheck_CustomHealthCheck) Reset()         { *m = HealthCheck_CustomHealthCheck{} }
func (m *HealthCheck_CustomHealthCheck) String() string { return proto.CompactTextString(m) }
func (*HealthCheck_CustomHealthCheck) ProtoMessage()    {}
func (*HealthCheck_CustomHealthCheck) Descriptor() ([]byte, []int) {
	return fileDescriptor_health_check_0d3155ea06758d89, []int{0, 5}
}
func (m *HealthCheck_CustomHealthCheck) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_HealthCheck_CustomHealthCheck.Unmarshal(m, b)
}
func (m *HealthCheck_CustomHealthCheck) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_HealthCheck_CustomHealthCheck.Marshal(b, m, deterministic)
}
func (dst *HealthCheck_CustomHealthCheck) XXX_Merge(src proto.Message) {
	xxx_messageInfo_HealthCheck_CustomHealthCheck.Merge(dst, src)
}
func (m *HealthCheck_CustomHealthCheck) XXX_Size() int {
	return xxx_messageInfo_HealthCheck_CustomHealthCheck.Size(m)
}
func (m *HealthCheck_CustomHealthCheck) XXX_DiscardUnknown() {
	xxx_messageInfo_HealthCheck_CustomHealthCheck.DiscardUnknown(m)
}

var xxx_messageInfo_HealthCheck_CustomHealthCheck proto.InternalMessageInfo

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

type isHealthCheck_CustomHealthCheck_ConfigType interface {
	isHealthCheck_CustomHealthCheck_ConfigType()
}

type HealthCheck_CustomHealthCheck_Config struct {
	Config *_struct.Struct `protobuf:"bytes,2,opt,name=config,proto3,oneof"`
}

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

func (*HealthCheck_CustomHealthCheck_Config) isHealthCheck_CustomHealthCheck_ConfigType() {}

func (*HealthCheck_CustomHealthCheck_TypedConfig) isHealthCheck_CustomHealthCheck_ConfigType() {}

func (m *HealthCheck_CustomHealthCheck) GetConfigType() isHealthCheck_CustomHealthCheck_ConfigType {
	if m != nil {
		return m.ConfigType
	}
	return nil
}

func (m *HealthCheck_CustomHealthCheck) GetConfig() *_struct.Struct {
	if x, ok := m.GetConfigType().(*HealthCheck_CustomHealthCheck_Config); ok {
		return x.Config
	}
	return nil
}

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

// XXX_OneofFuncs is for the internal use of the proto package.
func (*HealthCheck_CustomHealthCheck) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
	return _HealthCheck_CustomHealthCheck_OneofMarshaler, _HealthCheck_CustomHealthCheck_OneofUnmarshaler, _HealthCheck_CustomHealthCheck_OneofSizer, []interface{}{
		(*HealthCheck_CustomHealthCheck_Config)(nil),
		(*HealthCheck_CustomHealthCheck_TypedConfig)(nil),
	}
}

func _HealthCheck_CustomHealthCheck_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
	m := msg.(*HealthCheck_CustomHealthCheck)
	// config_type
	switch x := m.ConfigType.(type) {
	case *HealthCheck_CustomHealthCheck_Config:
		b.EncodeVarint(2<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.Config); err != nil {
			return err
		}
	case *HealthCheck_CustomHealthCheck_TypedConfig:
		b.EncodeVarint(3<<3 | proto.WireBytes)
		if err := b.EncodeMessage(x.TypedConfig); err != nil {
			return err
		}
	case nil:
	default:
		return fmt.Errorf("HealthCheck_CustomHealthCheck.ConfigType has unexpected type %T", x)
	}
	return nil
}

func _HealthCheck_CustomHealthCheck_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
	m := msg.(*HealthCheck_CustomHealthCheck)
	switch tag {
	case 2: // config_type.config
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(_struct.Struct)
		err := b.DecodeMessage(msg)
		m.ConfigType = &HealthCheck_CustomHealthCheck_Config{msg}
		return true, err
	case 3: // config_type.typed_config
		if wire != proto.WireBytes {
			return true, proto.ErrInternalBadWireType
		}
		msg := new(any.Any)
		err := b.DecodeMessage(msg)
		m.ConfigType = &HealthCheck_CustomHealthCheck_TypedConfig{msg}
		return true, err
	default:
		return false, nil
	}
}

func _HealthCheck_CustomHealthCheck_OneofSizer(msg proto.Message) (n int) {
	m := msg.(*HealthCheck_CustomHealthCheck)
	// config_type
	switch x := m.ConfigType.(type) {
	case *HealthCheck_CustomHealthCheck_Config:
		s := proto.Size(x.Config)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case *HealthCheck_CustomHealthCheck_TypedConfig:
		s := proto.Size(x.TypedConfig)
		n += 1 // tag and wire
		n += proto.SizeVarint(uint64(s))
		n += s
	case nil:
	default:
		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
	}
	return n
}

func init() {
	proto.RegisterType((*HealthCheck)(nil), "envoy.api.v2.core.HealthCheck")
	proto.RegisterType((*HealthCheck_Payload)(nil), "envoy.api.v2.core.HealthCheck.Payload")
	proto.RegisterType((*HealthCheck_HttpHealthCheck)(nil), "envoy.api.v2.core.HealthCheck.HttpHealthCheck")
	proto.RegisterType((*HealthCheck_TcpHealthCheck)(nil), "envoy.api.v2.core.HealthCheck.TcpHealthCheck")
	proto.RegisterType((*HealthCheck_RedisHealthCheck)(nil), "envoy.api.v2.core.HealthCheck.RedisHealthCheck")
	proto.RegisterType((*HealthCheck_GrpcHealthCheck)(nil), "envoy.api.v2.core.HealthCheck.GrpcHealthCheck")
	proto.RegisterType((*HealthCheck_CustomHealthCheck)(nil), "envoy.api.v2.core.HealthCheck.CustomHealthCheck")
	proto.RegisterEnum("envoy.api.v2.core.HealthStatus", HealthStatus_name, HealthStatus_value)
}

func init() {
	proto.RegisterFile("envoy/api/v2/core/health_check.proto", fileDescriptor_health_check_0d3155ea06758d89)
}

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