// Code generated by protoc-gen-go. DO NOT EDIT.
// source: validate/validate.proto

package validate

import (
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	descriptor "github.com/golang/protobuf/protoc-gen-go/descriptor"
	duration "github.com/golang/protobuf/ptypes/duration"
	timestamp "github.com/golang/protobuf/ptypes/timestamp"
	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.ProtoPackageIsVersion2 // please upgrade the proto package

type FieldRules struct {
	Message *MessageRules `protobuf:"bytes,17,opt,name=message" json:"message,omitempty"`
	// Types that are valid to be assigned to Type:
	//	*FieldRules_Float
	//	*FieldRules_Double
	//	*FieldRules_Int32
	//	*FieldRules_Int64
	//	*FieldRules_Uint32
	//	*FieldRules_Uint64
	//	*FieldRules_Sint32
	//	*FieldRules_Sint64
	//	*FieldRules_Fixed32
	//	*FieldRules_Fixed64
	//	*FieldRules_Sfixed32
	//	*FieldRules_Sfixed64
	//	*FieldRules_Bool
	//	*FieldRules_String_
	//	*FieldRules_Bytes
	//	*FieldRules_Enum
	//	*FieldRules_Repeated
	//	*FieldRules_Map
	//	*FieldRules_Any
	//	*FieldRules_Duration
	//	*FieldRules_Timestamp
	Type                 isFieldRules_Type `protobuf_oneof:"type"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

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

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

var xxx_messageInfo_FieldRules proto.InternalMessageInfo

func (m *FieldRules) GetMessage() *MessageRules {
	if m != nil {
		return m.Message
	}
	return nil
}

type isFieldRules_Type interface {
	isFieldRules_Type()
}

type FieldRules_Float struct {
	Float *FloatRules `protobuf:"bytes,1,opt,name=float,oneof"`
}

type FieldRules_Double struct {
	Double *DoubleRules `protobuf:"bytes,2,opt,name=double,oneof"`
}

type FieldRules_Int32 struct {
	Int32 *Int32Rules `protobuf:"bytes,3,opt,name=int32,oneof"`
}

type FieldRules_Int64 struct {
	Int64 *Int64Rules `protobuf:"bytes,4,opt,name=int64,oneof"`
}

type FieldRules_Uint32 struct {
	Uint32 *UInt32Rules `protobuf:"bytes,5,opt,name=uint32,oneof"`
}

type FieldRules_Uint64 struct {
	Uint64 *UInt64Rules `protobuf:"bytes,6,opt,name=uint64,oneof"`
}

type FieldRules_Sint32 struct {
	Sint32 *SInt32Rules `protobuf:"bytes,7,opt,name=sint32,oneof"`
}

type FieldRules_Sint64 struct {
	Sint64 *SInt64Rules `protobuf:"bytes,8,opt,name=sint64,oneof"`
}

type FieldRules_Fixed32 struct {
	Fixed32 *Fixed32Rules `protobuf:"bytes,9,opt,name=fixed32,oneof"`
}

type FieldRules_Fixed64 struct {
	Fixed64 *Fixed64Rules `protobuf:"bytes,10,opt,name=fixed64,oneof"`
}

type FieldRules_Sfixed32 struct {
	Sfixed32 *SFixed32Rules `protobuf:"bytes,11,opt,name=sfixed32,oneof"`
}

type FieldRules_Sfixed64 struct {
	Sfixed64 *SFixed64Rules `protobuf:"bytes,12,opt,name=sfixed64,oneof"`
}

type FieldRules_Bool struct {
	Bool *BoolRules `protobuf:"bytes,13,opt,name=bool,oneof"`
}

type FieldRules_String_ struct {
	String_ *StringRules `protobuf:"bytes,14,opt,name=string,oneof"`
}

type FieldRules_Bytes struct {
	Bytes *BytesRules `protobuf:"bytes,15,opt,name=bytes,oneof"`
}

type FieldRules_Enum struct {
	Enum *EnumRules `protobuf:"bytes,16,opt,name=enum,oneof"`
}

type FieldRules_Repeated struct {
	Repeated *RepeatedRules `protobuf:"bytes,18,opt,name=repeated,oneof"`
}

type FieldRules_Map struct {
	Map *MapRules `protobuf:"bytes,19,opt,name=map,oneof"`
}

type FieldRules_Any struct {
	Any *AnyRules `protobuf:"bytes,20,opt,name=any,oneof"`
}

type FieldRules_Duration struct {
	Duration *DurationRules `protobuf:"bytes,21,opt,name=duration,oneof"`
}

type FieldRules_Timestamp struct {
	Timestamp *TimestampRules `protobuf:"bytes,22,opt,name=timestamp,oneof"`
}

func (*FieldRules_Float) isFieldRules_Type() {}

func (*FieldRules_Double) isFieldRules_Type() {}

func (*FieldRules_Int32) isFieldRules_Type() {}

func (*FieldRules_Int64) isFieldRules_Type() {}

func (*FieldRules_Uint32) isFieldRules_Type() {}

func (*FieldRules_Uint64) isFieldRules_Type() {}

func (*FieldRules_Sint32) isFieldRules_Type() {}

func (*FieldRules_Sint64) isFieldRules_Type() {}

func (*FieldRules_Fixed32) isFieldRules_Type() {}

func (*FieldRules_Fixed64) isFieldRules_Type() {}

func (*FieldRules_Sfixed32) isFieldRules_Type() {}

func (*FieldRules_Sfixed64) isFieldRules_Type() {}

func (*FieldRules_Bool) isFieldRules_Type() {}

func (*FieldRules_String_) isFieldRules_Type() {}

func (*FieldRules_Bytes) isFieldRules_Type() {}

func (*FieldRules_Enum) isFieldRules_Type() {}

func (*FieldRules_Repeated) isFieldRules_Type() {}

func (*FieldRules_Map) isFieldRules_Type() {}

func (*FieldRules_Any) isFieldRules_Type() {}

func (*FieldRules_Duration) isFieldRules_Type() {}

func (*FieldRules_Timestamp) isFieldRules_Type() {}

func (m *FieldRules) GetType() isFieldRules_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (m *FieldRules) GetFloat() *FloatRules {
	if x, ok := m.GetType().(*FieldRules_Float); ok {
		return x.Float
	}
	return nil
}

func (m *FieldRules) GetDouble() *DoubleRules {
	if x, ok := m.GetType().(*FieldRules_Double); ok {
		return x.Double
	}
	return nil
}

func (m *FieldRules) GetInt32() *Int32Rules {
	if x, ok := m.GetType().(*FieldRules_Int32); ok {
		return x.Int32
	}
	return nil
}

func (m *FieldRules) GetInt64() *Int64Rules {
	if x, ok := m.GetType().(*FieldRules_Int64); ok {
		return x.Int64
	}
	return nil
}

func (m *FieldRules) GetUint32() *UInt32Rules {
	if x, ok := m.GetType().(*FieldRules_Uint32); ok {
		return x.Uint32
	}
	return nil
}

func (m *FieldRules) GetUint64() *UInt64Rules {
	if x, ok := m.GetType().(*FieldRules_Uint64); ok {
		return x.Uint64
	}
	return nil
}

func (m *FieldRules) GetSint32() *SInt32Rules {
	if x, ok := m.GetType().(*FieldRules_Sint32); ok {
		return x.Sint32
	}
	return nil
}

func (m *FieldRules) GetSint64() *SInt64Rules {
	if x, ok := m.GetType().(*FieldRules_Sint64); ok {
		return x.Sint64
	}
	return nil
}

func (m *FieldRules) GetFixed32() *Fixed32Rules {
	if x, ok := m.GetType().(*FieldRules_Fixed32); ok {
		return x.Fixed32
	}
	return nil
}

func (m *FieldRules) GetFixed64() *Fixed64Rules {
	if x, ok := m.GetType().(*FieldRules_Fixed64); ok {
		return x.Fixed64
	}
	return nil
}

func (m *FieldRules) GetSfixed32() *SFixed32Rules {
	if x, ok := m.GetType().(*FieldRules_Sfixed32); ok {
		return x.Sfixed32
	}
	return nil
}

func (m *FieldRules) GetSfixed64() *SFixed64Rules {
	if x, ok := m.GetType().(*FieldRules_Sfixed64); ok {
		return x.Sfixed64
	}
	return nil
}

func (m *FieldRules) GetBool() *BoolRules {
	if x, ok := m.GetType().(*FieldRules_Bool); ok {
		return x.Bool
	}
	return nil
}

func (m *FieldRules) GetString_() *StringRules {
	if x, ok := m.GetType().(*FieldRules_String_); ok {
		return x.String_
	}
	return nil
}

func (m *FieldRules) GetBytes() *BytesRules {
	if x, ok := m.GetType().(*FieldRules_Bytes); ok {
		return x.Bytes
	}
	return nil
}

func (m *FieldRules) GetEnum() *EnumRules {
	if x, ok := m.GetType().(*FieldRules_Enum); ok {
		return x.Enum
	}
	return nil
}

func (m *FieldRules) GetRepeated() *RepeatedRules {
	if x, ok := m.GetType().(*FieldRules_Repeated); ok {
		return x.Repeated
	}
	return nil
}

func (m *FieldRules) GetMap() *MapRules {
	if x, ok := m.GetType().(*FieldRules_Map); ok {
		return x.Map
	}
	return nil
}

func (m *FieldRules) GetAny() *AnyRules {
	if x, ok := m.GetType().(*FieldRules_Any); ok {
		return x.Any
	}
	return nil
}

func (m *FieldRules) GetDuration() *DurationRules {
	if x, ok := m.GetType().(*FieldRules_Duration); ok {
		return x.Duration
	}
	return nil
}

func (m *FieldRules) GetTimestamp() *TimestampRules {
	if x, ok := m.GetType().(*FieldRules_Timestamp); ok {
		return x.Timestamp
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*FieldRules) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*FieldRules_Float)(nil),
		(*FieldRules_Double)(nil),
		(*FieldRules_Int32)(nil),
		(*FieldRules_Int64)(nil),
		(*FieldRules_Uint32)(nil),
		(*FieldRules_Uint64)(nil),
		(*FieldRules_Sint32)(nil),
		(*FieldRules_Sint64)(nil),
		(*FieldRules_Fixed32)(nil),
		(*FieldRules_Fixed64)(nil),
		(*FieldRules_Sfixed32)(nil),
		(*FieldRules_Sfixed64)(nil),
		(*FieldRules_Bool)(nil),
		(*FieldRules_String_)(nil),
		(*FieldRules_Bytes)(nil),
		(*FieldRules_Enum)(nil),
		(*FieldRules_Repeated)(nil),
		(*FieldRules_Map)(nil),
		(*FieldRules_Any)(nil),
		(*FieldRules_Duration)(nil),
		(*FieldRules_Timestamp)(nil),
	}
}

type FloatRules struct {
	Const                *float32  `protobuf:"fixed32,1,opt,name=const" json:"const,omitempty"`
	Lt                   *float32  `protobuf:"fixed32,2,opt,name=lt" json:"lt,omitempty"`
	Lte                  *float32  `protobuf:"fixed32,3,opt,name=lte" json:"lte,omitempty"`
	Gt                   *float32  `protobuf:"fixed32,4,opt,name=gt" json:"gt,omitempty"`
	Gte                  *float32  `protobuf:"fixed32,5,opt,name=gte" json:"gte,omitempty"`
	In                   []float32 `protobuf:"fixed32,6,rep,name=in" json:"in,omitempty"`
	NotIn                []float32 `protobuf:"fixed32,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

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

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

var xxx_messageInfo_FloatRules proto.InternalMessageInfo

func (m *FloatRules) GetConst() float32 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *FloatRules) GetLt() float32 {
	if m != nil && m.Lt != nil {
		return *m.Lt
	}
	return 0
}

func (m *FloatRules) GetLte() float32 {
	if m != nil && m.Lte != nil {
		return *m.Lte
	}
	return 0
}

func (m *FloatRules) GetGt() float32 {
	if m != nil && m.Gt != nil {
		return *m.Gt
	}
	return 0
}

func (m *FloatRules) GetGte() float32 {
	if m != nil && m.Gte != nil {
		return *m.Gte
	}
	return 0
}

func (m *FloatRules) GetIn() []float32 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *FloatRules) GetNotIn() []float32 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type DoubleRules struct {
	Const                *float64  `protobuf:"fixed64,1,opt,name=const" json:"const,omitempty"`
	Lt                   *float64  `protobuf:"fixed64,2,opt,name=lt" json:"lt,omitempty"`
	Lte                  *float64  `protobuf:"fixed64,3,opt,name=lte" json:"lte,omitempty"`
	Gt                   *float64  `protobuf:"fixed64,4,opt,name=gt" json:"gt,omitempty"`
	Gte                  *float64  `protobuf:"fixed64,5,opt,name=gte" json:"gte,omitempty"`
	In                   []float64 `protobuf:"fixed64,6,rep,name=in" json:"in,omitempty"`
	NotIn                []float64 `protobuf:"fixed64,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

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

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

var xxx_messageInfo_DoubleRules proto.InternalMessageInfo

func (m *DoubleRules) GetConst() float64 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *DoubleRules) GetLt() float64 {
	if m != nil && m.Lt != nil {
		return *m.Lt
	}
	return 0
}

func (m *DoubleRules) GetLte() float64 {
	if m != nil && m.Lte != nil {
		return *m.Lte
	}
	return 0
}

func (m *DoubleRules) GetGt() float64 {
	if m != nil && m.Gt != nil {
		return *m.Gt
	}
	return 0
}

func (m *DoubleRules) GetGte() float64 {
	if m != nil && m.Gte != nil {
		return *m.Gte
	}
	return 0
}

func (m *DoubleRules) GetIn() []float64 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *DoubleRules) GetNotIn() []float64 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type Int32Rules struct {
	Const                *int32   `protobuf:"varint,1,opt,name=const" json:"const,omitempty"`
	Lt                   *int32   `protobuf:"varint,2,opt,name=lt" json:"lt,omitempty"`
	Lte                  *int32   `protobuf:"varint,3,opt,name=lte" json:"lte,omitempty"`
	Gt                   *int32   `protobuf:"varint,4,opt,name=gt" json:"gt,omitempty"`
	Gte                  *int32   `protobuf:"varint,5,opt,name=gte" json:"gte,omitempty"`
	In                   []int32  `protobuf:"varint,6,rep,name=in" json:"in,omitempty"`
	NotIn                []int32  `protobuf:"varint,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_Int32Rules proto.InternalMessageInfo

func (m *Int32Rules) GetConst() int32 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *Int32Rules) GetLt() int32 {
	if m != nil && m.Lt != nil {
		return *m.Lt
	}
	return 0
}

