// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.26.0
// 	protoc        v3.17.3
// source: pbft.proto

package types

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type Operation struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Value *Block `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
}

func (x *Operation) Reset() {
	*x = Operation{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Operation) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Operation) ProtoMessage() {}

func (x *Operation) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Operation.ProtoReflect.Descriptor instead.
func (*Operation) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{0}
}

func (x *Operation) GetValue() *Block {
	if x != nil {
		return x.Value
	}
	return nil
}

type Checkpoint struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Sequence uint32 `protobuf:"varint,1,opt,name=sequence,proto3" json:"sequence,omitempty"`
	Digest   []byte `protobuf:"bytes,2,opt,name=digest,proto3" json:"digest,omitempty"`
}

func (x *Checkpoint) Reset() {
	*x = Checkpoint{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Checkpoint) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Checkpoint) ProtoMessage() {}

func (x *Checkpoint) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Checkpoint.ProtoReflect.Descriptor instead.
func (*Checkpoint) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{1}
}

func (x *Checkpoint) GetSequence() uint32 {
	if x != nil {
		return x.Sequence
	}
	return 0
}

func (x *Checkpoint) GetDigest() []byte {
	if x != nil {
		return x.Digest
	}
	return nil
}

type Entry struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Sequence uint32 `protobuf:"varint,1,opt,name=sequence,proto3" json:"sequence,omitempty"`
	Digest   []byte `protobuf:"bytes,2,opt,name=digest,proto3" json:"digest,omitempty"`
	View     uint32 `protobuf:"varint,3,opt,name=view,proto3" json:"view,omitempty"`
}

func (x *Entry) Reset() {
	*x = Entry{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Entry) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Entry) ProtoMessage() {}

func (x *Entry) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Entry.ProtoReflect.Descriptor instead.
func (*Entry) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{2}
}

func (x *Entry) GetSequence() uint32 {
	if x != nil {
		return x.Sequence
	}
	return 0
}

func (x *Entry) GetDigest() []byte {
	if x != nil {
		return x.Digest
	}
	return nil
}

func (x *Entry) GetView() uint32 {
	if x != nil {
		return x.View
	}
	return 0
}

type ViewChange struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Viewchanger uint32 `protobuf:"varint,1,opt,name=viewchanger,proto3" json:"viewchanger,omitempty"`
	Digest      []byte `protobuf:"bytes,2,opt,name=digest,proto3" json:"digest,omitempty"`
}

func (x *ViewChange) Reset() {
	*x = ViewChange{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ViewChange) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ViewChange) ProtoMessage() {}

func (x *ViewChange) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[3]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ViewChange.ProtoReflect.Descriptor instead.
func (*ViewChange) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{3}
}

func (x *ViewChange) GetViewchanger() uint32 {
	if x != nil {
		return x.Viewchanger
	}
	return 0
}

func (x *ViewChange) GetDigest() []byte {
	if x != nil {
		return x.Digest
	}
	return nil
}

type Summary struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Sequence uint32 `protobuf:"varint,1,opt,name=sequence,proto3" json:"sequence,omitempty"`
	Digest   []byte `protobuf:"bytes,2,opt,name=digest,proto3" json:"digest,omitempty"`
}

func (x *Summary) Reset() {
	*x = Summary{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Summary) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Summary) ProtoMessage() {}

func (x *Summary) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[4]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Summary.ProtoReflect.Descriptor instead.
func (*Summary) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{4}
}

func (x *Summary) GetSequence() uint32 {
	if x != nil {
		return x.Sequence
	}
	return 0
}

func (x *Summary) GetDigest() []byte {
	if x != nil {
		return x.Digest
	}
	return nil
}

type Result struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Value *Block `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
}

func (x *Result) Reset() {
	*x = Result{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Result) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Result) ProtoMessage() {}

func (x *Result) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[5]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Result.ProtoReflect.Descriptor instead.
func (*Result) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{5}
}

func (x *Result) GetValue() *Block {
	if x != nil {
		return x.Value
	}
	return nil
}

type Request struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Types that are assignable to Value:
	//	*Request_Client
	//	*Request_Preprepare
	//	*Request_Prepare
	//	*Request_Commit
	//	*Request_Checkpoint
	//	*Request_Viewchange
	//	*Request_Ack
	//	*Request_Newview
	Value isRequest_Value `protobuf_oneof:"value"`
}

