Browse Source

Merge pull request #254 from tendermint/bucky/genesi

include genesis file structure
pull/1780/head
Ethan Buchman 7 years ago
committed by GitHub
parent
commit
0e02e45ac7
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 190 additions and 149 deletions
  1. +5
    -1
      CHANGELOG.md
  2. +1
    -2
      example/kvstore/helpers.go
  3. +1
    -2
      tests/server/client.go
  4. +172
    -137
      types/types.pb.go
  5. +11
    -7
      types/types.proto

+ 5
- 1
CHANGELOG.md View File

@ -1,12 +1,16 @@
# Changelog # Changelog
## 0.10.4 (TBD)
## 0.11.0
*TBD*
BREAKING CHANGES: BREAKING CHANGES:
- [types] Added `type` field to `Evidence` (opaque bytes indicating kind of fraud) - [types] Added `type` field to `Evidence` (opaque bytes indicating kind of fraud)
- [types] Added `time` field to `Evidence` (note that this is the timestamp of the block which was double-signed, not the time the evidence was received) - [types] Added `time` field to `Evidence` (note that this is the timestamp of the block which was double-signed, not the time the evidence was received)
TODO
## 0.10.3 (April 9, 2018) ## 0.10.3 (April 9, 2018)
IMPROVEMENTS: IMPROVEMENTS:


+ 1
- 2
example/kvstore/helpers.go View File