func (m *Int32Rules) GetLte() int32 {
	if m != nil && m.Lte != nil {
		return *m.Lte
	}
	return 0
}

func (m *Int32Rules) GetGt() int32 {
	if m != nil && m.Gt != nil {
		return *m.Gt
	}
	return 0
}

func (m *Int32Rules) GetGte() int32 {
	if m != nil && m.Gte != nil {
		return *m.Gte
	}
	return 0
}

func (m *Int32Rules) GetIn() []int32 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *Int32Rules) GetNotIn() []int32 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type Int64Rules struct {
	Const                *int64   `protobuf:"varint,1,opt,name=const" json:"const,omitempty"`
	Lt                   *int64   `protobuf:"varint,2,opt,name=lt" json:"lt,omitempty"`
	Lte                  *int64   `protobuf:"varint,3,opt,name=lte" json:"lte,omitempty"`
	Gt                   *int64   `protobuf:"varint,4,opt,name=gt" json:"gt,omitempty"`
	Gte                  *int64   `protobuf:"varint,5,opt,name=gte" json:"gte,omitempty"`
	In                   []int64  `protobuf:"varint,6,rep,name=in" json:"in,omitempty"`
	NotIn                []int64  `protobuf:"varint,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_Int64Rules proto.InternalMessageInfo

func (m *Int64Rules) GetConst() int64 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *Int64Rules) GetLt() int64 {
	if m != nil && m.Lt != nil {
		return *m.Lt
	}
	return 0
}

func (m *Int64Rules) GetLte() int64 {
	if m != nil && m.Lte != nil {
		return *m.Lte
	}
	return 0
}

func (m *Int64Rules) GetGt() int64 {
	if m != nil && m.Gt != nil {
		return *m.Gt
	}
	return 0
}

func (m *Int64Rules) GetGte() int64 {
	if m != nil && m.Gte != nil {
		return *m.Gte
	}
	return 0
}

func (m *Int64Rules) GetIn() []int64 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *Int64Rules) GetNotIn() []int64 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type UInt32Rules struct {
	Const                *uint32  `protobuf:"varint,1,opt,name=const" json:"const,omitempty"`
	Lt                   *uint32  `protobuf:"varint,2,opt,name=lt" json:"lt,omitempty"`
	Lte                  *uint32  `protobuf:"varint,3,opt,name=lte" json:"lte,omitempty"`
	Gt                   *uint32  `protobuf:"varint,4,opt,name=gt" json:"gt,omitempty"`
	Gte                  *uint32  `protobuf:"varint,5,opt,name=gte" json:"gte,omitempty"`
	In                   []uint32 `protobuf:"varint,6,rep,name=in" json:"in,omitempty"`
	NotIn                []uint32 `protobuf:"varint,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_UInt32Rules proto.InternalMessageInfo

func (m *UInt32Rules) GetConst() uint32 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *UInt32Rules) GetLt() uint32 {
	if m != nil && m.Lt != nil {
		return *m.Lt
	}
	return 0
}