func (x *Request) Reset() {
	*x = Request{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Request) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Request) ProtoMessage() {}

func (x *Request) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[6]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Request.ProtoReflect.Descriptor instead.
func (*Request) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{6}
}

func (m *Request) GetValue() isRequest_Value {
	if m != nil {
		return m.Value
	}
	return nil
}

func (x *Request) GetClient() *RequestClient {
	if x, ok := x.GetValue().(*Request_Client); ok {
		return x.Client
	}
	return nil
}

func (x *Request) GetPreprepare() *RequestPrePrepare {
	if x, ok := x.GetValue().(*Request_Preprepare); ok {
		return x.Preprepare
	}
	return nil
}

func (x *Request) GetPrepare() *RequestPrepare {
	if x, ok := x.GetValue().(*Request_Prepare); ok {
		return x.Prepare
	}
	return nil
}

func (x *Request) GetCommit() *RequestCommit {
	if x, ok := x.GetValue().(*Request_Commit); ok {
		return x.Commit
	}
	return nil
}

func (x *Request) GetCheckpoint() *RequestCheckpoint {
	if x, ok := x.GetValue().(*Request_Checkpoint); ok {
		return x.Checkpoint
	}
	return nil
}

func (x *Request) GetViewchange() *RequestViewChange {
	if x, ok := x.GetValue().(*Request_Viewchange); ok {
		return x.Viewchange
	}
	return nil
}

func (x *Request) GetAck() *RequestAck {
	if x, ok := x.GetValue().(*Request_Ack); ok {
		return x.Ack
	}
	return nil
}

func (x *Request) GetNewview() *RequestNewView {
	if x, ok := x.GetValue().(*Request_Newview); ok {
		return x.Newview
	}
	return nil
}

type isRequest_Value interface {
	isRequest_Value()
}

type Request_Client struct {
	Client *RequestClient `protobuf:"bytes,1,opt,name=client,proto3,oneof"`
}

type Request_Preprepare struct {
	Preprepare *RequestPrePrepare `protobuf:"bytes,2,opt,name=preprepare,proto3,oneof"`
}

type Request_Prepare struct {
	Prepare *RequestPrepare `protobuf:"bytes,3,opt,name=prepare,proto3,oneof"`
}

type Request_Commit struct {
	Commit *RequestCommit `protobuf:"bytes,4,opt,name=commit,proto3,oneof"`
}

type Request_Checkpoint struct {
	Checkpoint *RequestCheckpoint `protobuf:"bytes,5,opt,name=checkpoint,proto3,oneof"`
}

type Request_Viewchange struct {
	Viewchange *RequestViewChange `protobuf:"bytes,6,opt,name=viewchange,proto3,oneof"`
}

type Request_Ack struct {
	Ack *RequestAck `protobuf:"bytes,7,opt,name=ack,proto3,oneof"`
}

type Request_Newview struct {
	Newview *RequestNewView `protobuf:"bytes,8,opt,name=newview,proto3,oneof"`
}

func (*Request_Client) isRequest_Value() {}

func (*Request_Preprepare) isRequest_Value() {}

func (*Request_Prepare) isRequest_Value() {}

func (*Request_Commit) isRequest_Value() {}

func (*Request_Checkpoint) isRequest_Value() {}

func (*Request_Viewchange) isRequest_Value() {}

func (*Request_Ack) isRequest_Value() {}

func (*Request_Newview) isRequest_Value() {}