@ -33,7 +33,6 @@ func RandVals(cnt int) []types.Validator {
// don't make any tx that modify the validator state // don't make any tx that modify the validator state
func InitKVStore(app *PersistentKVStoreApplication) { func InitKVStore(app *PersistentKVStoreApplication) {
app.InitChain(types.RequestInitChain{ app.InitChain(types.RequestInitChain{
Validators: RandVals(1),
GenesisBytes: []byte("[]"),
Validators: RandVals(1),
}) })
} }

+ 1
- 2
tests/server/client.go View File

@ -19,8 +19,7 @@ func InitChain(client abcicli.Client) error {
vals[i] = types.Ed25519Validator(pubkey, int64(power)) vals[i] = types.Ed25519Validator(pubkey, int64(power))
} }
_, err := client.InitChainSync(types.RequestInitChain{ _, err := client.InitChainSync(types.RequestInitChain{
Validators: vals,
GenesisBytes: []byte("{}"),
Validators: vals,
}) })
if err != nil { if err != nil {
fmt.Printf("Failed test: InitChain - %v\n", err) fmt.Printf("Failed test: InitChain - %v\n", err)


+ 172
- 137
types/types.pb.go View File

@ -532,8 +532,11 @@ func (m *RequestSetOption) GetValue() string {
} }
type RequestInitChain struct { type RequestInitChain struct {
Validators []Validator `protobuf:"bytes,1,rep,name=validators" json:"validators"`
GenesisBytes []byte `protobuf:"bytes,2,opt,name=genesis_bytes,json=genesisBytes,proto3" json:"genesis_bytes,omitempty"`
Time int64 `protobuf:"varint,1,opt,name=time,proto3" json:"time,omitempty"`
ChainId string `protobuf:"bytes,2,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"`
ConsensusParams *ConsensusParams `protobuf:"bytes,3,opt,name=consensus_params,json=consensusParams" json:"consensus_params,omitempty"`
Validators []Validator `protobuf:"bytes,4,rep,name=validators" json:"validators"`
AppStateBytes []byte `protobuf:"bytes,5,opt,name=app_state_bytes,json=appStateBytes,proto3" json:"app_state_bytes,omitempty"`
} }
func (m *RequestInitChain) Reset() { *m = RequestInitChain{} } func (m *RequestInitChain) Reset() { *m = RequestInitChain{} }
@ -541,6 +544,27 @@ func (m *RequestInitChain) String() string { return proto.CompactText
func (*RequestInitChain) ProtoMessage() {} func (*RequestInitChain) ProtoMessage() {}
func (*RequestInitChain) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{5} } func (*RequestInitChain) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{5} }
func (m *RequestInitChain) GetTime() int64 {
if m != nil {
return m.Time
}
return 0
}
func (m *RequestInitChain) GetChainId() string {
if m != nil {
return m.ChainId
}
return ""
}
func (m *RequestInitChain) GetConsensusParams() *ConsensusParams {
if m != nil {
return m.ConsensusParams
}
return nil
}
func (m *RequestInitChain) GetValidators() []Validator { func (m *RequestInitChain) GetValidators() []Validator {
if m != nil { if m != nil {
return m.Validators return m.Validators
@ -548,9 +572,9 @@ func (m *RequestInitChain) GetValidators() []Validator {
return nil return nil
} }
func (m *RequestInitChain) GetGenesisBytes() []byte {
func (m *RequestInitChain) GetAppStateBytes() []byte {
if m != nil { if m != nil {
return m.GenesisBytes
return m.AppStateBytes
} }
return nil return nil
} }
@ -596,10 +620,10 @@ func (m *RequestQuery) GetProve() bool {
} }
type RequestBeginBlock struct { type RequestBeginBlock struct {
Hash []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
Header Header `protobuf:"bytes,2,opt,name=header" json:"header"`
Validators []*SigningValidator `protobuf:"bytes,3,rep,name=validators" json:"validators,omitempty"`
ByzantineValidators []Evidence `protobuf:"bytes,4,rep,name=byzantine_validators,json=byzantineValidators" json:"byzantine_validators"`
Hash []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
Header Header `protobuf:"bytes,2,opt,name=header" json:"header"`
Validators []SigningValidator `protobuf:"bytes,3,rep,name=validators" json:"validators"`
ByzantineValidators []Evidence `protobuf:"bytes,4,rep,name=byzantine_validators,json=byzantineValidators" json:"byzantine_validators"`
} }
func (m *RequestBeginBlock) Reset() { *m = RequestBeginBlock{} } func (m *RequestBeginBlock) Reset() { *m = RequestBeginBlock{} }
@ -621,7 +645,7 @@ func (m *RequestBeginBlock) GetHeader() Header {
return Header{} return Header{}
} }
func (m *RequestBeginBlock) GetValidators() []*SigningValidator {
func (m *RequestBeginBlock) GetValidators() []SigningValidator {
if m != nil { if m != nil {
return m.Validators return m.Validators
} }
@ -1238,7 +1262,8 @@ func (m *ResponseSetOption) GetInfo() string {
} }
type ResponseInitChain struct { type ResponseInitChain struct {
Validators []Validator `protobuf:"bytes,1,rep,name=validators" json:"validators"`
ConsensusParams *ConsensusParams `protobuf:"bytes,1,opt,name=consensus_params,json=consensusParams" json:"consensus_params,omitempty"`
Validators []Validator `protobuf:"bytes,2,rep,name=validators" json:"validators"`
} }
func (m *ResponseInitChain) Reset() { *m = ResponseInitChain{} } func (m *ResponseInitChain) Reset() { *m = ResponseInitChain{} }
@ -1246,6 +1271,13 @@ func (m *ResponseInitChain) String() string { return proto.CompactTex
func (*ResponseInitChain) ProtoMessage() {} func (*ResponseInitChain) ProtoMessage() {}
func (*ResponseInitChain) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{18} } func (*ResponseInitChain) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{18} }
func (m *ResponseInitChain) GetConsensusParams() *ConsensusParams {
if m != nil {
return m.ConsensusParams
}
return nil
}
func (m *ResponseInitChain) GetValidators() []Validator { func (m *ResponseInitChain) GetValidators() []Validator {
if m != nil { if m != nil {
return m.Validators return m.Validators
@ -1659,7 +1691,7 @@ type Header struct {
LastBlockHash []byte `protobuf:"bytes,6,opt,name=last_block_hash,json=lastBlockHash,proto3" json:"last_block_hash,omitempty"` LastBlockHash []byte `protobuf:"bytes,6,opt,name=last_block_hash,json=lastBlockHash,proto3" json:"last_block_hash,omitempty"`
AppHash []byte `protobuf:"bytes,7,opt,name=app_hash,json=appHash,proto3" json:"app_hash,omitempty"` AppHash []byte `protobuf:"bytes,7,opt,name=app_hash,json=appHash,proto3" json:"app_hash,omitempty"`
// consensus // consensus
Proposer *Validator `protobuf:"bytes,8,opt,name=proposer" json:"proposer,omitempty"`
Proposer Validator `protobuf:"bytes,8,opt,name=proposer" json:"proposer"`
} }
func (m *Header) Reset() { *m = Header{} } func (m *Header) Reset() { *m = Header{} }
@ -1716,11 +1748,11 @@ func (m *Header) GetAppHash() []byte {
return nil return nil
} }
func (m *Header) GetProposer() *Validator {
func (m *Header) GetProposer() Validator {
if m != nil { if m != nil {
return m.Proposer return m.Proposer
} }
return nil
return Validator{}
} }
// Validator // Validator
@ -1758,8 +1790,8 @@ func (m *Validator) GetPower() int64 {
// Validator with an extra bool // Validator with an extra bool
type SigningValidator struct { type SigningValidator struct {
Validator *Validator `protobuf:"bytes,1,opt,name=validator" json:"validator,omitempty"`
SignedLastBlock bool `protobuf:"varint,2,opt,name=signed_last_block,json=signedLastBlock,proto3" json:"signed_last_block,omitempty"`
Validator Validator `protobuf:"bytes,1,opt,name=validator" json:"validator"`
SignedLastBlock bool `protobuf:"varint,2,opt,name=signed_last_block,json=signedLastBlock,proto3" json:"signed_last_block,omitempty"`
} }
func (m *SigningValidator) Reset() { *m = SigningValidator{} } func (m *SigningValidator) Reset() { *m = SigningValidator{} }
@ -1767,11 +1799,11 @@ func (m *SigningValidator) String() string { return proto.CompactText
func (*SigningValidator) ProtoMessage() {} func (*SigningValidator) ProtoMessage() {}
func (*SigningValidator) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{31} } func (*SigningValidator) Descriptor() ([]byte, []int) { return fileDescriptorTypes, []int{31} }
func (m *SigningValidator) GetValidator() *Validator {
func (m *SigningValidator) GetValidator() Validator {
if m != nil { if m != nil {
return m.Validator return m.Validator
} }
return nil
return Validator{}
} }
func (m *SigningValidator) GetSignedLastBlock() bool { func (m *SigningValidator) GetSignedLastBlock() bool {
@ -1806,11 +1838,11 @@ func (m *PubKey) GetData() []byte {
} }
type Evidence struct { type Evidence struct {
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
Validator *Validator `protobuf:"bytes,2,opt,name=validator" json:"validator,omitempty"`
Height int64 `protobuf:"varint,3,opt,name=height,proto3" json:"height,omitempty"`
Time int64 `protobuf:"varint,4,opt,name=time,proto3" json:"time,omitempty"`
TotalVotingPower int64 `protobuf:"varint,5,opt,name=total_voting_power,json=totalVotingPower,proto3" json:"total_voting_power,omitempty"`
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
Validator Validator `protobuf:"bytes,2,opt,name=validator" json:"validator"`
Height int64 `protobuf:"varint,3,opt,name=height,proto3" json:"height,omitempty"`
Time int64 `protobuf:"varint,4,opt,name=time,proto3" json:"time,omitempty"`
TotalVotingPower int64 `protobuf:"varint,5,opt,name=total_voting_power,json=totalVotingPower,proto3" json:"total_voting_power,omitempty"`
} }
func (m *Evidence) Reset() { *m = Evidence{} } func (m *Evidence) Reset() { *m = Evidence{} }
@ -1825,11 +1857,11 @@ func (m *Evidence) GetType() string {
return "" return ""
} }
func (m *Evidence) GetValidator() *Validator {
func (m *Evidence) GetValidator() Validator {
if m != nil { if m != nil {
return m.Validator return m.Validator
} }
return nil
return Validator{}
} }
func (m *Evidence) GetHeight() int64 { func (m *Evidence) GetHeight() int64 {
@ -2295,117 +2327,120 @@ var _ABCIApplication_serviceDesc = grpc.ServiceDesc{
func init() { proto.RegisterFile("types/types.proto", fileDescriptorTypes) } func init() { proto.RegisterFile("types/types.proto", fileDescriptorTypes) }
var fileDescriptorTypes = []byte{ var fileDescriptorTypes = []byte{
// 1789 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x58, 0x4b, 0x73, 0x1c, 0x49,
0x11, 0xd6, 0xbc, 0xa7, 0x53, 0x4f, 0x97, 0xfc, 0x18, 0xcf, 0x06, 0x61, 0x47, 0x43, 0x18, 0x99,
0xd5, 0x6a, 0x40, 0x8b, 0x8d, 0xbd, 0x4b, 0x6c, 0x20, 0x69, 0xcd, 0x8e, 0xc2, 0x3c, 0x44, 0xdb,
0x6b, 0x22, 0xb8, 0x4c, 0xd4, 0x4c, 0x97, 0x7a, 0x2a, 0x3c, 0xd3, 0xdd, 0xdb, 0x55, 0xa3, 0x9d,
0xf1, 0x8d, 0xe0, 0xba, 0x77, 0xce, 0xdc, 0xf8, 0x03, 0xfc, 0x05, 0x82, 0x7f, 0xc0, 0xcd, 0x07,
0xb8, 0xf1, 0x27, 0x20, 0x32, 0xab, 0xdf, 0xea, 0x59, 0x16, 0x73, 0xdc, 0x8b, 0x54, 0x59, 0x99,
0x59, 0x9d, 0x99, 0x93, 0xf9, 0x65, 0x56, 0xc1, 0x0d, 0xbd, 0x0a, 0x85, 0x1a, 0xd0, 0xdf, 0xa3,
0x30, 0x0a, 0x74, 0xc0, 0x5a, 0x44, 0xf4, 0x3f, 0xf0, 0xa4, 0x9e, 0x2e, 0xc6, 0x47, 0x93, 0x60,
0x3e, 0xf0, 0x02, 0x2f, 0x18, 0x10, 0x77, 0xbc, 0xb8, 0x24, 0x8a, 0x08, 0x5a, 0x19, 0xad, 0xfe,
0x20, 0x27, 0xae, 0x85, 0xef, 0x8a, 0x68, 0x2e, 0x7d, 0x3d, 0xd0, 0xf3, 0x99, 0x1c, 0xab, 0xc1,
0x24, 0x98, 0xcf, 0x03, 0x3f, 0xff, 0x19, 0xfb, 0xaf, 0x4d, 0xe8, 0x38, 0xe2, 0x8b, 0x85, 0x50,
0x9a, 0x1d, 0x40, 0x53, 0x4c, 0xa6, 0x41, 0xaf, 0x7e, 0xbf, 0x76, 0xb0, 0x79, 0xcc, 0x8e, 0x8c,
0x5c, 0xcc, 0x7d, 0x36, 0x99, 0x06, 0xc3, 0x0d, 0x87, 0x24, 0xd8, 0xfb, 0xd0, 0xba, 0x9c, 0x2d,
0xd4, 0xb4, 0xd7, 0x20, 0xd1, 0xfd, 0xa2, 0xe8, 0xcf, 0x91, 0x35, 0xdc, 0x70, 0x8c, 0x0c, 0x1e,
0x2b, 0xfd, 0xcb, 0xa0, 0xd7, 0xac, 0x3a, 0xf6, 0xdc, 0xbf, 0xa4, 0x63, 0x51, 0x82, 0x3d, 0x01,
0x50, 0x42, 0x8f, 0x82, 0x50, 0xcb, 0xc0, 0xef, 0xb5, 0x48, 0xfe, 0x4e, 0x51, 0xfe, 0x85, 0xd0,
0xbf, 0x26, 0xf6, 0x70, 0xc3, 0xb1, 0x54, 0x42, 0xa0, 0xa6, 0xf4, 0xa5, 0x1e, 0x4d, 0xa6, 0x5c,
0xfa, 0xbd, 0x76, 0x95, 0xe6, 0xb9, 0x2f, 0xf5, 0x19, 0xb2, 0x51, 0x53, 0x26, 0x04, 0xba, 0xf2,
0xc5, 0x42, 0x44, 0xab, 0x5e, 0xa7, 0xca, 0x95, 0xdf, 0x20, 0x0b, 0x5d, 0x21, 0x19, 0xf6, 0x31,
0x6c, 0x8e, 0x85, 0x27, 0xfd, 0xd1, 0x78, 0x16, 0x4c, 0x5e, 0xf7, 0xba, 0xa4, 0xd2, 0x2b, 0xaa,
0x9c, 0xa2, 0xc0, 0x29, 0xf2, 0x87, 0x1b, 0x0e, 0x8c, 0x53, 0x8a, 0x1d, 0x43, 0x77, 0x32, 0x15,
0x93, 0xd7, 0x23, 0xbd, 0xec, 0x59, 0xa4, 0x79, 0xab, 0xa8, 0x79, 0x86, 0xdc, 0x97, 0xcb, 0xe1,
0x86, 0xd3, 0x99, 0x98, 0x25, 0xfa, 0xe5, 0x8a, 0x99, 0xbc, 0x12, 0x11, 0x6a, 0xed, 0x57, 0xf9,
0xf5, 0xa9, 0xe1, 0x93, 0x9e, 0xe5, 0x26, 0x04, 0x7b, 0x04, 0x96, 0xf0, 0xdd, 0xd8, 0xd0, 0x4d,
0x52, 0xbc, 0x5d, 0xfa, 0x45, 0x7d, 0x37, 0x31, 0xb3, 0x2b, 0xe2, 0x35, 0x3b, 0x82, 0x36, 0x66,
0x89, 0xd4, 0xbd, 0x2d, 0xd2, 0xb9, 0x59, 0x32, 0x91, 0x78, 0xc3, 0x0d, 0x27, 0x96, 0x3a, 0xed,
0x40, 0xeb, 0x8a, 0xcf, 0x16, 0xc2, 0xfe, 0x3e, 0x6c, 0xe6, 0x32, 0x85, 0xf5, 0xa0, 0x33, 0x17,
0x4a, 0x71, 0x4f, 0xf4, 0x6a, 0xf7, 0x6b, 0x07, 0x96, 0x93, 0x90, 0xf6, 0x0e, 0x6c, 0xe5, 0xf3,
0x24, 0xa7, 0x88, 0xb9, 0x80, 0x8a, 0x57, 0x22, 0x52, 0x98, 0x00, 0xb1, 0x62, 0x4c, 0xda, 0x1f,
0xc1, 0x5e, 0x39, 0x09, 0xd8, 0x1e, 0x34, 0x5e, 0x8b, 0x55, 0x2c, 0x89, 0x4b, 0x76, 0x33, 0x36,
0x88, 0xb2, 0xd8, 0x72, 0x62, 0xeb, 0x82, 0x54, 0x37, 0x4d, 0x03, 0xf6, 0x18, 0xe0, 0x8a, 0xcf,
0xa4, 0xcb, 0x75, 0x10, 0xa9, 0x5e, 0xed, 0x7e, 0xe3, 0x60, 0xf3, 0x78, 0x2f, 0x76, 0xf7, 0x55,
0xc2, 0x38, 0x6d, 0xfe, 0xed, 0xed, 0xbd, 0x0d, 0x27, 0x27, 0xc9, 0xbe, 0x0b, 0xdb, 0x9e, 0xf0,
0x85, 0x92, 0x6a, 0x34, 0x5e, 0x69, 0xa1, 0xe8, 0x4b, 0x5b, 0xce, 0x56, 0xbc, 0x79, 0x8a, 0x7b,
0xb6, 0x9b, 0x7a, 0x49, 0x29, 0xc4, 0x18, 0x34, 0x5d, 0xae, 0x39, 0x59, 0xba, 0xe5, 0xd0, 0x1a,
0xf7, 0x42, 0xae, 0xa7, 0xb1, 0xa5, 0xb4, 0x66, 0xb7, 0xa1, 0x3d, 0x15, 0xd2, 0x9b, 0x6a, 0x2a,
0xad, 0x86, 0x13, 0x53, 0xe8, 0x56, 0x18, 0x05, 0x57, 0x82, 0xaa, 0xa8, 0xeb, 0x18, 0xc2, 0xfe,
0x7b, 0x0d, 0x6e, 0x5c, 0x4b, 0x3b, 0x3c, 0x77, 0xca, 0xd5, 0x34, 0xf9, 0x16, 0xae, 0xd9, 0xfb,
0x78, 0x2e, 0x77, 0x45, 0x14, 0x57, 0xf7, 0x76, 0xec, 0xe8, 0x90, 0x36, 0x63, 0x2f, 0x63, 0x11,
0xf6, 0x93, 0x42, 0x64, 0x1a, 0x14, 0x99, 0x24, 0xeb, 0x5e, 0x48, 0xcf, 0x97, 0xbe, 0x97, 0x06,
0xa8, 0x10, 0x9a, 0x21, 0xdc, 0x1c, 0xaf, 0xde, 0x70, 0x5f, 0x4b, 0x5f, 0x8c, 0x72, 0x47, 0x34,
0xe9, 0x88, 0xdd, 0xf8, 0x88, 0x67, 0x57, 0xd2, 0x15, 0xfe, 0x44, 0xc4, 0x5f, 0xdd, 0x4f, 0x55,
0xd2, 0x43, 0x95, 0x7d, 0x1f, 0x76, 0x8a, 0x55, 0xc1, 0x76, 0xa0, 0xae, 0x97, 0xb1, 0x4f, 0x75,
0xbd, 0xb4, 0xed, 0xf4, 0x27, 0x4d, 0x2b, 0xe0, 0x9a, 0xcc, 0x43, 0xd8, 0x2d, 0x25, 0x7b, 0x2e,
0xc0, 0xb5, 0x7c, 0x80, 0xed, 0x5d, 0xd8, 0x2e, 0xe4, 0xb8, 0xfd, 0x55, 0x0b, 0xba, 0x8e, 0x50,
0x61, 0xe0, 0x2b, 0xc1, 0x9e, 0x80, 0x25, 0x96, 0x13, 0x61, 0x80, 0xa9, 0x56, 0x2a, 0x7b, 0x23,
0xf3, 0x2c, 0xe1, 0x63, 0x1d, 0xa6, 0xc2, 0xec, 0x61, 0x01, 0x54, 0xf7, 0xcb, 0x4a, 0x79, 0x54,
0x3d, 0x2c, 0xa2, 0xea, 0xcd, 0x92, 0x6c, 0x09, 0x56, 0x1f, 0x16, 0x60, 0xb5, 0x7c, 0x70, 0x01,
0x57, 0x9f, 0x56, 0xe0, 0x6a, 0xd9, 0xfc, 0x35, 0xc0, 0xfa, 0xb4, 0x02, 0x58, 0x7b, 0xd7, 0xbe,
0x55, 0x89, 0xac, 0x87, 0x45, 0x64, 0x2d, 0xbb, 0x53, 0x82, 0xd6, 0x9f, 0x56, 0x41, 0xeb, 0xdd,
0x92, 0xce, 0x5a, 0x6c, 0xfd, 0xf0, 0x1a, 0xb6, 0xde, 0x2e, 0xa9, 0x56, 0x80, 0xeb, 0xd3, 0x02,
0xb8, 0x42, 0xa5, 0x6f, 0x6b, 0xd0, 0xf5, 0xf1, 0x75, 0x74, 0xbd, 0x53, 0xfe, 0x69, 0xab, 0xe0,
0x75, 0x50, 0x82, 0xd7, 0x5b, 0x65, 0x2b, 0xd7, 0xe2, 0xeb, 0x43, 0xac, 0xf4, 0x52, 0xa6, 0x21,
0x2a, 0x88, 0x28, 0x0a, 0xa2, 0x18, 0x00, 0x0d, 0x61, 0x1f, 0x20, 0xf6, 0x64, 0xf9, 0xf5, 0x35,
0x58, 0x4c, 0x49, 0x9f, 0xcb, 0x2e, 0xfb, 0x8f, 0xb5, 0x4c, 0x97, 0xe0, 0x38, 0x8f, 0x5b, 0x56,
0x8c, 0x5b, 0x39, 0x88, 0xae, 0x17, 0x20, 0x9a, 0xfd, 0x00, 0x6e, 0xcc, 0xb8, 0xd2, 0x26, 0x2e,
0xa3, 0x02, 0x90, 0xed, 0x22, 0xc3, 0x04, 0xc4, 0x20, 0xda, 0x07, 0xb0, 0x9f, 0x93, 0xe5, 0x61,
0x38, 0x22, 0xd0, 0x6a, 0x52, 0xf1, 0xee, 0xa5, 0xd2, 0x27, 0x61, 0x38, 0xe4, 0x6a, 0x6a, 0xff,
0x32, 0xf3, 0x3f, 0x83, 0x7f, 0x06, 0xcd, 0x49, 0xe0, 0x1a, 0xb7, 0xb6, 0x1d, 0x5a, 0x63, 0x4b,
0x98, 0x05, 0x1e, 0x7d, 0xd5, 0x72, 0x70, 0x89, 0x52, 0x69, 0xa5, 0x58, 0xa6, 0x24, 0xec, 0xe7,
0xd9, 0x71, 0xff, 0x77, 0x47, 0xb0, 0xff, 0x52, 0xcb, 0xe2, 0x98, 0xc2, 0xfd, 0xbb, 0x19, 0x86,
0x3f, 0xa9, 0xf4, 0x5d, 0xb1, 0xa4, 0x32, 0x6d, 0x38, 0x86, 0x48, 0xfa, 0x5c, 0x9b, 0x82, 0x53,
0xec, 0x73, 0x1d, 0xda, 0x33, 0x44, 0xdc, 0x26, 0x82, 0x4b, 0xaa, 0x9f, 0x2d, 0xc7, 0x10, 0x39,
0xcc, 0xb3, 0x0a, 0x98, 0x77, 0x01, 0xec, 0x7a, 0x65, 0xb1, 0x8f, 0xa0, 0xa9, 0xb9, 0x97, 0xf8,
0xbf, 0x73, 0x64, 0xa6, 0xc6, 0xa3, 0xe7, 0xaf, 0x2e, 0xb8, 0x8c, 0x4e, 0x6f, 0xa3, 0xf7, 0xff,
0x7a, 0x7b, 0x6f, 0x07, 0x65, 0x0e, 0x83, 0xb9, 0xd4, 0x62, 0x1e, 0xea, 0x95, 0x43, 0x3a, 0xf6,
0xbf, 0x6b, 0x88, 0xb8, 0x85, 0x8a, 0xab, 0x8c, 0x45, 0x92, 0x56, 0xf5, 0x5c, 0x3b, 0xfc, 0x66,
0xf1, 0xf9, 0x0e, 0x80, 0xc7, 0xd5, 0xe8, 0x4b, 0xee, 0x6b, 0xe1, 0xc6, 0x41, 0xb2, 0x3c, 0xae,
0x7e, 0x4b, 0x1b, 0xec, 0x2e, 0x74, 0x91, 0xbd, 0x50, 0xc2, 0xa5, 0x68, 0x35, 0x9c, 0x8e, 0xc7,
0xd5, 0xe7, 0x4a, 0xb8, 0xa9, 0x5f, 0x9d, 0xff, 0xdd, 0x2f, 0x76, 0x00, 0x8d, 0x4b, 0x21, 0x62,
0x54, 0xda, 0x4b, 0x55, 0xcf, 0x1f, 0xff, 0x98, 0x94, 0x4d, 0x4a, 0xa0, 0x88, 0xfd, 0xfb, 0x7a,
0x96, 0x59, 0x59, 0x63, 0xfa, 0x76, 0xc5, 0xe0, 0x9f, 0x35, 0xec, 0xcd, 0x45, 0x18, 0x64, 0x67,
0x70, 0x23, 0x2d, 0x99, 0xd1, 0x22, 0x74, 0x39, 0x8e, 0x4e, 0x5f, 0x5f, 0x63, 0x7b, 0xa9, 0xc2,
0xe7, 0x46, 0x9e, 0xfd, 0x0a, 0xee, 0x4c, 0xf0, 0x54, 0x5f, 0x2d, 0xd4, 0x28, 0xe4, 0x11, 0x9f,
0xa7, 0x47, 0xd5, 0x0b, 0xb0, 0x7f, 0x96, 0x48, 0x5d, 0xa0, 0x90, 0x72, 0x6e, 0x4d, 0x0a, 0x1b,
0xc9, 0x79, 0x49, 0x3c, 0x1a, 0xef, 0x90, 0xeb, 0xdf, 0xc3, 0x11, 0x25, 0x0f, 0xdb, 0x55, 0xbf,
0xa8, 0xfd, 0xa7, 0x1a, 0xec, 0x96, 0x8c, 0x61, 0x03, 0x00, 0x83, 0x7a, 0x4a, 0xbe, 0x11, 0xf1,
0x38, 0x91, 0xc4, 0x80, 0x82, 0xf5, 0x42, 0xbe, 0x11, 0x8e, 0x35, 0x4e, 0x96, 0xec, 0x01, 0x74,
0xf4, 0xd2, 0x48, 0x17, 0xc7, 0xb7, 0x97, 0x4b, 0x12, 0x6d, 0x6b, 0xfa, 0xcf, 0x1e, 0xc1, 0x96,
0x39, 0xd8, 0x0b, 0x94, 0x92, 0x61, 0x3c, 0x48, 0xb0, 0xfc, 0xd1, 0x9f, 0x11, 0xc7, 0xd9, 0x1c,
0x67, 0x84, 0xfd, 0x3b, 0xb0, 0xd2, 0xcf, 0xb2, 0xf7, 0xc0, 0x9a, 0xf3, 0x65, 0x3c, 0xda, 0xa2,
0x6d, 0x2d, 0xa7, 0x3b, 0xe7, 0x4b, 0x1a, 0x6b, 0xd9, 0x1d, 0xe8, 0x20, 0x53, 0x2f, 0x4d, 0xbc,
0x5b, 0x4e, 0x7b, 0xce, 0x97, 0x2f, 0x97, 0x29, 0xc3, 0xe3, 0x2a, 0x19, 0x5c, 0xe7, 0x7c, 0xf9,
0x19, 0x57, 0xf6, 0x27, 0xd0, 0x36, 0x46, 0x7e, 0xa3, 0x83, 0x51, 0xbf, 0x5e, 0xd0, 0xff, 0x19,
0x6c, 0xe6, 0xec, 0x66, 0x3f, 0x82, 0x5b, 0xc6, 0xc3, 0x90, 0x47, 0x9a, 0x22, 0x52, 0x38, 0x90,
0x11, 0xf3, 0x82, 0x47, 0x1a, 0x3f, 0x69, 0x46, 0xf1, 0x3f, 0xd4, 0xa1, 0x6d, 0xc6, 0x5c, 0xf6,
0x00, 0xc7, 0x04, 0x2e, 0xfd, 0x91, 0x74, 0x4d, 0x47, 0x3b, 0xdd, 0xfc, 0xc7, 0xdb, 0x7b, 0x1d,
0x42, 0xff, 0xf3, 0x4f, 0x71, 0x32, 0xc0, 0x85, 0x9b, 0x03, 0xcc, 0x7a, 0x61, 0x0a, 0x67, 0xd0,
0xd4, 0x72, 0x2e, 0x62, 0x17, 0x69, 0x8d, 0x96, 0xfb, 0x8b, 0x39, 0x85, 0xa4, 0x69, 0x42, 0xe2,
0x2f, 0xe6, 0x18, 0x92, 0xf7, 0xc0, 0xd2, 0x81, 0xe6, 0x33, 0x62, 0x99, 0x22, 0xed, 0xd2, 0x06,
0x32, 0x1f, 0xc0, 0x6e, 0xbe, 0x53, 0x62, 0xe7, 0x33, 0xe0, 0xbe, 0x9d, 0xf5, 0x49, 0x9c, 0xdb,
0xef, 0x42, 0x37, 0x6d, 0x8d, 0x06, 0xe9, 0x3b, 0xdc, 0x74, 0x44, 0x76, 0x08, 0xdd, 0x30, 0x0a,
0xc2, 0x40, 0x89, 0x28, 0x2d, 0xca, 0x52, 0x1d, 0x39, 0xa9, 0x84, 0x2d, 0xc1, 0x4a, 0xb7, 0xb1,
0x83, 0x73, 0xd7, 0x8d, 0x84, 0x52, 0xf1, 0xb0, 0x9c, 0x90, 0xec, 0x10, 0x3a, 0xe1, 0x62, 0x3c,
0xc2, 0x66, 0x53, 0xcc, 0xb4, 0x8b, 0xc5, 0xf8, 0xb9, 0x58, 0x25, 0x17, 0x85, 0x90, 0x28, 0x6a,
0x37, 0xc1, 0x97, 0x22, 0x8a, 0x03, 0x62, 0x08, 0xdb, 0x87, 0xbd, 0xf2, 0x2d, 0x81, 0x1d, 0x81,
0x95, 0x16, 0x73, 0x29, 0xe3, 0x33, 0x6b, 0x33, 0x11, 0x9c, 0x24, 0x94, 0xf4, 0x7c, 0xe1, 0x8e,
0xb2, 0x30, 0x91, 0x45, 0x5d, 0x67, 0xd7, 0x30, 0x7e, 0x91, 0xc4, 0xc9, 0xfe, 0x21, 0xb4, 0x8d,
0x75, 0xf4, 0xfb, 0xac, 0xc2, 0x64, 0xcc, 0xa1, 0x75, 0x65, 0x51, 0xfe, 0xb9, 0x06, 0xdd, 0xe4,
0x16, 0x52, 0xa9, 0x54, 0x30, 0xb7, 0xfe, 0xdf, 0xcd, 0x5d, 0x77, 0x6d, 0x4b, 0x12, 0xa6, 0x99,
0x4b, 0x98, 0x43, 0x60, 0x26, 0x2f, 0xae, 0x02, 0x2d, 0x7d, 0x6f, 0x64, 0x22, 0x68, 0x12, 0x64,
0x8f, 0x38, 0xaf, 0x88, 0x71, 0x81, 0xfb, 0xc7, 0x5f, 0xb5, 0x60, 0xf7, 0xe4, 0xf4, 0xec, 0xfc,
0x24, 0x0c, 0x67, 0x72, 0xc2, 0x69, 0xec, 0x19, 0x40, 0x93, 0x06, 0xbb, 0x8a, 0x27, 0x9a, 0x7e,
0xd5, 0x0d, 0x83, 0x1d, 0x43, 0x8b, 0xe6, 0x3b, 0x56, 0xf5, 0x52, 0xd3, 0xaf, 0xbc, 0x68, 0xe0,
0x47, 0xcc, 0x04, 0x78, 0xfd, 0xc1, 0xa6, 0x5f, 0x75, 0xdb, 0x60, 0x9f, 0x80, 0x95, 0x4d, 0x66,
0xeb, 0x9e, 0x6d, 0xfa, 0x6b, 0xef, 0x1d, 0xa8, 0x9f, 0x35, 0xcc, 0x75, 0x8f, 0x1c, 0xfd, 0xb5,
0x03, 0x3a, 0x7b, 0x02, 0x9d, 0x64, 0xe4, 0xa8, 0x7e, 0x58, 0xe9, 0xaf, 0xb9, 0x13, 0x60, 0x78,
0xcc, 0xd8, 0x56, 0xf5, 0xfa, 0xd3, 0xaf, 0xbc, 0xb8, 0xb0, 0x47, 0xd0, 0x8e, 0x51, 0xbf, 0xf2,
0x89, 0xa4, 0x5f, 0x3d, 0xd9, 0xa3, 0x93, 0xd9, 0xbc, 0xb9, 0xee, 0x85, 0xaa, 0xbf, 0xf6, 0x86,
0xc5, 0x4e, 0x00, 0x72, 0xa3, 0xda, 0xda, 0xa7, 0xa7, 0xfe, 0xfa, 0x9b, 0x13, 0xfb, 0x18, 0xba,
0xd9, 0x6d, 0xb8, 0xfa, 0x49, 0xa8, 0xbf, 0xee, 0x32, 0x33, 0x6e, 0xd3, 0xb3, 0xe1, 0x87, 0xff,
0x09, 0x00, 0x00, 0xff, 0xff, 0x39, 0xa6, 0xae, 0x4d, 0xb2, 0x14, 0x00, 0x00,
// 1832 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x58, 0x4b, 0x6f, 0x1b, 0xc9,
0x11, 0x16, 0xdf, 0x9c, 0xd2, 0x83, 0x74, 0xcb, 0xb6, 0x68, 0x2e, 0x02, 0x1b, 0x83, 0xc0, 0x91,
0xb3, 0x5a, 0x31, 0xd1, 0xae, 0x0d, 0x7b, 0x37, 0x59, 0x44, 0xd2, 0x3a, 0x4b, 0x61, 0xf3, 0x50,
0xc6, 0x5e, 0x07, 0xc8, 0x85, 0x68, 0x72, 0x5a, 0xc3, 0x81, 0x39, 0x8f, 0x9d, 0x6e, 0x6a, 0x29,
0xdf, 0x72, 0x0c, 0xb0, 0xc8, 0x35, 0xe7, 0xfc, 0x81, 0xdc, 0xf2, 0x17, 0x82, 0xfc, 0x89, 0xf8,
0x90, 0xe4, 0x94, 0x3f, 0x91, 0xa0, 0xaa, 0xe7, 0xad, 0xa1, 0xa1, 0x6c, 0x8e, 0xb9, 0x48, 0x5d,
0x5d, 0x55, 0x3d, 0x5d, 0xc5, 0xaa, 0xaf, 0xaa, 0x1a, 0x6e, 0xa9, 0xab, 0x50, 0xc8, 0x11, 0xfd,
0x3d, 0x0c, 0xa3, 0x40, 0x05, 0xac, 0x45, 0xc4, 0xf0, 0x03, 0xc7, 0x55, 0xf3, 0xe5, 0xf4, 0x70,
0x16, 0x78, 0x23, 0x27, 0x70, 0x82, 0x11, 0x71, 0xa7, 0xcb, 0x0b, 0xa2, 0x88, 0xa0, 0x95, 0xd6,
0x1a, 0x8e, 0x72, 0xe2, 0x4a, 0xf8, 0xb6, 0x88, 0x3c, 0xd7, 0x57, 0x23, 0xe5, 0x2d, 0xdc, 0xa9,
0x1c, 0xcd, 0x02, 0xcf, 0x0b, 0xfc, 0xfc, 0x67, 0xcc, 0xbf, 0x34, 0xa1, 0x63, 0x89, 0xaf, 0x96,
0x42, 0x2a, 0xb6, 0x0f, 0x4d, 0x31, 0x9b, 0x07, 0x83, 0xfa, 0x83, 0xda, 0xfe, 0xe6, 0x11, 0x3b,
0xd4, 0x72, 0x31, 0xf7, 0xf9, 0x6c, 0x1e, 0x8c, 0x37, 0x2c, 0x92, 0x60, 0xef, 0x43, 0xeb, 0x62,
0xb1, 0x94, 0xf3, 0x41, 0x83, 0x44, 0x77, 0x8b, 0xa2, 0x3f, 0x45, 0xd6, 0x78, 0xc3, 0xd2, 0x32,
0x78, 0xac, 0xeb, 0x5f, 0x04, 0x83, 0x66, 0xd5, 0xb1, 0x67, 0xfe, 0x05, 0x1d, 0x8b, 0x12, 0xec,
0x29, 0x80, 0x14, 0x6a, 0x12, 0x84, 0xca, 0x0d, 0xfc, 0x41, 0x8b, 0xe4, 0xf7, 0x8a, 0xf2, 0x2f,
0x84, 0xfa, 0x25, 0xb1, 0xc7, 0x1b, 0x96, 0x21, 0x13, 0x02, 0x35, 0x5d, 0xdf, 0x55, 0x93, 0xd9,
0x9c, 0xbb, 0xfe, 0xa0, 0x5d, 0xa5, 0x79, 0xe6, 0xbb, 0xea, 0x14, 0xd9, 0xa8, 0xe9, 0x26, 0x04,
0x9a, 0xf2, 0xd5, 0x52, 0x44, 0x57, 0x83, 0x4e, 0x95, 0x29, 0xbf, 0x42, 0x16, 0x9a, 0x42, 0x32,
0xec, 0x13, 0xd8, 0x9c, 0x0a, 0xc7, 0xf5, 0x27, 0xd3, 0x45, 0x30, 0x7b, 0x3d, 0xe8, 0x92, 0xca,
0xa0, 0xa8, 0x72, 0x82, 0x02, 0x27, 0xc8, 0x1f, 0x6f, 0x58, 0x30, 0x4d, 0x29, 0x76, 0x04, 0xdd,
0xd9, 0x5c, 0xcc, 0x5e, 0x4f, 0xd4, 0x6a, 0x60, 0x90, 0xe6, 0x9d, 0xa2, 0xe6, 0x29, 0x72, 0x5f,
0xae, 0xc6, 0x1b, 0x56, 0x67, 0xa6, 0x97, 0x68, 0x97, 0x2d, 0x16, 0xee, 0xa5, 0x88, 0x50, 0x6b,
0xb7, 0xca, 0xae, 0xcf, 0x34, 0x9f, 0xf4, 0x0c, 0x3b, 0x21, 0xd8, 0x63, 0x30, 0x84, 0x6f, 0xc7,
0x17, 0xdd, 0x24, 0xc5, 0xbb, 0xa5, 0x5f, 0xd4, 0xb7, 0x93, 0x6b, 0x76, 0x45, 0xbc, 0x66, 0x87,
0xd0, 0xc6, 0x28, 0x71, 0xd5, 0x60, 0x8b, 0x74, 0x6e, 0x97, 0xae, 0x48, 0xbc, 0xf1, 0x86, 0x15,
0x4b, 0x9d, 0x74, 0xa0, 0x75, 0xc9, 0x17, 0x4b, 0x61, 0x7e, 0x0f, 0x36, 0x73, 0x91, 0xc2, 0x06,
0xd0, 0xf1, 0x84, 0x94, 0xdc, 0x11, 0x83, 0xda, 0x83, 0xda, 0xbe, 0x61, 0x25, 0xa4, 0xb9, 0x03,
0x5b, 0xf9, 0x38, 0xc9, 0x29, 0x62, 0x2c, 0xa0, 0xe2, 0xa5, 0x88, 0x24, 0x06, 0x40, 0xac, 0x18,
0x93, 0xe6, 0xc7, 0xd0, 0x2f, 0x07, 0x01, 0xeb, 0x43, 0xe3, 0xb5, 0xb8, 0x8a, 0x25, 0x71, 0xc9,
0x6e, 0xc7, 0x17, 0xa2, 0x28, 0x36, 0xac, 0xf8, 0x76, 0xff, 0xac, 0xa5, 0xca, 0x69, 0x1c, 0x30,
0x06, 0x4d, 0xe5, 0x7a, 0xfa, 0x82, 0x0d, 0x8b, 0xd6, 0xec, 0x1e, 0xfe, 0x48, 0xdc, 0xf5, 0x27,
0xae, 0x1d, 0x9f, 0xd0, 0x21, 0xfa, 0xcc, 0x66, 0xc7, 0xd0, 0x9f, 0x05, 0xbe, 0x14, 0xbe, 0x5c,
0xca, 0x49, 0xc8, 0x23, 0xee, 0xc9, 0x38, 0xfe, 0x13, 0xc7, 0x9e, 0x26, 0xec, 0x73, 0xe2, 0x5a,
0xbd, 0x59, 0x71, 0x83, 0x3d, 0x01, 0xb8, 0xe4, 0x0b, 0xd7, 0xe6, 0x2a, 0x88, 0xe4, 0xa0, 0xf9,
0xa0, 0xb1, 0xbf, 0x79, 0xd4, 0x8f, 0x95, 0x5f, 0x25, 0x8c, 0x93, 0xe6, 0x5f, 0xdf, 0xde, 0xdf,
0xb0, 0x72, 0x92, 0xec, 0x21, 0xf4, 0x78, 0x18, 0x4e, 0xa4, 0xe2, 0x4a, 0x4c, 0xa6, 0x57, 0x4a,
0x48, 0xca, 0x8e, 0x2d, 0x6b, 0x9b, 0x87, 0xe1, 0x0b, 0xdc, 0x3d, 0xc1, 0x4d, 0xd3, 0x4e, 0x7d,
0x4b, 0x81, 0x8b, 0x16, 0xda, 0x5c, 0x71, 0xb2, 0x70, 0xcb, 0xa2, 0x35, 0xee, 0x85, 0x5c, 0xcd,
0x63, 0xeb, 0x68, 0xcd, 0xee, 0x42, 0x7b, 0x2e, 0x5c, 0x67, 0xae, 0xc8, 0xa0, 0x86, 0x15, 0x53,
0xe8, 0xcc, 0x30, 0x0a, 0x2e, 0x05, 0xe5, 0x6e, 0xd7, 0xd2, 0x84, 0xf9, 0xb7, 0x1a, 0xdc, 0xba,
0x16, 0xec, 0x78, 0xee, 0x9c, 0xcb, 0x79, 0xf2, 0x2d, 0x5c, 0xb3, 0xf7, 0xf1, 0x5c, 0x6e, 0x8b,
0x28, 0xc6, 0x94, 0xed, 0xd8, 0xd6, 0x31, 0x6d, 0xc6, 0x86, 0xc6, 0x22, 0xec, 0xc7, 0x05, 0xe7,
0x34, 0xc8, 0x39, 0x49, 0xac, 0xbf, 0x70, 0x1d, 0xdf, 0xf5, 0x9d, 0x77, 0xf9, 0x68, 0x0c, 0xb7,
0xa7, 0x57, 0x6f, 0xb8, 0xaf, 0x5c, 0x5f, 0x4c, 0xae, 0x79, 0xb9, 0x17, 0x1f, 0xf4, 0xfc, 0xd2,
0xb5, 0x85, 0x3f, 0x13, 0xf1, 0x01, 0xbb, 0xa9, 0x4a, 0x7a, 0xb4, 0x34, 0x1f, 0xc0, 0x4e, 0x31,
0x23, 0xd9, 0x0e, 0xd4, 0xd5, 0x2a, 0xb6, 0xac, 0xae, 0x56, 0xa6, 0x99, 0x46, 0x53, 0x9a, 0x7d,
0xd7, 0x64, 0x1e, 0x41, 0xaf, 0x94, 0x68, 0x39, 0x37, 0xd7, 0xf2, 0x6e, 0x36, 0x7b, 0xb0, 0x5d,
0xc8, 0x2f, 0xf3, 0x9b, 0x16, 0x74, 0x2d, 0x21, 0x43, 0x0c, 0x1f, 0xf6, 0x14, 0x0c, 0xb1, 0x9a,
0x09, 0x0d, 0x8a, 0xb5, 0x12, 0xe4, 0x68, 0x99, 0xe7, 0x09, 0x1f, 0x31, 0x20, 0x15, 0x66, 0x8f,
0x0a, 0x80, 0xbe, 0x5b, 0x56, 0xca, 0x23, 0xfa, 0x41, 0x11, 0xd1, 0x6f, 0x97, 0x64, 0x4b, 0x90,
0xfe, 0xa8, 0x00, 0xe9, 0xe5, 0x83, 0x0b, 0x98, 0xfe, 0xac, 0x02, 0xd3, 0xcb, 0xd7, 0x5f, 0x03,
0xea, 0xcf, 0x2a, 0x40, 0x7d, 0x70, 0xed, 0x5b, 0x95, 0xa8, 0x7e, 0x50, 0x44, 0xf5, 0xb2, 0x39,
0x25, 0x58, 0xff, 0x51, 0x15, 0xac, 0xdf, 0x2b, 0xe9, 0xac, 0xc5, 0xf5, 0x0f, 0xaf, 0xe1, 0xfa,
0xdd, 0x92, 0x6a, 0x05, 0xb0, 0x3f, 0x2b, 0x00, 0x3b, 0x54, 0xda, 0xb6, 0x06, 0xd9, 0x9f, 0x5c,
0x47, 0xf6, 0xbd, 0xf2, 0x4f, 0x5b, 0x05, 0xed, 0xa3, 0x12, 0xb4, 0xdf, 0x29, 0xdf, 0x72, 0x2d,
0xb6, 0x3f, 0xc2, 0x7c, 0x2f, 0x45, 0x1a, 0x62, 0x83, 0x88, 0xa2, 0x20, 0x8a, 0xc1, 0x57, 0x13,
0xe6, 0x3e, 0x22, 0x50, 0x16, 0x5f, 0xef, 0xa8, 0x03, 0x14, 0xf4, 0xb9, 0xe8, 0x32, 0xff, 0x50,
0xcb, 0x74, 0xa9, 0x14, 0xe4, 0xd1, 0xcb, 0x88, 0xd1, 0x2b, 0x57, 0x1e, 0xea, 0x85, 0xf2, 0xc0,
0xbe, 0x0f, 0xb7, 0x16, 0x5c, 0x2a, 0xed, 0x97, 0x49, 0x01, 0xce, 0x7a, 0xc8, 0xd0, 0x0e, 0xd1,
0xb8, 0xf6, 0x01, 0xec, 0xe6, 0x64, 0x11, 0x5a, 0x09, 0xba, 0x9a, 0x94, 0xbc, 0xfd, 0x54, 0xfa,
0x38, 0x0c, 0xc7, 0x5c, 0xce, 0xcd, 0x9f, 0x67, 0xf6, 0x67, 0xa5, 0x87, 0x41, 0x73, 0x16, 0xd8,
0xda, 0xac, 0x6d, 0x8b, 0xd6, 0x58, 0x8e, 0x16, 0x81, 0x43, 0x5f, 0x35, 0x2c, 0x5c, 0xa2, 0x54,
0x9a, 0x29, 0x86, 0x4e, 0x09, 0xf3, 0xf7, 0xb5, 0xec, 0xbc, 0xac, 0x1a, 0x55, 0x95, 0x97, 0xda,
0xff, 0x52, 0x5e, 0xea, 0x37, 0x2d, 0x2f, 0xe6, 0x9f, 0x6b, 0xd9, 0x6f, 0x91, 0x16, 0x8e, 0x6f,
0x67, 0x1c, 0x86, 0x85, 0xeb, 0xdb, 0x62, 0x45, 0xa9, 0xde, 0xb0, 0x34, 0x91, 0xd4, 0xe9, 0x36,
0x39, 0xb8, 0x58, 0xa7, 0x3b, 0xb4, 0xa7, 0x89, 0xb8, 0xe0, 0x04, 0x17, 0x94, 0x83, 0x5b, 0x96,
0x26, 0x72, 0xb8, 0x69, 0x14, 0x70, 0xf3, 0x1c, 0xd8, 0xf5, 0xec, 0x64, 0x1f, 0x43, 0x53, 0x71,
0x07, 0x9d, 0x87, 0xf6, 0xef, 0x1c, 0xea, 0xae, 0xf7, 0xf0, 0x8b, 0x57, 0xe7, 0xdc, 0x8d, 0x4e,
0xee, 0xa2, 0xf5, 0xff, 0x7a, 0x7b, 0x7f, 0x07, 0x65, 0x0e, 0x02, 0xcf, 0x55, 0xc2, 0x0b, 0xd5,
0x95, 0x45, 0x3a, 0xe6, 0xbf, 0x6b, 0x88, 0xda, 0x85, 0xac, 0xad, 0xf4, 0x45, 0x12, 0x9a, 0xf5,
0x5c, 0x61, 0xbd, 0x99, 0x7f, 0xbe, 0x03, 0xe0, 0x70, 0x39, 0xf9, 0x9a, 0xfb, 0x4a, 0xd8, 0xb1,
0x93, 0x0c, 0x87, 0xcb, 0x5f, 0xd3, 0x06, 0xf6, 0x1f, 0xc8, 0x5e, 0x4a, 0x61, 0x93, 0xb7, 0x1a,
0x56, 0xc7, 0xe1, 0xf2, 0x4b, 0x29, 0xec, 0xd4, 0xae, 0xce, 0x7f, 0x6f, 0x17, 0xdb, 0x87, 0xc6,
0x85, 0x10, 0x31, 0xb2, 0xf5, 0x53, 0xd5, 0xb3, 0x27, 0x1f, 0x91, 0xb2, 0x0e, 0x09, 0x14, 0x31,
0x7f, 0x5b, 0xcf, 0x82, 0x33, 0x2b, 0x6e, 0xff, 0x5f, 0x3e, 0xf8, 0x07, 0x75, 0x8b, 0x45, 0x28,
0x65, 0xa7, 0x70, 0x2b, 0x4d, 0x99, 0xc9, 0x32, 0xb4, 0x39, 0x76, 0x61, 0xb5, 0x77, 0xe6, 0x58,
0x3f, 0x55, 0xf8, 0x52, 0xcb, 0xb3, 0x5f, 0xc0, 0x5e, 0x29, 0xc9, 0xd3, 0xa3, 0xea, 0xef, 0xcc,
0xf5, 0x3b, 0xc5, 0x5c, 0x4f, 0xce, 0x4b, 0xfc, 0xd1, 0xf8, 0x16, 0xb1, 0xfe, 0x5d, 0x6c, 0x73,
0xf2, 0xd0, 0x5f, 0xf5, 0x8b, 0x9a, 0x7f, 0xac, 0x41, 0xaf, 0x74, 0x19, 0x36, 0x02, 0xd0, 0xc8,
0x29, 0xdd, 0x37, 0x22, 0x06, 0xa9, 0xc4, 0x07, 0xe4, 0xac, 0x17, 0xee, 0x1b, 0x61, 0x19, 0xd3,
0x64, 0xc9, 0x1e, 0x42, 0x47, 0xad, 0xb4, 0x74, 0xb1, 0x11, 0x7c, 0xb9, 0x22, 0xd1, 0xb6, 0xa2,
0xff, 0xec, 0x31, 0x6c, 0xe9, 0x83, 0x9d, 0x40, 0x4a, 0x37, 0x8c, 0x9b, 0x11, 0x96, 0x3f, 0xfa,
0x73, 0xe2, 0x58, 0x9b, 0xd3, 0x8c, 0x30, 0x7f, 0x03, 0x46, 0xfa, 0x59, 0xf6, 0x1e, 0x18, 0x1e,
0x5f, 0xc5, 0x5d, 0x32, 0xde, 0xad, 0x65, 0x75, 0x3d, 0xbe, 0xa2, 0x06, 0x99, 0xed, 0x41, 0x07,
0x99, 0x6a, 0xa5, 0xfd, 0xdd, 0xb2, 0xda, 0x1e, 0x5f, 0xbd, 0x5c, 0xa5, 0x0c, 0x87, 0xcb, 0xa4,
0x05, 0xf6, 0xf8, 0xea, 0x73, 0x2e, 0xcd, 0x4f, 0xa1, 0xad, 0x2f, 0x79, 0xa3, 0x83, 0x51, 0xbf,
0x5e, 0xd0, 0xff, 0x09, 0x6c, 0xe6, 0xee, 0xcd, 0x7e, 0x08, 0x77, 0xb4, 0x85, 0x21, 0x8f, 0x14,
0x79, 0xa4, 0x70, 0x20, 0x23, 0xe6, 0x39, 0x8f, 0x14, 0x7e, 0x52, 0x37, 0xf5, 0xbf, 0xab, 0x43,
0x5b, 0x37, 0xcc, 0xec, 0x61, 0x6e, 0x3a, 0xa1, 0xaa, 0x78, 0xb2, 0xf9, 0xf7, 0xb7, 0xf7, 0x3b,
0x54, 0x40, 0xce, 0x3e, 0xcb, 0x46, 0x95, 0x0c, 0x30, 0xeb, 0x85, 0x7e, 0x3e, 0x99, 0x78, 0x1a,
0xb9, 0x89, 0x67, 0x0f, 0x3a, 0xfe, 0xd2, 0x23, 0x97, 0x34, 0xb5, 0x4b, 0xfc, 0xa5, 0x87, 0x2e,
0x79, 0x0f, 0x0c, 0x15, 0x28, 0xbe, 0x20, 0x96, 0x4e, 0xd2, 0x2e, 0x6d, 0x20, 0xf3, 0x21, 0xf4,
0xf2, 0xd5, 0x16, 0xab, 0xa7, 0x06, 0xf7, 0xed, 0xac, 0xd6, 0xe2, 0x04, 0x70, 0x0f, 0xba, 0x69,
0x79, 0xd5, 0x48, 0xdf, 0xe1, 0xba, 0xaa, 0xe2, 0x3c, 0x1c, 0x46, 0x41, 0x18, 0x48, 0x11, 0xa5,
0x49, 0x59, 0x9d, 0x47, 0xa9, 0x9c, 0xe9, 0x82, 0x91, 0x32, 0xb1, 0x17, 0xe0, 0xb6, 0x1d, 0x09,
0x29, 0xe3, 0xb6, 0x3b, 0x21, 0xd9, 0x01, 0x74, 0xc2, 0xe5, 0x74, 0x82, 0x25, 0xa7, 0x18, 0x6f,
0xe7, 0xcb, 0xe9, 0x17, 0xe2, 0x2a, 0x19, 0x3c, 0x42, 0xa2, 0xa8, 0xe8, 0x04, 0x5f, 0x8b, 0x28,
0x76, 0x8b, 0x26, 0x4c, 0x05, 0xfd, 0xf2, 0xd4, 0xc1, 0x3e, 0x02, 0x23, 0x4d, 0xe9, 0x52, 0xdc,
0x97, 0xef, 0x9c, 0x09, 0x62, 0x67, 0x22, 0x5d, 0xc7, 0x17, 0xf6, 0x24, 0x73, 0x19, 0xdd, 0xab,
0x6b, 0xf5, 0x34, 0xe3, 0x67, 0x89, 0xcf, 0xcc, 0x1f, 0x40, 0x5b, 0xdf, 0x91, 0x7e, 0xab, 0xab,
0x30, 0x69, 0x9b, 0x68, 0x5d, 0x99, 0xa0, 0x7f, 0xaa, 0x41, 0x37, 0x99, 0x6a, 0x2a, 0x95, 0x0a,
0x97, 0xae, 0xdf, 0xf4, 0xd2, 0xeb, 0x46, 0xc2, 0x24, 0x84, 0x9a, 0xb9, 0x10, 0x3a, 0x00, 0xa6,
0x23, 0xe5, 0x32, 0x50, 0xae, 0xef, 0x4c, 0xb4, 0x37, 0x75, 0xc8, 0xf4, 0x89, 0xf3, 0x8a, 0x18,
0xe7, 0xb8, 0x7f, 0xf4, 0x4d, 0x0b, 0x7a, 0xc7, 0x27, 0xa7, 0x67, 0xc7, 0x61, 0xb8, 0x70, 0x67,
0x9c, 0x9a, 0xa9, 0x11, 0x34, 0xa9, 0x5d, 0xac, 0x78, 0x74, 0x1a, 0x56, 0xcd, 0x2d, 0xec, 0x08,
0x5a, 0xd4, 0x35, 0xb2, 0xaa, 0xb7, 0xa7, 0x61, 0xe5, 0xf8, 0x82, 0x1f, 0xd1, 0x7d, 0xe5, 0xf5,
0x27, 0xa8, 0x61, 0xd5, 0x0c, 0xc3, 0x3e, 0x05, 0x23, 0xeb, 0xf7, 0xd6, 0x3d, 0x44, 0x0d, 0xd7,
0x4e, 0x33, 0xa8, 0x9f, 0x95, 0xd0, 0x75, 0xcf, 0x36, 0xc3, 0xb5, 0x6d, 0x3f, 0x7b, 0x0a, 0x9d,
0xa4, 0x09, 0xa9, 0x7e, 0x2a, 0x1a, 0xae, 0x99, 0x34, 0xd0, 0x3d, 0xba, 0x91, 0xab, 0x7a, 0xcf,
0x1a, 0x56, 0x8e, 0x43, 0xec, 0x31, 0xb4, 0xe3, 0x3a, 0x50, 0xf9, 0xe8, 0x33, 0xac, 0x9e, 0x17,
0xd0, 0xc8, 0xac, 0x89, 0x5d, 0xf7, 0xe6, 0x36, 0x5c, 0x3b, 0xb7, 0xb1, 0x63, 0x80, 0x5c, 0xf3,
0xb6, 0xf6, 0x31, 0x6d, 0xb8, 0x7e, 0x1e, 0x63, 0x9f, 0x40, 0x37, 0x9b, 0xb1, 0xab, 0x1f, 0xb9,
0x86, 0xeb, 0x46, 0xa4, 0x69, 0x9b, 0x1e, 0x42, 0x3f, 0xfc, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff,
0x76, 0x56, 0x8a, 0x69, 0x84, 0x15, 0x00, 0x00,
} }

+ 11
- 7
types/types.proto View File

@ -47,8 +47,11 @@ message RequestSetOption {
} }
message RequestInitChain { message RequestInitChain {
repeated Validator validators = 1 [(gogoproto.nullable)=false];
bytes genesis_bytes = 2;
int64 time = 1;
string chain_id = 2;
ConsensusParams consensus_params = 3;
repeated Validator validators = 4 [(gogoproto.nullable)=false];
bytes app_state_bytes = 5;
} }
message RequestQuery { message RequestQuery {
@ -61,7 +64,7 @@ message RequestQuery {
message RequestBeginBlock { message RequestBeginBlock {
bytes hash = 1; bytes hash = 1;
Header header = 2 [(gogoproto.nullable)=false]; Header header = 2 [(gogoproto.nullable)=false];
repeated SigningValidator validators = 3;
repeated SigningValidator validators = 3 [(gogoproto.nullable)=false];
repeated Evidence byzantine_validators = 4 [(gogoproto.nullable)=false]; repeated Evidence byzantine_validators = 4 [(gogoproto.nullable)=false];
} }
@ -128,7 +131,8 @@ message ResponseSetOption {
} }
message ResponseInitChain { message ResponseInitChain {
repeated Validator validators = 1 [(gogoproto.nullable)=false];
ConsensusParams consensus_params = 1;
repeated Validator validators = 2 [(gogoproto.nullable)=false];
} }
message ResponseQuery { message ResponseQuery {
@ -230,7 +234,7 @@ message Header {
bytes app_hash = 7; bytes app_hash = 7;
// consensus // consensus
Validator proposer = 8;
Validator proposer = 8 [(gogoproto.nullable)=false];
} }
// Validator // Validator
@ -242,7 +246,7 @@ message Validator {
// Validator with an extra bool // Validator with an extra bool
message SigningValidator { message SigningValidator {
Validator validator = 1;
Validator validator = 1 [(gogoproto.nullable)=false];
bool signed_last_block = 2; bool signed_last_block = 2;
} }
@ -253,7 +257,7 @@ message PubKey {
message Evidence { message Evidence {
string type = 1; string type = 1;
Validator validator = 2;
Validator validator = 2 [(gogoproto.nullable)=false];
int64 height = 3; int64 height = 3;
int64 time = 4; int64 time = 4;
int64 total_voting_power = 5; int64 total_voting_power = 5;


Loading…
Cancel
Save