func (m *UInt32Rules) GetLte() uint32 {
	if m != nil && m.Lte != nil {
		return *m.Lte
	}
	return 0
}

func (m *UInt32Rules) GetGt() uint32 {
	if m != nil && m.Gt != nil {
		return *m.Gt
	}
	return 0
}

func (m *UInt32Rules) GetGte() uint32 {
	if m != nil && m.Gte != nil {
		return *m.Gte
	}
	return 0
}

func (m *UInt32Rules) GetIn() []uint32 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *UInt32Rules) GetNotIn() []uint32 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type UInt64Rules struct {
	Const                *uint64  `protobuf:"varint,1,opt,name=const" json:"const,omitempty"`
	Lt                   *uint64  `protobuf:"varint,2,opt,name=lt" json:"lt,omitempty"`
	Lte                  *uint64  `protobuf:"varint,3,opt,name=lte" json:"lte,omitempty"`
	Gt                   *uint64  `protobuf:"varint,4,opt,name=gt" json:"gt,omitempty"`
	Gte                  *uint64  `protobuf:"varint,5,opt,name=gte" json:"gte,omitempty"`
	In                   []uint64 `protobuf:"varint,6,rep,name=in" json:"in,omitempty"`
	NotIn                []uint64 `protobuf:"varint,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_UInt64Rules proto.InternalMessageInfo

func (m *UInt64Rules) GetConst() uint64 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *UInt64Rules) GetLt() uint64 {
	if m != nil && m.Lt != nil {
		return *m.Lt
	}
	return 0
}

func (m *UInt64Rules) GetLte() uint64 {
	if m != nil && m.Lte != nil {
		return *m.Lte
	}
	return 0
}

func (m *UInt64Rules) GetGt() uint64 {
	if m != nil && m.Gt != nil {
		return *m.Gt
	}
	return 0
}

func (m *UInt64Rules) GetGte() uint64 {
	if m != nil && m.Gte != nil {
		return *m.Gte
	}
	return 0
}

func (m *UInt64Rules) GetIn() []uint64 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *UInt64Rules) GetNotIn() []uint64 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type SInt32Rules struct {
	Const                *int32   `protobuf:"zigzag32,1,opt,name=const" json:"const,omitempty"`
	Lt                   *int32   `protobuf:"zigzag32,2,opt,name=lt" json:"lt,omitempty"`
	Lte                  *int32   `protobuf:"zigzag32,3,opt,name=lte" json:"lte,omitempty"`
	Gt                   *int32   `protobuf:"zigzag32,4,opt,name=gt" json:"gt,omitempty"`
	Gte                  *int32   `protobuf:"zigzag32,5,opt,name=gte" json:"gte,omitempty"`
	In                   []int32  `protobuf:"zigzag32,6,rep,name=in" json:"in,omitempty"`
	NotIn                []int32  `protobuf:"zigzag32,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SInt32Rules) Reset()         { *m = SInt32Rules{} }
func (m *SInt32Rules) String() string { return proto.CompactTextString(m) }
func (*SInt32Rules) ProtoMessage()    {}
func (*SInt32Rules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{7}
}

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

var xxx_messageInfo_SInt32Rules proto.InternalMessageInfo

func (m *SInt32Rules) GetConst() int32 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *SInt32Rules) GetLt() int32 {
	if m != nil && m.Lt != nil {
		return *m.Lt
	}
	return 0
}

func (m *SInt32Rules) GetLte() int32 {
	if m != nil && m.Lte != nil {
		return *m.Lte
	}
	return 0
}

func (m *SInt32Rules) GetGt() int32 {
	if m != nil && m.Gt != nil {
		return *m.Gt
	}
	return 0
}

func (m *SInt32Rules) GetGte() int32 {
	if m != nil && m.Gte != nil {
		return *m.Gte
	}
	return 0
}