type RequestClient struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Op        *Operation `protobuf:"bytes,1,opt,name=op,proto3" json:"op,omitempty"`
	Timestamp string     `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Client    string     `protobuf:"bytes,3,opt,name=client,proto3" json:"client,omitempty"`
}

func (x *RequestClient) Reset() {
	*x = RequestClient{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RequestClient) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RequestClient) ProtoMessage() {}

func (x *RequestClient) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[7]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RequestClient.ProtoReflect.Descriptor instead.
func (*RequestClient) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{7}
}

func (x *RequestClient) GetOp() *Operation {
	if x != nil {
		return x.Op
	}
	return nil
}

func (x *RequestClient) GetTimestamp() string {
	if x != nil {
		return x.Timestamp
	}
	return ""
}

func (x *RequestClient) GetClient() string {
	if x != nil {
		return x.Client
	}
	return ""
}

type RequestPrePrepare struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	View     uint32 `protobuf:"varint,1,opt,name=view,proto3" json:"view,omitempty"`
	Sequence uint32 `protobuf:"varint,2,opt,name=sequence,proto3" json:"sequence,omitempty"`
	Digest   []byte `protobuf:"bytes,3,opt,name=digest,proto3" json:"digest,omitempty"`
	Replica  uint32 `protobuf:"varint,4,opt,name=replica,proto3" json:"replica,omitempty"`
}

func (x *RequestPrePrepare) Reset() {
	*x = RequestPrePrepare{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RequestPrePrepare) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RequestPrePrepare) ProtoMessage() {}

func (x *RequestPrePrepare) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[8]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RequestPrePrepare.ProtoReflect.Descriptor instead.
func (*RequestPrePrepare) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{8}
}

func (x *RequestPrePrepare) GetView() uint32 {
	if x != nil {
		return x.View
	}
	return 0
}

func (x *RequestPrePrepare) GetSequence() uint32 {
	if x != nil {
		return x.Sequence
	}
	return 0
}

func (x *RequestPrePrepare) GetDigest() []byte {
	if x != nil {
		return x.Digest
	}
	return nil
}

func (x *RequestPrePrepare) GetReplica() uint32 {
	if x != nil {
		return x.Replica
	}
	return 0
}

type RequestPrepare struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	View     uint32 `protobuf:"varint,1,opt,name=view,proto3" json:"view,omitempty"`
	Sequence uint32 `protobuf:"varint,2,opt,name=sequence,proto3" json:"sequence,omitempty"`
	Digest   []byte `protobuf:"bytes,3,opt,name=digest,proto3" json:"digest,omitempty"`
	Replica  uint32 `protobuf:"varint,4,opt,name=replica,proto3" json:"replica,omitempty"`
}

func (x *RequestPrepare) Reset() {
	*x = RequestPrepare{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[9]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RequestPrepare) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RequestPrepare) ProtoMessage() {}

func (x *RequestPrepare) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[9]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RequestPrepare.ProtoReflect.Descriptor instead.
func (*RequestPrepare) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{9}
}

func (x *RequestPrepare) GetView() uint32 {
	if x != nil {
		return x.View
	}
	return 0
}

func (x *RequestPrepare) GetSequence() uint32 {
	if x != nil {
		return x.Sequence
	}
	return 0
}

func (x *RequestPrepare) GetDigest() []byte {
	if x != nil {
		return x.Digest
	}
	return nil
}

func (x *RequestPrepare) GetReplica() uint32 {
	if x != nil {
		return x.Replica
	}
	return 0
}

type RequestCommit struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	View     uint32 `protobuf:"varint,1,opt,name=view,proto3" json:"view,omitempty"`
	Sequence uint32 `protobuf:"varint,2,opt,name=sequence,proto3" json:"sequence,omitempty"`
	Replica  uint32 `protobuf:"varint,3,opt,name=replica,proto3" json:"replica,omitempty"`
}

func (x *RequestCommit) Reset() {
	*x = RequestCommit{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[10]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RequestCommit) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RequestCommit) ProtoMessage() {}

func (x *RequestCommit) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[10]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RequestCommit.ProtoReflect.Descriptor instead.
func (*RequestCommit) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{10}
}

func (x *RequestCommit) GetView() uint32 {
	if x != nil {
		return x.View
	}
	return 0
}

func (x *RequestCommit) GetSequence() uint32 {
	if x != nil {
		return x.Sequence
	}
	return 0
}

func (x *RequestCommit) GetReplica() uint32 {
	if x != nil {
		return x.Replica
	}
	return 0
}

type RequestCheckpoint struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Sequence uint32 `protobuf:"varint,1,opt,name=sequence,proto3" json:"sequence,omitempty"`
	Digest   []byte `protobuf:"bytes,2,opt,name=digest,proto3" json:"digest,omitempty"`
	Replica  uint32 `protobuf:"varint,3,opt,name=replica,proto3" json:"replica,omitempty"`
}

func (x *RequestCheckpoint) Reset() {
	*x = RequestCheckpoint{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[11]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RequestCheckpoint) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RequestCheckpoint) ProtoMessage() {}

func (x *RequestCheckpoint) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[11]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RequestCheckpoint.ProtoReflect.Descriptor instead.
func (*RequestCheckpoint) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{11}
}

func (x *RequestCheckpoint) GetSequence() uint32 {
	if x != nil {
		return x.Sequence
	}
	return 0
}

func (x *RequestCheckpoint) GetDigest() []byte {
	if x != nil {
		return x.Digest
	}
	return nil
}

func (x *RequestCheckpoint) GetReplica() uint32 {
	if x != nil {
		return x.Replica
	}
	return 0
}

type RequestViewChange struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	View        uint32        `protobuf:"varint,1,opt,name=view,proto3" json:"view,omitempty"`
	Sequence    uint32        `protobuf:"varint,2,opt,name=sequence,proto3" json:"sequence,omitempty"`
	Checkpoints []*Checkpoint `protobuf:"bytes,3,rep,name=checkpoints,proto3" json:"checkpoints,omitempty"`
	Preps       []*Entry      `protobuf:"bytes,4,rep,name=preps,proto3" json:"preps,omitempty"`
	Prepreps    []*Entry      `protobuf:"bytes,5,rep,name=prepreps,proto3" json:"prepreps,omitempty"`
	Replica     uint32        `protobuf:"varint,6,opt,name=replica,proto3" json:"replica,omitempty"`
}

func (x *RequestViewChange) Reset() {
	*x = RequestViewChange{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[12]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RequestViewChange) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RequestViewChange) ProtoMessage() {}

func (x *RequestViewChange) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[12]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RequestViewChange.ProtoReflect.Descriptor instead.
func (*RequestViewChange) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{12}
}

func (x *RequestViewChange) GetView() uint32 {
	if x != nil {
		return x.View
	}
	return 0
}

func (x *RequestViewChange) GetSequence() uint32 {
	if x != nil {
		return x.Sequence
	}
	return 0
}

func (x *RequestViewChange) GetCheckpoints() []*Checkpoint {
	if x != nil {
		return x.Checkpoints
	}
	return nil
}

func (x *RequestViewChange) GetPreps() []*Entry {
	if x != nil {
		return x.Preps
	}
	return nil
}

func (x *RequestViewChange) GetPrepreps() []*Entry {
	if x != nil {
		return x.Prepreps
	}
	return nil
}

func (x *RequestViewChange) GetReplica() uint32 {
	if x != nil {
		return x.Replica
	}
	return 0
}

type RequestAck struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	View        uint32 `protobuf:"varint,1,opt,name=view,proto3" json:"view,omitempty"`
	Replica     uint32 `protobuf:"varint,2,opt,name=replica,proto3" json:"replica,omitempty"`
	Viewchanger uint32 `protobuf:"varint,3,opt,name=viewchanger,proto3" json:"viewchanger,omitempty"`
	Digest      []byte `protobuf:"bytes,4,opt,name=digest,proto3" json:"digest,omitempty"`
}

func (x *RequestAck) Reset() {
	*x = RequestAck{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[13]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RequestAck) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RequestAck) ProtoMessage() {}

func (x *RequestAck) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[13]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RequestAck.ProtoReflect.Descriptor instead.
func (*RequestAck) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{13}
}

func (x *RequestAck) GetView() uint32 {
	if x != nil {
		return x.View
	}
	return 0
}

func (x *RequestAck) GetReplica() uint32 {
	if x != nil {
		return x.Replica
	}
	return 0
}

func (x *RequestAck) GetViewchanger() uint32 {
	if x != nil {
		return x.Viewchanger
	}
	return 0
}

func (x *RequestAck) GetDigest() []byte {
	if x != nil {
		return x.Digest
	}
	return nil
}

type RequestNewView struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	View        uint32        `protobuf:"varint,1,opt,name=view,proto3" json:"view,omitempty"`
	Viewchanges []*ViewChange `protobuf:"bytes,2,rep,name=viewchanges,proto3" json:"viewchanges,omitempty"`
	Summaries   []*Summary    `protobuf:"bytes,4,rep,name=summaries,proto3" json:"summaries,omitempty"`
	Replica     uint32        `protobuf:"varint,5,opt,name=replica,proto3" json:"replica,omitempty"`
}

func (x *RequestNewView) Reset() {
	*x = RequestNewView{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[14]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RequestNewView) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RequestNewView) ProtoMessage() {}

func (x *RequestNewView) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[14]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RequestNewView.ProtoReflect.Descriptor instead.
func (*RequestNewView) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{14}
}

func (x *RequestNewView) GetView() uint32 {
	if x != nil {
		return x.View
	}
	return 0
}

func (x *RequestNewView) GetViewchanges() []*ViewChange {
	if x != nil {
		return x.Viewchanges
	}
	return nil
}

func (x *RequestNewView) GetSummaries() []*Summary {
	if x != nil {
		return x.Summaries
	}
	return nil
}

func (x *RequestNewView) GetReplica() uint32 {
	if x != nil {
		return x.Replica
	}
	return 0
}

type ClientReply struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	View      uint32  `protobuf:"varint,1,opt,name=view,proto3" json:"view,omitempty"`
	Timestamp string  `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	Client    string  `protobuf:"bytes,3,opt,name=client,proto3" json:"client,omitempty"`
	Replica   uint32  `protobuf:"varint,4,opt,name=replica,proto3" json:"replica,omitempty"`
	Result    *Result `protobuf:"bytes,5,opt,name=result,proto3" json:"result,omitempty"`
}

