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

package types

import (
	fmt "fmt"

	proto "github.com/golang/protobuf/proto"

	math "math"

	types "github.com/33cn/chain33/types"
)

// 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 BlockID struct {
	Hash                 []byte   `protobuf:"bytes,1,opt,name=Hash,proto3" json:"Hash,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_BlockID proto.InternalMessageInfo

func (m *BlockID) GetHash() []byte {
	if m != nil {
		return m.Hash
	}
	return nil
}

type TendermintBitArray struct {
	Bits                 int32    `protobuf:"varint,1,opt,name=Bits,proto3" json:"Bits,omitempty"`
	Elems                []uint64 `protobuf:"varint,2,rep,packed,name=Elems,proto3" json:"Elems,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_TendermintBitArray proto.InternalMessageInfo

func (m *TendermintBitArray) GetBits() int32 {
	if m != nil {
		return m.Bits
	}
	return 0
}

func (m *TendermintBitArray) GetElems() []uint64 {
	if m != nil {
		return m.Elems
	}
	return nil
}

type Vote struct {
	ValidatorAddress     []byte   `protobuf:"bytes,1,opt,name=ValidatorAddress,proto3" json:"ValidatorAddress,omitempty"`
	ValidatorIndex       int32    `protobuf:"varint,2,opt,name=ValidatorIndex,proto3" json:"ValidatorIndex,omitempty"`
	Height               int64    `protobuf:"varint,3,opt,name=Height,proto3" json:"Height,omitempty"`
	Round                int32    `protobuf:"varint,4,opt,name=Round,proto3" json:"Round,omitempty"`
	Timestamp            int64    `protobuf:"varint,5,opt,name=Timestamp,proto3" json:"Timestamp,omitempty"`
	Type                 uint32   `protobuf:"varint,6,opt,name=Type,proto3" json:"Type,omitempty"`
	BlockID              *BlockID `protobuf:"bytes,7,opt,name=BlockID,proto3" json:"BlockID,omitempty"`
	Signature            []byte   `protobuf:"bytes,8,opt,name=Signature,proto3" json:"Signature,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_Vote proto.InternalMessageInfo

func (m *Vote) GetValidatorAddress() []byte {
	if m != nil {
		return m.ValidatorAddress
	}
	return nil
}

func (m *Vote) GetValidatorIndex() int32 {
	if m != nil {
		return m.ValidatorIndex
	}
	return 0
}

func (m *Vote) GetHeight() int64 {
	if m != nil {
		return m.Height
	}
	return 0
}

func (m *Vote) GetRound() int32 {
	if m != nil {
		return m.Round
	}
	return 0
}

func (m *Vote) GetTimestamp() int64 {
	if m != nil {
		return m.Timestamp
	}
	return 0
}

func (m *Vote) GetType() uint32 {
	if m != nil {
		return m.Type
	}
	return 0
}

func (m *Vote) GetBlockID() *BlockID {
	if m != nil {
		return m.BlockID
	}
	return nil
}

func (m *Vote) GetSignature() []byte {
	if m != nil {
		return m.Signature
	}
	return nil
}

type TendermintCommit struct {
	BlockID              *BlockID `protobuf:"bytes,1,opt,name=BlockID,proto3" json:"BlockID,omitempty"`
	Precommits           []*Vote  `protobuf:"bytes,2,rep,name=Precommits,proto3" json:"Precommits,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_TendermintCommit proto.InternalMessageInfo

func (m *TendermintCommit) GetBlockID() *BlockID {
	if m != nil {
		return m.BlockID
	}
	return nil
}

func (m *TendermintCommit) GetPrecommits() []*Vote {
	if m != nil {
		return m.Precommits
	}
	return nil
}

type TendermintBlockInfo struct {
	SeenCommit           *TendermintCommit `protobuf:"bytes,1,opt,name=SeenCommit,proto3" json:"SeenCommit,omitempty"`
	LastCommit           *TendermintCommit `protobuf:"bytes,2,opt,name=LastCommit,proto3" json:"LastCommit,omitempty"`
	State                *State            `protobuf:"bytes,3,opt,name=State,proto3" json:"State,omitempty"`
	Proposal             *Proposal         `protobuf:"bytes,4,opt,name=Proposal,proto3" json:"Proposal,omitempty"`
	Block                *TendermintBlock  `protobuf:"bytes,5,opt,name=block,proto3" json:"block,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

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

var xxx_messageInfo_TendermintBlockInfo proto.InternalMessageInfo

func (m *TendermintBlockInfo) GetSeenCommit() *TendermintCommit {
	if m != nil {
		return m.SeenCommit
	}
	return nil
}

func (m *TendermintBlockInfo) GetLastCommit() *TendermintCommit {
	if m != nil {
		return m.LastCommit
	}
	return nil
}

func (m *TendermintBlockInfo) GetState() *State {
	if m != nil {
		return m.State
	}
	return nil
}

func (m *TendermintBlockInfo) GetProposal() *Proposal {
	if m != nil {
		return m.Proposal
	}
	return nil
}

func (m *TendermintBlockInfo) GetBlock() *TendermintBlock {
	if m != nil {
		return m.Block
	}
	return nil
}

type BlockSize struct {
	MaxBytes             int32    `protobuf:"varint,1,opt,name=MaxBytes,proto3" json:"MaxBytes,omitempty"`
	MaxTxs               int32    `protobuf:"varint,2,opt,name=MaxTxs,proto3" json:"MaxTxs,omitempty"`
	MaxGas               int64    `protobuf:"varint,3,opt,name=MaxGas,proto3" json:"MaxGas,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_BlockSize proto.InternalMessageInfo

func (m *BlockSize) GetMaxBytes() int32 {
	if m != nil {
		return m.MaxBytes
	}
	return 0
}

func (m *BlockSize) GetMaxTxs() int32 {
	if m != nil {
		return m.MaxTxs
	}
	return 0
}

func (m *BlockSize) GetMaxGas() int64 {
	if m != nil {
		return m.MaxGas
	}
	return 0
}

type TxSize struct {
	MaxBytes             int32    `protobuf:"varint,1,opt,name=MaxBytes,proto3" json:"MaxBytes,omitempty"`
	MaxGas               int64    `protobuf:"varint,2,opt,name=MaxGas,proto3" json:"MaxGas,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_TxSize proto.InternalMessageInfo

func (m *TxSize) GetMaxBytes() int32 {
	if m != nil {
		return m.MaxBytes
	}
	return 0
}

func (m *TxSize) GetMaxGas() int64 {
	if m != nil {
		return m.MaxGas
	}
	return 0
}

type BlockGossip struct {
	BlockPartSizeBytes   int32    `protobuf:"varint,1,opt,name=BlockPartSizeBytes,proto3" json:"BlockPartSizeBytes,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_BlockGossip proto.InternalMessageInfo

func (m *BlockGossip) GetBlockPartSizeBytes() int32 {
	if m != nil {
		return m.BlockPartSizeBytes
	}
	return 0
}

type EvidenceParams struct {
	MaxAge               int64    `protobuf:"varint,1,opt,name=MaxAge,proto3" json:"MaxAge,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_EvidenceParams proto.InternalMessageInfo

func (m *EvidenceParams) GetMaxAge() int64 {
	if m != nil {
		return m.MaxAge
	}
	return 0
}

type ConsensusParams struct {
	BlockSize            *BlockSize      `protobuf:"bytes,1,opt,name=BlockSize,proto3" json:"BlockSize,omitempty"`
	TxSize               *TxSize         `protobuf:"bytes,2,opt,name=TxSize,proto3" json:"TxSize,omitempty"`
	BlockGossip          *BlockGossip    `protobuf:"bytes,3,opt,name=BlockGossip,proto3" json:"BlockGossip,omitempty"`
	EvidenceParams       *EvidenceParams `protobuf:"bytes,4,opt,name=EvidenceParams,proto3" json:"EvidenceParams,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

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

var xxx_messageInfo_ConsensusParams proto.InternalMessageInfo

func (m *ConsensusParams) GetBlockSize() *BlockSize {
	if m != nil {
		return m.BlockSize
	}
	return nil
}

func (m *ConsensusParams) GetTxSize() *TxSize {
	if m != nil {
		return m.TxSize
	}
	return nil
}

func (m *ConsensusParams) GetBlockGossip() *BlockGossip {
	if m != nil {
		return m.BlockGossip
	}
	return nil
}

func (m *ConsensusParams) GetEvidenceParams() *EvidenceParams {
	if m != nil {
		return m.EvidenceParams
	}
	return nil
}

type Validator struct {
	Address              []byte   `protobuf:"bytes,1,opt,name=Address,proto3" json:"Address,omitempty"`
	PubKey               []byte   `protobuf:"bytes,2,opt,name=PubKey,proto3" json:"PubKey,omitempty"`
	VotingPower          int64    `protobuf:"varint,3,opt,name=VotingPower,proto3" json:"VotingPower,omitempty"`
	Accum                int64    `protobuf:"varint,4,opt,name=Accum,proto3" json:"Accum,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_Validator proto.InternalMessageInfo

func (m *Validator) GetAddress() []byte {
	if m != nil {
		return m.Address
	}
	return nil
}

func (m *Validator) GetPubKey() []byte {
	if m != nil {
		return m.PubKey
	}
	return nil
}

func (m *Validator) GetVotingPower() int64 {
	if m != nil {
		return m.VotingPower
	}
	return 0
}

func (m *Validator) GetAccum() int64 {
	if m != nil {
		return m.Accum
	}
	return 0
}

type ValidatorSet struct {
	Validators           []*Validator `protobuf:"bytes,1,rep,name=Validators,proto3" json:"Validators,omitempty"`
	Proposer             *Validator   `protobuf:"bytes,2,opt,name=Proposer,proto3" json:"Proposer,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

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

var xxx_messageInfo_ValidatorSet proto.InternalMessageInfo

func (m *ValidatorSet) GetValidators() []*Validator {
	if m != nil {
		return m.Validators
	}
	return nil
}

func (m *ValidatorSet) GetProposer() *Validator {
	if m != nil {
		return m.Proposer
	}
	return nil
}

type State struct {
	ChainID                          string           `protobuf:"bytes,1,opt,name=ChainID,proto3" json:"ChainID,omitempty"`
	LastBlockHeight                  int64            `protobuf:"varint,2,opt,name=LastBlockHeight,proto3" json:"LastBlockHeight,omitempty"`
	LastBlockTotalTx                 int64            `protobuf:"varint,3,opt,name=LastBlockTotalTx,proto3" json:"LastBlockTotalTx,omitempty"`
	LastBlockID                      *BlockID         `protobuf:"bytes,4,opt,name=LastBlockID,proto3" json:"LastBlockID,omitempty"`
	LastBlockTime                    int64            `protobuf:"varint,5,opt,name=LastBlockTime,proto3" json:"LastBlockTime,omitempty"`
	Validators                       *ValidatorSet    `protobuf:"bytes,6,opt,name=Validators,proto3" json:"Validators,omitempty"`
	LastValidators                   *ValidatorSet    `protobuf:"bytes,7,opt,name=LastValidators,proto3" json:"LastValidators,omitempty"`
	LastHeightValidatorsChanged      int64            `protobuf:"varint,8,opt,name=LastHeightValidatorsChanged,proto3" json:"LastHeightValidatorsChanged,omitempty"`
	ConsensusParams                  *ConsensusParams `protobuf:"bytes,9,opt,name=ConsensusParams,proto3" json:"ConsensusParams,omitempty"`
	LastHeightConsensusParamsChanged int64            `protobuf:"varint,10,opt,name=LastHeightConsensusParamsChanged,proto3" json:"LastHeightConsensusParamsChanged,omitempty"`
	LastResultsHash                  []byte           `protobuf:"bytes,11,opt,name=LastResultsHash,proto3" json:"LastResultsHash,omitempty"`
	AppHash                          []byte           `protobuf:"bytes,12,opt,name=AppHash,proto3" json:"AppHash,omitempty"`
	XXX_NoUnkeyedLiteral             struct{}         `json:"-"`
	XXX_unrecognized                 []byte           `json:"-"`
	XXX_sizecache                    int32            `json:"-"`
}

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

var xxx_messageInfo_State proto.InternalMessageInfo

func (m *State) GetChainID() string {
	if m != nil {
		return m.ChainID
	}
	return ""
}

func (m *State) GetLastBlockHeight() int64 {
	if m != nil {
		return m.LastBlockHeight
	}
	return 0
}

func (m *State) GetLastBlockTotalTx() int64 {
	if m != nil {
		return m.LastBlockTotalTx
	}
	return 0
}

func (m *State) GetLastBlockID() *BlockID {
	if m != nil {
		return m.LastBlockID
	}
	return nil
}

func (m *State) GetLastBlockTime() int64 {
	if m != nil {
		return m.LastBlockTime
	}
	return 0
}

func (m *State) GetValidators() *ValidatorSet {
	if m != nil {
		return m.Validators
	}
	return nil
}

func (m *State) GetLastValidators() *ValidatorSet {
	if m != nil {
		return m.LastValidators
	}
	return nil
}

func (m *State) GetLastHeightValidatorsChanged() int64 {
	if m != nil {
		return m.LastHeightValidatorsChanged
	}
	return 0
}

func (m *State) GetConsensusParams() *ConsensusParams {
	if m != nil {
		return m.ConsensusParams
	}
	return nil
}

func (m *State) GetLastHeightConsensusParamsChanged() int64 {
	if m != nil {
		return m.LastHeightConsensusParamsChanged
	}
	return 0
}

func (m *State) GetLastResultsHash() []byte {
	if m != nil {
		return m.LastResultsHash
	}
	return nil
}

func (m *State) GetAppHash() []byte {
	if m != nil {
		return m.AppHash
	}
	return nil
}

type DuplicateVoteEvidence struct {
	PubKey               string   `protobuf:"bytes,1,opt,name=pubKey,proto3" json:"pubKey,omitempty"`
	VoteA                *Vote    `protobuf:"bytes,2,opt,name=voteA,proto3" json:"voteA,omitempty"`
	VoteB                *Vote    `protobuf:"bytes,3,opt,name=voteB,proto3" json:"voteB,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_DuplicateVoteEvidence proto.InternalMessageInfo

func (m *DuplicateVoteEvidence) GetPubKey() string {
	if m != nil {
		return m.PubKey
	}
	return ""
}

func (m *DuplicateVoteEvidence) GetVoteA() *Vote {
	if m != nil {
		return m.VoteA
	}
	return nil
}

func (m *DuplicateVoteEvidence) GetVoteB() *Vote {
	if m != nil {
		return m.VoteB
	}
	return nil
}

type EvidenceEnvelope struct {
	TypeName             string   `protobuf:"bytes,1,opt,name=typeName,proto3" json:"typeName,omitempty"`
	Data                 []byte   `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_EvidenceEnvelope proto.InternalMessageInfo

func (m *EvidenceEnvelope) GetTypeName() string {
	if m != nil {
		return m.TypeName
	}
	return ""
}

func (m *EvidenceEnvelope) GetData() []byte {
	if m != nil {
		return m.Data
	}
	return nil
}

type EvidenceData struct {
	Evidence             []*EvidenceEnvelope `protobuf:"bytes,1,rep,name=evidence,proto3" json:"evidence,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

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

var xxx_messageInfo_EvidenceData proto.InternalMessageInfo

func (m *EvidenceData) GetEvidence() []*EvidenceEnvelope {
	if m != nil {
		return m.Evidence
	}
	return nil
}

type TendermintBlockHeader struct {
	ChainID              string   `protobuf:"bytes,1,opt,name=chainID,proto3" json:"chainID,omitempty"`
	Height               int64    `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"`
	Round                int64    `protobuf:"varint,3,opt,name=round,proto3" json:"round,omitempty"`
	Time                 int64    `protobuf:"varint,4,opt,name=time,proto3" json:"time,omitempty"`
	NumTxs               int64    `protobuf:"varint,5,opt,name=numTxs,proto3" json:"numTxs,omitempty"`
	LastBlockID          *BlockID `protobuf:"bytes,6,opt,name=lastBlockID,proto3" json:"lastBlockID,omitempty"`
	TotalTxs             int64    `protobuf:"varint,7,opt,name=totalTxs,proto3" json:"totalTxs,omitempty"`
	LastCommitHash       []byte   `protobuf:"bytes,8,opt,name=lastCommitHash,proto3" json:"lastCommitHash,omitempty"`
	ValidatorsHash       []byte   `protobuf:"bytes,9,opt,name=validatorsHash,proto3" json:"validatorsHash,omitempty"`
	ConsensusHash        []byte   `protobuf:"bytes,10,opt,name=consensusHash,proto3" json:"consensusHash,omitempty"`
	AppHash              []byte   `protobuf:"bytes,11,opt,name=appHash,proto3" json:"appHash,omitempty"`
	LastResultsHash      []byte   `protobuf:"bytes,12,opt,name=lastResultsHash,proto3" json:"lastResultsHash,omitempty"`
	EvidenceHash         []byte   `protobuf:"bytes,13,opt,name=evidenceHash,proto3" json:"evidenceHash,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_TendermintBlockHeader proto.InternalMessageInfo

func (m *TendermintBlockHeader) GetChainID() string {
	if m != nil {
		return m.ChainID
	}
	return ""
}

func (m *TendermintBlockHeader) GetHeight() int64 {
	if m != nil {
		return m.Height
	}
	return 0
}

func (m *TendermintBlockHeader) GetRound() int64 {
	if m != nil {
		return m.Round
	}
	return 0
}

func (m *TendermintBlockHeader) GetTime() int64 {
	if m != nil {
		return m.Time
	}
	return 0
}

func (m *TendermintBlockHeader) GetNumTxs() int64 {
	if m != nil {
		return m.NumTxs
	}
	return 0
}

func (m *TendermintBlockHeader) GetLastBlockID() *BlockID {
	if m != nil {
		return m.LastBlockID
	}
	return nil
}

func (m *TendermintBlockHeader) GetTotalTxs() int64 {
	if m != nil {
		return m.TotalTxs
	}
	return 0
}

func (m *TendermintBlockHeader) GetLastCommitHash() []byte {
	if m != nil {
		return m.LastCommitHash
	}
	return nil
}

func (m *TendermintBlockHeader) GetValidatorsHash() []byte {
	if m != nil {
		return m.ValidatorsHash
	}
	return nil
}

func (m *TendermintBlockHeader) GetConsensusHash() []byte {
	if m != nil {
		return m.ConsensusHash
	}
	return nil
}

func (m *TendermintBlockHeader) GetAppHash() []byte {
	if m != nil {
		return m.AppHash
	}
	return nil
}

func (m *TendermintBlockHeader) GetLastResultsHash() []byte {
	if m != nil {
		return m.LastResultsHash
	}
	return nil
}

func (m *TendermintBlockHeader) GetEvidenceHash() []byte {
	if m != nil {
		return m.EvidenceHash
	}
	return nil
}

type TendermintBlock struct {
	Header               *TendermintBlockHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
	Txs                  []*types.Transaction   `protobuf:"bytes,2,rep,name=txs,proto3" json:"txs,omitempty"`
	Evidence             *EvidenceData          `protobuf:"bytes,3,opt,name=evidence,proto3" json:"evidence,omitempty"`
	LastCommit           *TendermintCommit      `protobuf:"bytes,4,opt,name=lastCommit,proto3" json:"lastCommit,omitempty"`
	ProposerAddr         []byte                 `protobuf:"bytes,5,opt,name=proposerAddr,proto3" json:"proposerAddr,omitempty"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

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

var xxx_messageInfo_TendermintBlock proto.InternalMessageInfo

func (m *TendermintBlock) GetHeader() *TendermintBlockHeader {
	if m != nil {
		return m.Header
	}
	return nil
}

func (m *TendermintBlock) GetTxs() []*types.Transaction {
	if m != nil {
		return m.Txs
	}
	return nil
}

func (m *TendermintBlock) GetEvidence() *EvidenceData {
	if m != nil {
		return m.Evidence
	}
	return nil
}

func (m *TendermintBlock) GetLastCommit() *TendermintCommit {
	if m != nil {
		return m.LastCommit
	}
	return nil
}

func (m *TendermintBlock) GetProposerAddr() []byte {
	if m != nil {
		return m.ProposerAddr
	}
	return nil
}

type Proposal struct {
	Height               int64    `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
	Round                int32    `protobuf:"varint,2,opt,name=round,proto3" json:"round,omitempty"`
	Timestamp            int64    `protobuf:"varint,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	POLRound             int32    `protobuf:"varint,4,opt,name=POLRound,proto3" json:"POLRound,omitempty"`
	POLBlockID           *BlockID `protobuf:"bytes,5,opt,name=POLBlockID,proto3" json:"POLBlockID,omitempty"`
	Signature            []byte   `protobuf:"bytes,6,opt,name=signature,proto3" json:"signature,omitempty"`
	Blockhash            []byte   `protobuf:"bytes,7,opt,name=blockhash,proto3" json:"blockhash,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_Proposal proto.InternalMessageInfo

func (m *Proposal) GetHeight() int64 {
	if m != nil {
		return m.Height
	}
	return 0
}

func (m *Proposal) GetRound() int32 {
	if m != nil {
		return m.Round
	}
	return 0
}

func (m *Proposal) GetTimestamp() int64 {
	if m != nil {
		return m.Timestamp
	}
	return 0
}

func (m *Proposal) GetPOLRound() int32 {
	if m != nil {
		return m.POLRound
	}
	return 0
}

func (m *Proposal) GetPOLBlockID() *BlockID {
	if m != nil {
		return m.POLBlockID
	}
	return nil
}

func (m *Proposal) GetSignature() []byte {
	if m != nil {
		return m.Signature
	}
	return nil
}

func (m *Proposal) GetBlockhash() []byte {
	if m != nil {
		return m.Blockhash
	}
	return nil
}

type NewRoundStepMsg struct {
	Height                int64    `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
	Round                 int32    `protobuf:"varint,2,opt,name=round,proto3" json:"round,omitempty"`
	Step                  int32    `protobuf:"varint,3,opt,name=step,proto3" json:"step,omitempty"`
	SecondsSinceStartTime int32    `protobuf:"varint,4,opt,name=secondsSinceStartTime,proto3" json:"secondsSinceStartTime,omitempty"`
	LastCommitRound       int32    `protobuf:"varint,5,opt,name=lastCommitRound,proto3" json:"lastCommitRound,omitempty"`
	XXX_NoUnkeyedLiteral  struct{} `json:"-"`
	XXX_unrecognized      []byte   `json:"-"`
	XXX_sizecache         int32    `json:"-"`
}

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

var xxx_messageInfo_NewRoundStepMsg proto.InternalMessageInfo

func (m *NewRoundStepMsg) GetHeight() int64 {
	if m != nil {
		return m.Height
	}
	return 0
}

func (m *NewRoundStepMsg) GetRound() int32 {
	if m != nil {
		return m.Round
	}
	return 0
}

func (m *NewRoundStepMsg) GetStep() int32 {
	if m != nil {
		return m.Step
	}
	return 0
}

func (m *NewRoundStepMsg) GetSecondsSinceStartTime() int32 {
	if m != nil {
		return m.SecondsSinceStartTime
	}
	return 0
}

func (m *NewRoundStepMsg) GetLastCommitRound() int32 {
	if m != nil {
		return m.LastCommitRound
	}
	return 0
}

type CommitStepMsg struct {
	Height               int64    `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_CommitStepMsg proto.InternalMessageInfo

func (m *CommitStepMsg) GetHeight() int64 {
	if m != nil {
		return m.Height
	}
	return 0
}

type ProposalPOLMsg struct {
	Height               int64               `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
	ProposalPOLRound     int32               `protobuf:"varint,2,opt,name=proposalPOLRound,proto3" json:"proposalPOLRound,omitempty"`
	ProposalPOL          *TendermintBitArray `protobuf:"bytes,3,opt,name=proposalPOL,proto3" json:"proposalPOL,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

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

var xxx_messageInfo_ProposalPOLMsg proto.InternalMessageInfo

func (m *ProposalPOLMsg) GetHeight() int64 {
	if m != nil {
		return m.Height
	}
	return 0
}

func (m *ProposalPOLMsg) GetProposalPOLRound() int32 {
	if m != nil {
		return m.ProposalPOLRound
	}
	return 0
}

func (m *ProposalPOLMsg) GetProposalPOL() *TendermintBitArray {
	if m != nil {
		return m.ProposalPOL
	}
	return nil
}

type HasVoteMsg struct {
	Height               int64    `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
	Round                int32    `protobuf:"varint,2,opt,name=round,proto3" json:"round,omitempty"`
	Type                 int32    `protobuf:"varint,3,opt,name=type,proto3" json:"type,omitempty"`
	Index                int32    `protobuf:"varint,4,opt,name=index,proto3" json:"index,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_HasVoteMsg proto.InternalMessageInfo

func (m *HasVoteMsg) GetHeight() int64 {
	if m != nil {
		return m.Height
	}
	return 0
}

func (m *HasVoteMsg) GetRound() int32 {
	if m != nil {
		return m.Round
	}
	return 0
}

func (m *HasVoteMsg) GetType() int32 {
	if m != nil {
		return m.Type
	}
	return 0
}

func (m *HasVoteMsg) GetIndex() int32 {
	if m != nil {
		return m.Index
	}
	return 0
}

type VoteSetMaj23Msg struct {
	Height               int64    `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
	Round                int32    `protobuf:"varint,2,opt,name=round,proto3" json:"round,omitempty"`
	Type                 int32    `protobuf:"varint,3,opt,name=type,proto3" json:"type,omitempty"`
	BlockID              *BlockID `protobuf:"bytes,4,opt,name=blockID,proto3" json:"blockID,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_VoteSetMaj23Msg proto.InternalMessageInfo

func (m *VoteSetMaj23Msg) GetHeight() int64 {
	if m != nil {
		return m.Height
	}
	return 0
}

func (m *VoteSetMaj23Msg) GetRound() int32 {
	if m != nil {
		return m.Round
	}
	return 0
}

func (m *VoteSetMaj23Msg) GetType() int32 {
	if m != nil {
		return m.Type
	}
	return 0
}

func (m *VoteSetMaj23Msg) GetBlockID() *BlockID {
	if m != nil {
		return m.BlockID
	}
	return nil
}

type VoteSetBitsMsg struct {
	Height               int64               `protobuf:"varint,1,opt,name=height,proto3" json:"height,omitempty"`
	Round                int32               `protobuf:"varint,2,opt,name=round,proto3" json:"round,omitempty"`
	Type                 int32               `protobuf:"varint,3,opt,name=type,proto3" json:"type,omitempty"`
	BlockID              *BlockID            `protobuf:"bytes,4,opt,name=blockID,proto3" json:"blockID,omitempty"`
	Votes                *TendermintBitArray `protobuf:"bytes,5,opt,name=votes,proto3" json:"votes,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

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

var xxx_messageInfo_VoteSetBitsMsg proto.InternalMessageInfo

func (m *VoteSetBitsMsg) GetHeight() int64 {
	if m != nil {
		return m.Height
	}
	return 0
}

func (m *VoteSetBitsMsg) GetRound() int32 {
	if m != nil {
		return m.Round
	}
	return 0
}

func (m *VoteSetBitsMsg) GetType() int32 {
	if m != nil {
		return m.Type
	}
	return 0
}

func (m *VoteSetBitsMsg) GetBlockID() *BlockID {
	if m != nil {
		return m.BlockID
	}
	return nil
}

func (m *VoteSetBitsMsg) GetVotes() *TendermintBitArray {
	if m != nil {
		return m.Votes
	}
	return nil
}

type Heartbeat struct {
	ValidatorAddress     []byte   `protobuf:"bytes,1,opt,name=validatorAddress,proto3" json:"validatorAddress,omitempty"`
	ValidatorIndex       int32    `protobuf:"varint,2,opt,name=validatorIndex,proto3" json:"validatorIndex,omitempty"`
	Height               int64    `protobuf:"varint,3,opt,name=height,proto3" json:"height,omitempty"`
	Round                int32    `protobuf:"varint,4,opt,name=round,proto3" json:"round,omitempty"`
	Sequence             int32    `protobuf:"varint,5,opt,name=sequence,proto3" json:"sequence,omitempty"`
	Signature            []byte   `protobuf:"bytes,6,opt,name=signature,proto3" json:"signature,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_Heartbeat proto.InternalMessageInfo

func (m *Heartbeat) GetValidatorAddress() []byte {
	if m != nil {
		return m.ValidatorAddress
	}
	return nil
}

func (m *Heartbeat) GetValidatorIndex() int32 {
	if m != nil {
		return m.ValidatorIndex
	}
	return 0
}

func (m *Heartbeat) GetHeight() int64 {
	if m != nil {
		return m.Height
	}
	return 0
}

func (m *Heartbeat) GetRound() int32 {
	if m != nil {
		return m.Round
	}
	return 0
}

func (m *Heartbeat) GetSequence() int32 {
	if m != nil {
		return m.Sequence
	}
	return 0
}

func (m *Heartbeat) GetSignature() []byte {
	if m != nil {
		return m.Signature
	}
	return nil
}

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

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

var xxx_messageInfo_IsHealthy proto.InternalMessageInfo

func (m *IsHealthy) GetIsHealthy() bool {
	if m != nil {
		return m.IsHealthy
	}
	return false
}

func init() {
	proto.RegisterType((*BlockID)(nil), "types.BlockID")
	proto.RegisterType((*TendermintBitArray)(nil), "types.TendermintBitArray")
	proto.RegisterType((*Vote)(nil), "types.Vote")
	proto.RegisterType((*TendermintCommit)(nil), "types.TendermintCommit")
	proto.RegisterType((*TendermintBlockInfo)(nil), "types.TendermintBlockInfo")
	proto.RegisterType((*BlockSize)(nil), "types.BlockSize")
	proto.RegisterType((*TxSize)(nil), "types.TxSize")
	proto.RegisterType((*BlockGossip)(nil), "types.BlockGossip")
	proto.RegisterType((*EvidenceParams)(nil), "types.EvidenceParams")
	proto.RegisterType((*ConsensusParams)(nil), "types.ConsensusParams")
	proto.RegisterType((*Validator)(nil), "types.Validator")
	proto.RegisterType((*ValidatorSet)(nil), "types.ValidatorSet")
	proto.RegisterType((*State)(nil), "types.State")
	proto.RegisterType((*DuplicateVoteEvidence)(nil), "types.DuplicateVoteEvidence")
	proto.RegisterType((*EvidenceEnvelope)(nil), "types.EvidenceEnvelope")
	proto.RegisterType((*EvidenceData)(nil), "types.EvidenceData")
	proto.RegisterType((*TendermintBlockHeader)(nil), "types.TendermintBlockHeader")
	proto.RegisterType((*TendermintBlock)(nil), "types.TendermintBlock")
	proto.RegisterType((*Proposal)(nil), "types.Proposal")
	proto.RegisterType((*NewRoundStepMsg)(nil), "types.NewRoundStepMsg")
	proto.RegisterType((*CommitStepMsg)(nil), "types.CommitStepMsg")
	proto.RegisterType((*ProposalPOLMsg)(nil), "types.ProposalPOLMsg")
	proto.RegisterType((*HasVoteMsg)(nil), "types.HasVoteMsg")
	proto.RegisterType((*VoteSetMaj23Msg)(nil), "types.VoteSetMaj23Msg")
	proto.RegisterType((*VoteSetBitsMsg)(nil), "types.VoteSetBitsMsg")
	proto.RegisterType((*Heartbeat)(nil), "types.Heartbeat")
	proto.RegisterType((*IsHealthy)(nil), "types.IsHealthy")
}

func init() { proto.RegisterFile("tendermint.proto", fileDescriptor_tendermint_73641ebf19da43cb) }

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