func (m *SInt32Rules) GetIn() []int32 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *SInt32Rules) GetNotIn() []int32 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type SInt64Rules struct {
	Const                *int64   `protobuf:"zigzag64,1,opt,name=const" json:"const,omitempty"`
	Lt                   *int64   `protobuf:"zigzag64,2,opt,name=lt" json:"lt,omitempty"`
	Lte                  *int64   `protobuf:"zigzag64,3,opt,name=lte" json:"lte,omitempty"`
	Gt                   *int64   `protobuf:"zigzag64,4,opt,name=gt" json:"gt,omitempty"`
	Gte                  *int64   `protobuf:"zigzag64,5,opt,name=gte" json:"gte,omitempty"`
	In                   []int64  `protobuf:"zigzag64,6,rep,name=in" json:"in,omitempty"`
	NotIn                []int64  `protobuf:"zigzag64,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SInt64Rules) Reset()         { *m = SInt64Rules{} }
func (m *SInt64Rules) String() string { return proto.CompactTextString(m) }
func (*SInt64Rules) ProtoMessage()    {}
func (*SInt64Rules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{8}
}

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

var xxx_messageInfo_SInt64Rules proto.InternalMessageInfo

func (m *SInt64Rules) GetConst() int64 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *SInt64Rules) GetLt() int64 {
	if m != nil && m.Lt != nil {
		return *m.Lt
	}
	return 0
}

func (m *SInt64Rules) GetLte() int64 {
	if m != nil && m.Lte != nil {
		return *m.Lte
	}
	return 0
}

func (m *SInt64Rules) GetGt() int64 {
	if m != nil && m.Gt != nil {
		return *m.Gt
	}
	return 0
}

func (m *SInt64Rules) GetGte() int64 {
	if m != nil && m.Gte != nil {
		return *m.Gte
	}
	return 0
}

func (m *SInt64Rules) GetIn() []int64 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *SInt64Rules) GetNotIn() []int64 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type Fixed32Rules struct {
	Const                *uint32  `protobuf:"fixed32,1,opt,name=const" json:"const,omitempty"`
	Lt                   *uint32  `protobuf:"fixed32,2,opt,name=lt" json:"lt,omitempty"`
	Lte                  *uint32  `protobuf:"fixed32,3,opt,name=lte" json:"lte,omitempty"`
	Gt                   *uint32  `protobuf:"fixed32,4,opt,name=gt" json:"gt,omitempty"`
	Gte                  *uint32  `protobuf:"fixed32,5,opt,name=gte" json:"gte,omitempty"`
	In                   []uint32 `protobuf:"fixed32,6,rep,name=in" json:"in,omitempty"`
	NotIn                []uint32 `protobuf:"fixed32,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Fixed32Rules) Reset()         { *m = Fixed32Rules{} }
func (m *Fixed32Rules) String() string { return proto.CompactTextString(m) }
func (*Fixed32Rules) ProtoMessage()    {}
func (*Fixed32Rules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{9}
}

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

var xxx_messageInfo_Fixed32Rules proto.InternalMessageInfo

func (m *Fixed32Rules) GetConst() uint32 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *Fixed32Rules) GetLt() uint32 {
	if m != nil && m.Lt != nil {
		return *m.Lt
	}
	return 0
}

func (m *Fixed32Rules) GetLte() uint32 {
	if m != nil && m.Lte != nil {
		return *m.Lte
	}
	return 0
}

func (m *Fixed32Rules) GetGt() uint32 {
	if m != nil && m.Gt != nil {
		return *m.Gt
	}
	return 0
}

func (m *Fixed32Rules) GetGte() uint32 {
	if m != nil && m.Gte != nil {
		return *m.Gte
	}
	return 0
}

func (m *Fixed32Rules) GetIn() []uint32 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *Fixed32Rules) GetNotIn() []uint32 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type Fixed64Rules struct {
	Const                *uint64  `protobuf:"fixed64,1,opt,name=const" json:"const,omitempty"`
	Lt                   *uint64  `protobuf:"fixed64,2,opt,name=lt" json:"lt,omitempty"`
	Lte                  *uint64  `protobuf:"fixed64,3,opt,name=lte" json:"lte,omitempty"`
	Gt                   *uint64  `protobuf:"fixed64,4,opt,name=gt" json:"gt,omitempty"`
	Gte                  *uint64  `protobuf:"fixed64,5,opt,name=gte" json:"gte,omitempty"`
	In                   []uint64 `protobuf:"fixed64,6,rep,name=in" json:"in,omitempty"`
	NotIn                []uint64 `protobuf:"fixed64,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Fixed64Rules) Reset()         { *m = Fixed64Rules{} }
func (m *Fixed64Rules) String() string { return proto.CompactTextString(m) }
func (*Fixed64Rules) ProtoMessage()    {}
func (*Fixed64Rules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{10}
}

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

var xxx_messageInfo_Fixed64Rules proto.InternalMessageInfo

func (m *Fixed64Rules) GetConst() uint64 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *Fixed64Rules) GetLt() uint64 {
	if m != nil && m.Lt != nil {
		return *m.Lt
	}
	return 0
}

func (m *Fixed64Rules) GetLte() uint64 {
	if m != nil && m.Lte != nil {
		return *m.Lte
	}
	return 0
}

func (m *Fixed64Rules) GetGt() uint64 {
	if m != nil && m.Gt != nil {
		return *m.Gt
	}
	return 0
}

func (m *Fixed64Rules) GetGte() uint64 {
	if m != nil && m.Gte != nil {
		return *m.Gte
	}
	return 0
}

func (m *Fixed64Rules) GetIn() []uint64 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *Fixed64Rules) GetNotIn() []uint64 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type SFixed32Rules struct {
	Const                *int32   `protobuf:"fixed32,1,opt,name=const" json:"const,omitempty"`
	Lt                   *int32   `protobuf:"fixed32,2,opt,name=lt" json:"lt,omitempty"`
	Lte                  *int32   `protobuf:"fixed32,3,opt,name=lte" json:"lte,omitempty"`
	Gt                   *int32   `protobuf:"fixed32,4,opt,name=gt" json:"gt,omitempty"`
	Gte                  *int32   `protobuf:"fixed32,5,opt,name=gte" json:"gte,omitempty"`
	In                   []int32  `protobuf:"fixed32,6,rep,name=in" json:"in,omitempty"`
	NotIn                []int32  `protobuf:"fixed32,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SFixed32Rules) Reset()         { *m = SFixed32Rules{} }
func (m *SFixed32Rules) String() string { return proto.CompactTextString(m) }
func (*SFixed32Rules) ProtoMessage()    {}
func (*SFixed32Rules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{11}
}

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

var xxx_messageInfo_SFixed32Rules proto.InternalMessageInfo

func (m *SFixed32Rules) GetConst() int32 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *SFixed32Rules) GetLt() int32 {
	if m != nil && m.Lt != nil {
		return *m.Lt
	}
	return 0
}

func (m *SFixed32Rules) GetLte() int32 {
	if m != nil && m.Lte != nil {
		return *m.Lte
	}
	return 0
}

func (m *SFixed32Rules) GetGt() int32 {
	if m != nil && m.Gt != nil {
		return *m.Gt
	}
	return 0
}