func (x *ClientReply) Reset() {
	*x = ClientReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_pbft_proto_msgTypes[15]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ClientReply) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ClientReply) ProtoMessage() {}

func (x *ClientReply) ProtoReflect() protoreflect.Message {
	mi := &file_pbft_proto_msgTypes[15]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ClientReply.ProtoReflect.Descriptor instead.
func (*ClientReply) Descriptor() ([]byte, []int) {
	return file_pbft_proto_rawDescGZIP(), []int{15}
}

func (x *ClientReply) GetView() uint32 {
	if x != nil {
		return x.View
	}
	return 0
}

func (x *ClientReply) GetTimestamp() string {
	if x != nil {
		return x.Timestamp
	}
	return ""
}

func (x *ClientReply) GetClient() string {
	if x != nil {
		return x.Client
	}
	return ""
}

func (x *ClientReply) GetReplica() uint32 {
	if x != nil {
		return x.Replica
	}
	return 0
}

func (x *ClientReply) GetResult() *Result {
	if x != nil {
		return x.Result
	}
	return nil
}

var File_pbft_proto protoreflect.FileDescriptor

var file_pbft_proto_rawDesc = []byte{
	0x0a, 0x0a, 0x70, 0x62, 0x66, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x74, 0x79,
	0x70, 0x65, 0x73, 0x1a, 0x10, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x2e,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x2f, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x0c, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52,
	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x40, 0x0a, 0x0a, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x70,
	0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65,
	0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c,
	0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x22, 0x4f, 0x0a, 0x05, 0x45, 0x6e, 0x74, 0x72,
	0x79, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x16, 0x0a,
	0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x64,
	0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x22, 0x46, 0x0a, 0x0a, 0x56, 0x69, 0x65,
	0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x63,
	0x68, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x76, 0x69,
	0x65, 0x77, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67,
	0x65, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73,
	0x74, 0x22, 0x3d, 0x0a, 0x07, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x1a, 0x0a, 0x08,
	0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08,
	0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65,
	0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74,
	0x22, 0x2c, 0x0a, 0x06, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x22, 0x0a, 0x05, 0x76, 0x61,
	0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x74, 0x79, 0x70, 0x65,
	0x73, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xb3,
	0x03, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x06, 0x63, 0x6c,
	0x69, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x79, 0x70,
	0x65, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74,
	0x48, 0x00, 0x52, 0x06, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x0a, 0x70, 0x72,
	0x65, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18,
	0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72,
	0x65, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x48, 0x00, 0x52, 0x0a, 0x70, 0x72, 0x65, 0x70,
	0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x12, 0x31, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72,
	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x48, 0x00,
	0x52, 0x07, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x12, 0x2e, 0x0a, 0x06, 0x63, 0x6f, 0x6d,
	0x6d, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65,
	0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x48,
	0x00, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x3a, 0x0a, 0x0a, 0x63, 0x68, 0x65,
	0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e,
	0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x68, 0x65,
	0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x63, 0x68, 0x65, 0x63, 0x6b,
	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x63, 0x68, 0x61,
	0x6e, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x74, 0x79, 0x70, 0x65,
	0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x69, 0x65, 0x77, 0x43, 0x68, 0x61,
	0x6e, 0x67, 0x65, 0x48, 0x00, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x63, 0x68, 0x61, 0x6e, 0x67,
	0x65, 0x12, 0x25, 0x0a, 0x03, 0x61, 0x63, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11,
	0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x63,
	0x6b, 0x48, 0x00, 0x52, 0x03, 0x61, 0x63, 0x6b, 0x12, 0x31, 0x0a, 0x07, 0x6e, 0x65, 0x77, 0x76,
	0x69, 0x65, 0x77, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x79, 0x70, 0x65,
	0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x56, 0x69, 0x65, 0x77,
	0x48, 0x00, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x76, 0x69, 0x65, 0x77, 0x42, 0x07, 0x0a, 0x05, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x22, 0x67, 0x0a, 0x0d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43,
	0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x10, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x52, 0x02, 0x6f, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73,
	0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65,
	0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x22, 0x75, 0x0a,
	0x11, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x72, 0x65, 0x50, 0x72, 0x65, 0x70, 0x61,
	0x72, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e,
	0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e,
	0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x0c, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65,
	0x70, 0x6c, 0x69, 0x63, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, 0x70,
	0x6c, 0x69, 0x63, 0x61, 0x22, 0x72, 0x0a, 0x0e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50,
	0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65,
	0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65,
	0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x18,
	0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x22, 0x59, 0x0a, 0x0d, 0x52, 0x65, 0x71, 0x75,
	0x65, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x69, 0x65,
	0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x12, 0x1a, 0x0a,
	0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x70,
	0x6c, 0x69, 0x63, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c,
	0x69, 0x63, 0x61, 0x22, 0x61, 0x0a, 0x11, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x68,
	0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75,
	0x65, 0x6e, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75,
	0x65, 0x6e, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07,
	0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72,
	0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x22, 0xe0, 0x01, 0x0a, 0x11, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x56, 0x69, 0x65, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04,
	0x76, 0x69, 0x65, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77,
	0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x33, 0x0a, 0x0b,
	0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x11, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x70,
	0x6f, 0x69, 0x6e, 0x74, 0x52, 0x0b, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74,
	0x73, 0x12, 0x22, 0x0a, 0x05, 0x70, 0x72, 0x65, 0x70, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x0c, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05,
	0x70, 0x72, 0x65, 0x70, 0x73, 0x12, 0x28, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x70, 0x72, 0x65, 0x70,
	0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e,
	0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x70, 0x72, 0x65, 0x70, 0x72, 0x65, 0x70, 0x73, 0x12,
	0x18, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x22, 0x74, 0x0a, 0x0a, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x41, 0x63, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x12, 0x18, 0x0a, 0x07, 0x72,
	0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65,
	0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x63, 0x68, 0x61,
	0x6e, 0x67, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x76, 0x69, 0x65, 0x77,
	0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73,
	0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x22,
	0xa1, 0x01, 0x0a, 0x0e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x56, 0x69,
	0x65, 0x77, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x12, 0x33, 0x0a, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x63, 0x68,
	0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x74, 0x79,
	0x70, 0x65, 0x73, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0b,
	0x76, 0x69, 0x65, 0x77, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x09, 0x73,
	0x75, 0x6d, 0x6d, 0x61, 0x72, 0x69, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e,
	0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x09,
	0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x69, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x70,
	0x6c, 0x69, 0x63, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c,
	0x69, 0x63, 0x61, 0x22, 0x98, 0x01, 0x0a, 0x0b, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65,
	0x70, 0x6c, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0d, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73,
	0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65,
	0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a,
	0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07,
	0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c,
	0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e,
	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x42, 0x1f,
	0x5a, 0x1d, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x33, 0x33, 0x63,
	0x6e, 0x2f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x33, 0x33, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x62,
	0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_pbft_proto_rawDescOnce sync.Once
	file_pbft_proto_rawDescData = file_pbft_proto_rawDesc
)

func file_pbft_proto_rawDescGZIP() []byte {
	file_pbft_proto_rawDescOnce.Do(func() {
		file_pbft_proto_rawDescData = protoimpl.X.CompressGZIP(file_pbft_proto_rawDescData)
	})
	return file_pbft_proto_rawDescData
}

var file_pbft_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
var file_pbft_proto_goTypes = []interface{}{
	(*Operation)(nil),         // 0: types.Operation
	(*Checkpoint)(nil),        // 1: types.Checkpoint
	(*Entry)(nil),             // 2: types.Entry
	(*ViewChange)(nil),        // 3: types.ViewChange
	(*Summary)(nil),           // 4: types.Summary
	(*Result)(nil),            // 5: types.Result
	(*Request)(nil),           // 6: types.Request
	(*RequestClient)(nil),     // 7: types.RequestClient
	(*RequestPrePrepare)(nil), // 8: types.RequestPrePrepare
	(*RequestPrepare)(nil),    // 9: types.RequestPrepare
	(*RequestCommit)(nil),     // 10: types.RequestCommit
	(*RequestCheckpoint)(nil), // 11: types.RequestCheckpoint
	(*RequestViewChange)(nil), // 12: types.RequestViewChange
	(*RequestAck)(nil),        // 13: types.RequestAck
	(*RequestNewView)(nil),    // 14: types.RequestNewView
	(*ClientReply)(nil),       // 15: types.ClientReply
	(*Block)(nil),             // 16: types.Block
}
var file_pbft_proto_depIdxs = []int32{
	16, // 0: types.Operation.value:type_name -> types.Block
	16, // 1: types.Result.value:type_name -> types.Block
	7,  // 2: types.Request.client:type_name -> types.RequestClient
	8,  // 3: types.Request.preprepare:type_name -> types.RequestPrePrepare
	9,  // 4: types.Request.prepare:type_name -> types.RequestPrepare
	10, // 5: types.Request.commit:type_name -> types.RequestCommit
	11, // 6: types.Request.checkpoint:type_name -> types.RequestCheckpoint
	12, // 7: types.Request.viewchange:type_name -> types.RequestViewChange
	13, // 8: types.Request.ack:type_name -> types.RequestAck
	14, // 9: types.Request.newview:type_name -> types.RequestNewView
	0,  // 10: types.RequestClient.op:type_name -> types.Operation
	1,  // 11: types.RequestViewChange.checkpoints:type_name -> types.Checkpoint
	2,  // 12: types.RequestViewChange.preps:type_name -> types.Entry
	2,  // 13: types.RequestViewChange.prepreps:type_name -> types.Entry
	3,  // 14: types.RequestNewView.viewchanges:type_name -> types.ViewChange
	4,  // 15: types.RequestNewView.summaries:type_name -> types.Summary
	5,  // 16: types.ClientReply.result:type_name -> types.Result
	17, // [17:17] is the sub-list for method output_type
	17, // [17:17] is the sub-list for method input_type
	17, // [17:17] is the sub-list for extension type_name
	17, // [17:17] is the sub-list for extension extendee
	0,  // [0:17] is the sub-list for field type_name
}

func init() { file_pbft_proto_init() }
func file_pbft_proto_init() {
	if File_pbft_proto != nil {
		return
	}
	file_blockchain_proto_init()
	if !protoimpl.UnsafeEnabled {
		file_pbft_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Operation); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Checkpoint); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Entry); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ViewChange); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Summary); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Result); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Request); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RequestClient); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RequestPrePrepare); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RequestPrepare); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RequestCommit); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RequestCheckpoint); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RequestViewChange); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RequestAck); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RequestNewView); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_pbft_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ClientReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_pbft_proto_msgTypes[6].OneofWrappers = []interface{}{
		(*Request_Client)(nil),
		(*Request_Preprepare)(nil),
		(*Request_Prepare)(nil),
		(*Request_Commit)(nil),
		(*Request_Checkpoint)(nil),
		(*Request_Viewchange)(nil),
		(*Request_Ack)(nil),
		(*Request_Newview)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_pbft_proto_rawDesc,
			NumEnums:      0,
			NumMessages:   16,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_pbft_proto_goTypes,
		DependencyIndexes: file_pbft_proto_depIdxs,
		MessageInfos:      file_pbft_proto_msgTypes,
	}.Build()
	File_pbft_proto = out.File
	file_pbft_proto_rawDesc = nil
	file_pbft_proto_goTypes = nil
	file_pbft_proto_depIdxs = nil
}