func (m *SFixed32Rules) GetGte() int32 {
	if m != nil && m.Gte != nil {
		return *m.Gte
	}
	return 0
}

func (m *SFixed32Rules) GetIn() []int32 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *SFixed32Rules) GetNotIn() []int32 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type SFixed64Rules struct {
	Const                *int64   `protobuf:"fixed64,1,opt,name=const" json:"const,omitempty"`
	Lt                   *int64   `protobuf:"fixed64,2,opt,name=lt" json:"lt,omitempty"`
	Lte                  *int64   `protobuf:"fixed64,3,opt,name=lte" json:"lte,omitempty"`
	Gt                   *int64   `protobuf:"fixed64,4,opt,name=gt" json:"gt,omitempty"`
	Gte                  *int64   `protobuf:"fixed64,5,opt,name=gte" json:"gte,omitempty"`
	In                   []int64  `protobuf:"fixed64,6,rep,name=in" json:"in,omitempty"`
	NotIn                []int64  `protobuf:"fixed64,7,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SFixed64Rules) Reset()         { *m = SFixed64Rules{} }
func (m *SFixed64Rules) String() string { return proto.CompactTextString(m) }
func (*SFixed64Rules) ProtoMessage()    {}
func (*SFixed64Rules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{12}
}

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

var xxx_messageInfo_SFixed64Rules proto.InternalMessageInfo

func (m *SFixed64Rules) GetConst() int64 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *SFixed64Rules) GetLt() int64 {
	if m != nil && m.Lt != nil {
		return *m.Lt
	}
	return 0
}

func (m *SFixed64Rules) GetLte() int64 {
	if m != nil && m.Lte != nil {
		return *m.Lte
	}
	return 0
}

func (m *SFixed64Rules) GetGt() int64 {
	if m != nil && m.Gt != nil {
		return *m.Gt
	}
	return 0
}

func (m *SFixed64Rules) GetGte() int64 {
	if m != nil && m.Gte != nil {
		return *m.Gte
	}
	return 0
}

func (m *SFixed64Rules) GetIn() []int64 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *SFixed64Rules) GetNotIn() []int64 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type BoolRules struct {
	Const                *bool    `protobuf:"varint,1,opt,name=const" json:"const,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *BoolRules) Reset()         { *m = BoolRules{} }
func (m *BoolRules) String() string { return proto.CompactTextString(m) }
func (*BoolRules) ProtoMessage()    {}
func (*BoolRules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{13}
}

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

var xxx_messageInfo_BoolRules proto.InternalMessageInfo

func (m *BoolRules) GetConst() bool {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return false
}

type StringRules struct {
	Const    *string  `protobuf:"bytes,1,opt,name=const" json:"const,omitempty"`
	Len      *uint64  `protobuf:"varint,19,opt,name=len" json:"len,omitempty"`
	MinLen   *uint64  `protobuf:"varint,2,opt,name=min_len,json=minLen" json:"min_len,omitempty"`
	MaxLen   *uint64  `protobuf:"varint,3,opt,name=max_len,json=maxLen" json:"max_len,omitempty"`
	LenBytes *uint64  `protobuf:"varint,20,opt,name=len_bytes,json=lenBytes" json:"len_bytes,omitempty"`
	MinBytes *uint64  `protobuf:"varint,4,opt,name=min_bytes,json=minBytes" json:"min_bytes,omitempty"`
	MaxBytes *uint64  `protobuf:"varint,5,opt,name=max_bytes,json=maxBytes" json:"max_bytes,omitempty"`
	Pattern  *string  `protobuf:"bytes,6,opt,name=pattern" json:"pattern,omitempty"`
	Prefix   *string  `protobuf:"bytes,7,opt,name=prefix" json:"prefix,omitempty"`
	Suffix   *string  `protobuf:"bytes,8,opt,name=suffix" json:"suffix,omitempty"`
	Contains *string  `protobuf:"bytes,9,opt,name=contains" json:"contains,omitempty"`
	In       []string `protobuf:"bytes,10,rep,name=in" json:"in,omitempty"`
	NotIn    []string `protobuf:"bytes,11,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	// Types that are valid to be assigned to WellKnown:
	//	*StringRules_Email
	//	*StringRules_Hostname
	//	*StringRules_Ip
	//	*StringRules_Ipv4
	//	*StringRules_Ipv6
	//	*StringRules_Uri
	//	*StringRules_UriRef
	//	*StringRules_Address
	//	*StringRules_Uuid
	WellKnown            isStringRules_WellKnown `protobuf_oneof:"well_known"`
	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
	XXX_unrecognized     []byte                  `json:"-"`
	XXX_sizecache        int32                   `json:"-"`
}

func (m *StringRules) Reset()         { *m = StringRules{} }
func (m *StringRules) String() string { return proto.CompactTextString(m) }
func (*StringRules) ProtoMessage()    {}
func (*StringRules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{14}
}

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

var xxx_messageInfo_StringRules proto.InternalMessageInfo

func (m *StringRules) GetConst() string {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return ""
}

func (m *StringRules) GetLen() uint64 {
	if m != nil && m.Len != nil {
		return *m.Len
	}
	return 0
}

func (m *StringRules) GetMinLen() uint64 {
	if m != nil && m.MinLen != nil {
		return *m.MinLen
	}
	return 0
}

func (m *StringRules) GetMaxLen() uint64 {
	if m != nil && m.MaxLen != nil {
		return *m.MaxLen
	}
	return 0
}

func (m *StringRules) GetLenBytes() uint64 {
	if m != nil && m.LenBytes != nil {
		return *m.LenBytes
	}
	return 0
}

func (m *StringRules) GetMinBytes() uint64 {
	if m != nil && m.MinBytes != nil {
		return *m.MinBytes
	}
	return 0
}

func (m *StringRules) GetMaxBytes() uint64 {
	if m != nil && m.MaxBytes != nil {
		return *m.MaxBytes
	}
	return 0
}

func (m *StringRules) GetPattern() string {
	if m != nil && m.Pattern != nil {
		return *m.Pattern
	}
	return ""
}

func (m *StringRules) GetPrefix() string {
	if m != nil && m.Prefix != nil {
		return *m.Prefix
	}
	return ""
}

func (m *StringRules) GetSuffix() string {
	if m != nil && m.Suffix != nil {
		return *m.Suffix
	}
	return ""
}

func (m *StringRules) GetContains() string {
	if m != nil && m.Contains != nil {
		return *m.Contains
	}
	return ""
}

func (m *StringRules) GetIn() []string {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *StringRules) GetNotIn() []string {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type isStringRules_WellKnown interface {
	isStringRules_WellKnown()
}

type StringRules_Email struct {
	Email bool `protobuf:"varint,12,opt,name=email,oneof"`
}

type StringRules_Hostname struct {
	Hostname bool `protobuf:"varint,13,opt,name=hostname,oneof"`
}

type StringRules_Ip struct {
	Ip bool `protobuf:"varint,14,opt,name=ip,oneof"`
}

type StringRules_Ipv4 struct {
	Ipv4 bool `protobuf:"varint,15,opt,name=ipv4,oneof"`
}

type StringRules_Ipv6 struct {
	Ipv6 bool `protobuf:"varint,16,opt,name=ipv6,oneof"`
}

type StringRules_Uri struct {
	Uri bool `protobuf:"varint,17,opt,name=uri,oneof"`
}

type StringRules_UriRef struct {
	UriRef bool `protobuf:"varint,18,opt,name=uri_ref,json=uriRef,oneof"`
}

type StringRules_Address struct {
	Address bool `protobuf:"varint,21,opt,name=address,oneof"`
}

type StringRules_Uuid struct {
	Uuid bool `protobuf:"varint,22,opt,name=uuid,oneof"`
}

func (*StringRules_Email) isStringRules_WellKnown() {}

func (*StringRules_Hostname) isStringRules_WellKnown() {}

func (*StringRules_Ip) isStringRules_WellKnown() {}

func (*StringRules_Ipv4) isStringRules_WellKnown() {}

func (*StringRules_Ipv6) isStringRules_WellKnown() {}

func (*StringRules_Uri) isStringRules_WellKnown() {}

func (*StringRules_UriRef) isStringRules_WellKnown() {}

func (*StringRules_Address) isStringRules_WellKnown() {}

func (*StringRules_Uuid) isStringRules_WellKnown() {}

func (m *StringRules) GetWellKnown() isStringRules_WellKnown {
	if m != nil {
		return m.WellKnown
	}
	return nil
}

func (m *StringRules) GetEmail() bool {
	if x, ok := m.GetWellKnown().(*StringRules_Email); ok {
		return x.Email
	}
	return false
}

func (m *StringRules) GetHostname() bool {
	if x, ok := m.GetWellKnown().(*StringRules_Hostname); ok {
		return x.Hostname
	}
	return false
}

func (m *StringRules) GetIp() bool {
	if x, ok := m.GetWellKnown().(*StringRules_Ip); ok {
		return x.Ip
	}
	return false
}

func (m *StringRules) GetIpv4() bool {
	if x, ok := m.GetWellKnown().(*StringRules_Ipv4); ok {
		return x.Ipv4
	}
	return false
}

func (m *StringRules) GetIpv6() bool {
	if x, ok := m.GetWellKnown().(*StringRules_Ipv6); ok {
		return x.Ipv6
	}
	return false
}

func (m *StringRules) GetUri() bool {
	if x, ok := m.GetWellKnown().(*StringRules_Uri); ok {
		return x.Uri
	}
	return false
}

func (m *StringRules) GetUriRef() bool {
	if x, ok := m.GetWellKnown().(*StringRules_UriRef); ok {
		return x.UriRef
	}
	return false
}

func (m *StringRules) GetAddress() bool {
	if x, ok := m.GetWellKnown().(*StringRules_Address); ok {
		return x.Address
	}
	return false
}

func (m *StringRules) GetUuid() bool {
	if x, ok := m.GetWellKnown().(*StringRules_Uuid); ok {
		return x.Uuid
	}
	return false
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*StringRules) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*StringRules_Email)(nil),
		(*StringRules_Hostname)(nil),
		(*StringRules_Ip)(nil),
		(*StringRules_Ipv4)(nil),
		(*StringRules_Ipv6)(nil),
		(*StringRules_Uri)(nil),
		(*StringRules_UriRef)(nil),
		(*StringRules_Address)(nil),
		(*StringRules_Uuid)(nil),
	}
}

type BytesRules struct {
	Const    []byte   `protobuf:"bytes,1,opt,name=const" json:"const,omitempty"`
	Len      *uint64  `protobuf:"varint,13,opt,name=len" json:"len,omitempty"`
	MinLen   *uint64  `protobuf:"varint,2,opt,name=min_len,json=minLen" json:"min_len,omitempty"`
	MaxLen   *uint64  `protobuf:"varint,3,opt,name=max_len,json=maxLen" json:"max_len,omitempty"`
	Pattern  *string  `protobuf:"bytes,4,opt,name=pattern" json:"pattern,omitempty"`
	Prefix   []byte   `protobuf:"bytes,5,opt,name=prefix" json:"prefix,omitempty"`
	Suffix   []byte   `protobuf:"bytes,6,opt,name=suffix" json:"suffix,omitempty"`
	Contains []byte   `protobuf:"bytes,7,opt,name=contains" json:"contains,omitempty"`
	In       [][]byte `protobuf:"bytes,8,rep,name=in" json:"in,omitempty"`
	NotIn    [][]byte `protobuf:"bytes,9,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	// Types that are valid to be assigned to WellKnown:
	//	*BytesRules_Ip
	//	*BytesRules_Ipv4
	//	*BytesRules_Ipv6
	WellKnown            isBytesRules_WellKnown `protobuf_oneof:"well_known"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *BytesRules) Reset()         { *m = BytesRules{} }
func (m *BytesRules) String() string { return proto.CompactTextString(m) }
func (*BytesRules) ProtoMessage()    {}
func (*BytesRules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{15}
}

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

var xxx_messageInfo_BytesRules proto.InternalMessageInfo

func (m *BytesRules) GetConst() []byte {
	if m != nil {
		return m.Const
	}
	return nil
}

func (m *BytesRules) GetLen() uint64 {
	if m != nil && m.Len != nil {
		return *m.Len
	}
	return 0
}

func (m *BytesRules) GetMinLen() uint64 {
	if m != nil && m.MinLen != nil {
		return *m.MinLen
	}
	return 0
}

func (m *BytesRules) GetMaxLen() uint64 {
	if m != nil && m.MaxLen != nil {
		return *m.MaxLen
	}
	return 0
}

func (m *BytesRules) GetPattern() string {
	if m != nil && m.Pattern != nil {
		return *m.Pattern
	}
	return ""
}

func (m *BytesRules) GetPrefix() []byte {
	if m != nil {
		return m.Prefix
	}
	return nil
}

func (m *BytesRules) GetSuffix() []byte {
	if m != nil {
		return m.Suffix
	}
	return nil
}

func (m *BytesRules) GetContains() []byte {
	if m != nil {
		return m.Contains
	}
	return nil
}

func (m *BytesRules) GetIn() [][]byte {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *BytesRules) GetNotIn() [][]byte {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type isBytesRules_WellKnown interface {
	isBytesRules_WellKnown()
}

type BytesRules_Ip struct {
	Ip bool `protobuf:"varint,10,opt,name=ip,oneof"`
}

type BytesRules_Ipv4 struct {
	Ipv4 bool `protobuf:"varint,11,opt,name=ipv4,oneof"`
}

type BytesRules_Ipv6 struct {
	Ipv6 bool `protobuf:"varint,12,opt,name=ipv6,oneof"`
}

func (*BytesRules_Ip) isBytesRules_WellKnown() {}

func (*BytesRules_Ipv4) isBytesRules_WellKnown() {}

func (*BytesRules_Ipv6) isBytesRules_WellKnown() {}

func (m *BytesRules) GetWellKnown() isBytesRules_WellKnown {
	if m != nil {
		return m.WellKnown
	}
	return nil
}

func (m *BytesRules) GetIp() bool {
	if x, ok := m.GetWellKnown().(*BytesRules_Ip); ok {
		return x.Ip
	}
	return false
}

func (m *BytesRules) GetIpv4() bool {
	if x, ok := m.GetWellKnown().(*BytesRules_Ipv4); ok {
		return x.Ipv4
	}
	return false
}

func (m *BytesRules) GetIpv6() bool {
	if x, ok := m.GetWellKnown().(*BytesRules_Ipv6); ok {
		return x.Ipv6
	}
	return false
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*BytesRules) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*BytesRules_Ip)(nil),
		(*BytesRules_Ipv4)(nil),
		(*BytesRules_Ipv6)(nil),
	}
}

type EnumRules struct {
	Const                *int32   `protobuf:"varint,1,opt,name=const" json:"const,omitempty"`
	DefinedOnly          *bool    `protobuf:"varint,2,opt,name=defined_only,json=definedOnly" json:"defined_only,omitempty"`
	In                   []int32  `protobuf:"varint,3,rep,name=in" json:"in,omitempty"`
	NotIn                []int32  `protobuf:"varint,4,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *EnumRules) Reset()         { *m = EnumRules{} }
func (m *EnumRules) String() string { return proto.CompactTextString(m) }
func (*EnumRules) ProtoMessage()    {}
func (*EnumRules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{16}
}

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

var xxx_messageInfo_EnumRules proto.InternalMessageInfo

func (m *EnumRules) GetConst() int32 {
	if m != nil && m.Const != nil {
		return *m.Const
	}
	return 0
}

func (m *EnumRules) GetDefinedOnly() bool {
	if m != nil && m.DefinedOnly != nil {
		return *m.DefinedOnly
	}
	return false
}

func (m *EnumRules) GetIn() []int32 {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *EnumRules) GetNotIn() []int32 {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type MessageRules struct {
	Skip                 *bool    `protobuf:"varint,1,opt,name=skip" json:"skip,omitempty"`
	Required             *bool    `protobuf:"varint,2,opt,name=required" json:"required,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *MessageRules) Reset()         { *m = MessageRules{} }
func (m *MessageRules) String() string { return proto.CompactTextString(m) }
func (*MessageRules) ProtoMessage()    {}
func (*MessageRules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{17}
}

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

var xxx_messageInfo_MessageRules proto.InternalMessageInfo

func (m *MessageRules) GetSkip() bool {
	if m != nil && m.Skip != nil {
		return *m.Skip
	}
	return false
}

func (m *MessageRules) GetRequired() bool {
	if m != nil && m.Required != nil {
		return *m.Required
	}
	return false
}

type RepeatedRules struct {
	MinItems             *uint64     `protobuf:"varint,1,opt,name=min_items,json=minItems" json:"min_items,omitempty"`
	MaxItems             *uint64     `protobuf:"varint,2,opt,name=max_items,json=maxItems" json:"max_items,omitempty"`
	Unique               *bool       `protobuf:"varint,3,opt,name=unique" json:"unique,omitempty"`
	Items                *FieldRules `protobuf:"bytes,4,opt,name=items" json:"items,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *RepeatedRules) Reset()         { *m = RepeatedRules{} }
func (m *RepeatedRules) String() string { return proto.CompactTextString(m) }
func (*RepeatedRules) ProtoMessage()    {}
func (*RepeatedRules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{18}
}

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

var xxx_messageInfo_RepeatedRules proto.InternalMessageInfo

func (m *RepeatedRules) GetMinItems() uint64 {
	if m != nil && m.MinItems != nil {
		return *m.MinItems
	}
	return 0
}

func (m *RepeatedRules) GetMaxItems() uint64 {
	if m != nil && m.MaxItems != nil {
		return *m.MaxItems
	}
	return 0
}

func (m *RepeatedRules) GetUnique() bool {
	if m != nil && m.Unique != nil {
		return *m.Unique
	}
	return false
}

func (m *RepeatedRules) GetItems() *FieldRules {
	if m != nil {
		return m.Items
	}
	return nil
}

type MapRules struct {
	MinPairs             *uint64     `protobuf:"varint,1,opt,name=min_pairs,json=minPairs" json:"min_pairs,omitempty"`
	MaxPairs             *uint64     `protobuf:"varint,2,opt,name=max_pairs,json=maxPairs" json:"max_pairs,omitempty"`
	NoSparse             *bool       `protobuf:"varint,3,opt,name=no_sparse,json=noSparse" json:"no_sparse,omitempty"`
	Keys                 *FieldRules `protobuf:"bytes,4,opt,name=keys" json:"keys,omitempty"`
	Values               *FieldRules `protobuf:"bytes,5,opt,name=values" json:"values,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *MapRules) Reset()         { *m = MapRules{} }
func (m *MapRules) String() string { return proto.CompactTextString(m) }
func (*MapRules) ProtoMessage()    {}
func (*MapRules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{19}
}

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

var xxx_messageInfo_MapRules proto.InternalMessageInfo

func (m *MapRules) GetMinPairs() uint64 {
	if m != nil && m.MinPairs != nil {
		return *m.MinPairs
	}
	return 0
}

func (m *MapRules) GetMaxPairs() uint64 {
	if m != nil && m.MaxPairs != nil {
		return *m.MaxPairs
	}
	return 0
}

func (m *MapRules) GetNoSparse() bool {
	if m != nil && m.NoSparse != nil {
		return *m.NoSparse
	}
	return false
}

func (m *MapRules) GetKeys() *FieldRules {
	if m != nil {
		return m.Keys
	}
	return nil
}

func (m *MapRules) GetValues() *FieldRules {
	if m != nil {
		return m.Values
	}
	return nil
}

type AnyRules struct {
	Required             *bool    `protobuf:"varint,1,opt,name=required" json:"required,omitempty"`
	In                   []string `protobuf:"bytes,2,rep,name=in" json:"in,omitempty"`
	NotIn                []string `protobuf:"bytes,3,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AnyRules) Reset()         { *m = AnyRules{} }
func (m *AnyRules) String() string { return proto.CompactTextString(m) }
func (*AnyRules) ProtoMessage()    {}
func (*AnyRules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{20}
}

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

var xxx_messageInfo_AnyRules proto.InternalMessageInfo

func (m *AnyRules) GetRequired() bool {
	if m != nil && m.Required != nil {
		return *m.Required
	}
	return false
}

func (m *AnyRules) GetIn() []string {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *AnyRules) GetNotIn() []string {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type DurationRules struct {
	Required             *bool                `protobuf:"varint,1,opt,name=required" json:"required,omitempty"`
	Const                *duration.Duration   `protobuf:"bytes,2,opt,name=const" json:"const,omitempty"`
	Lt                   *duration.Duration   `protobuf:"bytes,3,opt,name=lt" json:"lt,omitempty"`
	Lte                  *duration.Duration   `protobuf:"bytes,4,opt,name=lte" json:"lte,omitempty"`
	Gt                   *duration.Duration   `protobuf:"bytes,5,opt,name=gt" json:"gt,omitempty"`
	Gte                  *duration.Duration   `protobuf:"bytes,6,opt,name=gte" json:"gte,omitempty"`
	In                   []*duration.Duration `protobuf:"bytes,7,rep,name=in" json:"in,omitempty"`
	NotIn                []*duration.Duration `protobuf:"bytes,8,rep,name=not_in,json=notIn" json:"not_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *DurationRules) Reset()         { *m = DurationRules{} }
func (m *DurationRules) String() string { return proto.CompactTextString(m) }
func (*DurationRules) ProtoMessage()    {}
func (*DurationRules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{21}
}

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

var xxx_messageInfo_DurationRules proto.InternalMessageInfo

func (m *DurationRules) GetRequired() bool {
	if m != nil && m.Required != nil {
		return *m.Required
	}
	return false
}

func (m *DurationRules) GetConst() *duration.Duration {
	if m != nil {
		return m.Const
	}
	return nil
}

func (m *DurationRules) GetLt() *duration.Duration {
	if m != nil {
		return m.Lt
	}
	return nil
}

func (m *DurationRules) GetLte() *duration.Duration {
	if m != nil {
		return m.Lte
	}
	return nil
}

func (m *DurationRules) GetGt() *duration.Duration {
	if m != nil {
		return m.Gt
	}
	return nil
}

func (m *DurationRules) GetGte() *duration.Duration {
	if m != nil {
		return m.Gte
	}
	return nil
}

func (m *DurationRules) GetIn() []*duration.Duration {
	if m != nil {
		return m.In
	}
	return nil
}

func (m *DurationRules) GetNotIn() []*duration.Duration {
	if m != nil {
		return m.NotIn
	}
	return nil
}

type TimestampRules struct {
	Required             *bool                `protobuf:"varint,1,opt,name=required" json:"required,omitempty"`
	Const                *timestamp.Timestamp `protobuf:"bytes,2,opt,name=const" json:"const,omitempty"`
	Lt                   *timestamp.Timestamp `protobuf:"bytes,3,opt,name=lt" json:"lt,omitempty"`
	Lte                  *timestamp.Timestamp `protobuf:"bytes,4,opt,name=lte" json:"lte,omitempty"`
	Gt                   *timestamp.Timestamp `protobuf:"bytes,5,opt,name=gt" json:"gt,omitempty"`
	Gte                  *timestamp.Timestamp `protobuf:"bytes,6,opt,name=gte" json:"gte,omitempty"`
	LtNow                *bool                `protobuf:"varint,7,opt,name=lt_now,json=ltNow" json:"lt_now,omitempty"`
	GtNow                *bool                `protobuf:"varint,8,opt,name=gt_now,json=gtNow" json:"gt_now,omitempty"`
	Within               *duration.Duration   `protobuf:"bytes,9,opt,name=within" json:"within,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *TimestampRules) Reset()         { *m = TimestampRules{} }
func (m *TimestampRules) String() string { return proto.CompactTextString(m) }
func (*TimestampRules) ProtoMessage()    {}
func (*TimestampRules) Descriptor() ([]byte, []int) {
	return fileDescriptor_79dbefd0936fb92e, []int{22}
}

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

var xxx_messageInfo_TimestampRules proto.InternalMessageInfo

func (m *TimestampRules) GetRequired() bool {
	if m != nil && m.Required != nil {
		return *m.Required
	}
	return false
}

func (m *TimestampRules) GetConst() *timestamp.Timestamp {
	if m != nil {
		return m.Const
	}
	return nil
}

func (m *TimestampRules) GetLt() *timestamp.Timestamp {
	if m != nil {
		return m.Lt
	}
	return nil
}

func (m *TimestampRules) GetLte() *timestamp.Timestamp {
	if m != nil {
		return m.Lte
	}
	return nil
}

func (m *TimestampRules) GetGt() *timestamp.Timestamp {
	if m != nil {
		return m.Gt
	}
	return nil
}

func (m *TimestampRules) GetGte() *timestamp.Timestamp {
	if m != nil {
		return m.Gte
	}
	return nil
}

func (m *TimestampRules) GetLtNow() bool {
	if m != nil && m.LtNow != nil {
		return *m.LtNow
	}
	return false
}

func (m *TimestampRules) GetGtNow() bool {
	if m != nil && m.GtNow != nil {
		return *m.GtNow
	}
	return false
}

func (m *TimestampRules) GetWithin() *duration.Duration {
	if m != nil {
		return m.Within
	}
	return nil
}

var E_Disabled = &proto.ExtensionDesc{
	ExtendedType:  (*descriptor.MessageOptions)(nil),
	ExtensionType: (*bool)(nil),
	Field:         1071,
	Name:          "validate.disabled",
	Tag:           "varint,1071,opt,name=disabled",
	Filename:      "validate/validate.proto",
}

var E_Required = &proto.ExtensionDesc{
	ExtendedType:  (*descriptor.OneofOptions)(nil),
	ExtensionType: (*bool)(nil),
	Field:         1071,
	Name:          "validate.required",
	Tag:           "varint,1071,opt,name=required",
	Filename:      "validate/validate.proto",
}

var E_Rules = &proto.ExtensionDesc{
	ExtendedType:  (*descriptor.FieldOptions)(nil),
	ExtensionType: (*FieldRules)(nil),
	Field:         1071,
	Name:          "validate.rules",
	Tag:           "bytes,1071,opt,name=rules",
	Filename:      "validate/validate.proto",
}

func init() {
	proto.RegisterType((*FieldRules)(nil), "validate.FieldRules")
	proto.RegisterType((*FloatRules)(nil), "validate.FloatRules")
	proto.RegisterType((*DoubleRules)(nil), "validate.DoubleRules")
	proto.RegisterType((*Int32Rules)(nil), "validate.Int32Rules")
	proto.RegisterType((*Int64Rules)(nil), "validate.Int64Rules")
	proto.RegisterType((*UInt32Rules)(nil), "validate.UInt32Rules")
	proto.RegisterType((*UInt64Rules)(nil), "validate.UInt64Rules")
	proto.RegisterType((*SInt32Rules)(nil), "validate.SInt32Rules")
	proto.RegisterType((*SInt64Rules)(nil), "validate.SInt64Rules")
	proto.RegisterType((*Fixed32Rules)(nil), "validate.Fixed32Rules")
	proto.RegisterType((*Fixed64Rules)(nil), "validate.Fixed64Rules")
	proto.RegisterType((*SFixed32Rules)(nil), "validate.SFixed32Rules")
	proto.RegisterType((*SFixed64Rules)(nil), "validate.SFixed64Rules")
	proto.RegisterType((*BoolRules)(nil), "validate.BoolRules")
	proto.RegisterType((*StringRules)(nil), "validate.StringRules")
	proto.RegisterType((*BytesRules)(nil), "validate.BytesRules")
	proto.RegisterType((*EnumRules)(nil), "validate.EnumRules")
	proto.RegisterType((*MessageRules)(nil), "validate.MessageRules")
	proto.RegisterType((*RepeatedRules)(nil), "validate.RepeatedRules")
	proto.RegisterType((*MapRules)(nil), "validate.MapRules")
	proto.RegisterType((*AnyRules)(nil), "validate.AnyRules")
	proto.RegisterType((*DurationRules)(nil), "validate.DurationRules")
	proto.RegisterType((*TimestampRules)(nil), "validate.TimestampRules")
	proto.RegisterExtension(E_Disabled)
	proto.RegisterExtension(E_Required)
	proto.RegisterExtension(E_Rules)
}

func init() { proto.RegisterFile("validate/validate.proto", fileDescriptor_79dbefd0936fb92e) }

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