diff --git a/go.mod b/go.mod index 7832239b7d..c96a002c6f 100644 --- a/go.mod +++ b/go.mod @@ -108,11 +108,10 @@ require ( golang.org/x/crypto v0.0.0-20201208171446-5f87f3452ae9 golang.org/x/exp v0.0.0-20200513190911-00229845015e golang.org/x/net v0.0.0-20201209123823-ac852fbbde11 // indirect - golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9 // indirect golang.org/x/sys v0.0.0-20201211002650-1f0c578a6b29 // indirect golang.org/x/text v0.3.4 // indirect golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e // indirect - golang.org/x/tools v0.0.0-20200904185747-39188db58858 + golang.org/x/tools v0.0.0-20201218024724-ae774e9781d2 google.golang.org/api v0.34.0 // indirect google.golang.org/appengine v1.6.7 // indirect google.golang.org/genproto v0.0.0-20201026171402-d4b8fe4fd877 diff --git a/go.sum b/go.sum index 5d29e96c5c..00b96b131e 100644 --- a/go.sum +++ b/go.sum @@ -1274,6 +1274,7 @@ golang.org/x/net v0.0.0-20200813134508-3edf25e44fcc/go.mod h1:/O7V0waA8r7cgGh81R golang.org/x/net v0.0.0-20200822124328-c89045814202 h1:VvcQYSHwXgi7W+TpUR6A9g6Up98WAHf3f/ulnJ62IyA= golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200904194848-62affa334b73/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= +golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201209123823-ac852fbbde11 h1:lwlPPsmjDKK0J6eG6xDWd5XPehI0R024zxjDnw3esPA= golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/oauth2 v0.0.0-20170912212905-13449ad91cb2/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= @@ -1359,6 +1360,7 @@ golang.org/x/sys v0.0.0-20200814200057-3d37ad5750ed/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200824131525-c12d262b63d8 h1:AvbQYmiaaaza3cW3QXRyPo5kYgpFIzOAfeAAN7m3qQ4= golang.org/x/sys v0.0.0-20200824131525-c12d262b63d8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201024232916-9f70ab9862d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201211002650-1f0c578a6b29 h1:hAYi5mzhvBeCfkgaIHGZ8R+Q04WjSW5ZvQO3BZ94dHY= @@ -1439,6 +1441,8 @@ golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200904185747-39188db58858 h1:xLt+iB5ksWcZVxqc+g9K41ZHy+6MKWfXCDsjSThnsPA= golang.org/x/tools v0.0.0-20200904185747-39188db58858/go.mod h1:Cj7w3i3Rnn0Xh82ur9kSqwfTHTeVxaDqrfMjpcNT6bE= +golang.org/x/tools v0.0.0-20201218024724-ae774e9781d2 h1:lHDhNNs7asPT3p01mm8EP3B+bNyyVfg0bcYjhJUYgxw= +golang.org/x/tools v0.0.0-20201218024724-ae774e9781d2/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4= diff --git a/proto/validator/accounts/v2/web_api.pb.go b/proto/validator/accounts/v2/web_api.pb.go index e0375d3358..0e48a268c1 100755 --- a/proto/validator/accounts/v2/web_api.pb.go +++ b/proto/validator/accounts/v2/web_api.pb.go @@ -887,6 +887,61 @@ func (m *LogsEndpointResponse) GetBeaconLogsEndpoint() string { return "" } +type VersionResponse struct { + Beacon string `protobuf:"bytes,1,opt,name=beacon,proto3" json:"beacon,omitempty"` + Validator string `protobuf:"bytes,2,opt,name=validator,proto3" json:"validator,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *VersionResponse) Reset() { *m = VersionResponse{} } +func (m *VersionResponse) String() string { return proto.CompactTextString(m) } +func (*VersionResponse) ProtoMessage() {} +func (*VersionResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_8a5153635bfe042e, []int{13} +} +func (m *VersionResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *VersionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_VersionResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *VersionResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_VersionResponse.Merge(m, src) +} +func (m *VersionResponse) XXX_Size() int { + return m.Size() +} +func (m *VersionResponse) XXX_DiscardUnknown() { + xxx_messageInfo_VersionResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_VersionResponse proto.InternalMessageInfo + +func (m *VersionResponse) GetBeacon() string { + if m != nil { + return m.Beacon + } + return "" +} + +func (m *VersionResponse) GetValidator() string { + if m != nil { + return m.Validator + } + return "" +} + type ChangePasswordRequest struct { CurrentPassword string `protobuf:"bytes,1,opt,name=current_password,json=currentPassword,proto3" json:"current_password,omitempty"` Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"` @@ -900,7 +955,7 @@ func (m *ChangePasswordRequest) Reset() { *m = ChangePasswordRequest{} } func (m *ChangePasswordRequest) String() string { return proto.CompactTextString(m) } func (*ChangePasswordRequest) ProtoMessage() {} func (*ChangePasswordRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_8a5153635bfe042e, []int{13} + return fileDescriptor_8a5153635bfe042e, []int{14} } func (m *ChangePasswordRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -961,7 +1016,7 @@ func (m *HasWalletResponse) Reset() { *m = HasWalletResponse{} } func (m *HasWalletResponse) String() string { return proto.CompactTextString(m) } func (*HasWalletResponse) ProtoMessage() {} func (*HasWalletResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_8a5153635bfe042e, []int{14} + return fileDescriptor_8a5153635bfe042e, []int{15} } func (m *HasWalletResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1009,7 +1064,7 @@ func (m *ImportKeystoresRequest) Reset() { *m = ImportKeystoresRequest{} func (m *ImportKeystoresRequest) String() string { return proto.CompactTextString(m) } func (*ImportKeystoresRequest) ProtoMessage() {} func (*ImportKeystoresRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_8a5153635bfe042e, []int{15} + return fileDescriptor_8a5153635bfe042e, []int{16} } func (m *ImportKeystoresRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1063,7 +1118,7 @@ func (m *ImportKeystoresResponse) Reset() { *m = ImportKeystoresResponse func (m *ImportKeystoresResponse) String() string { return proto.CompactTextString(m) } func (*ImportKeystoresResponse) ProtoMessage() {} func (*ImportKeystoresResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_8a5153635bfe042e, []int{16} + return fileDescriptor_8a5153635bfe042e, []int{17} } func (m *ImportKeystoresResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1111,7 +1166,7 @@ func (m *HasUsedWebResponse) Reset() { *m = HasUsedWebResponse{} } func (m *HasUsedWebResponse) String() string { return proto.CompactTextString(m) } func (*HasUsedWebResponse) ProtoMessage() {} func (*HasUsedWebResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_8a5153635bfe042e, []int{17} + return fileDescriptor_8a5153635bfe042e, []int{18} } func (m *HasUsedWebResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1165,7 +1220,7 @@ func (m *LogsResponse) Reset() { *m = LogsResponse{} } func (m *LogsResponse) String() string { return proto.CompactTextString(m) } func (*LogsResponse) ProtoMessage() {} func (*LogsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_8a5153635bfe042e, []int{18} + return fileDescriptor_8a5153635bfe042e, []int{19} } func (m *LogsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1217,7 +1272,7 @@ func (m *BeaconStatusResponse) Reset() { *m = BeaconStatusResponse{} } func (m *BeaconStatusResponse) String() string { return proto.CompactTextString(m) } func (*BeaconStatusResponse) ProtoMessage() {} func (*BeaconStatusResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_8a5153635bfe042e, []int{19} + return fileDescriptor_8a5153635bfe042e, []int{20} } func (m *BeaconStatusResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1303,6 +1358,7 @@ func init() { proto.RegisterType((*AuthResponse)(nil), "ethereum.validator.accounts.v2.AuthResponse") proto.RegisterType((*NodeConnectionResponse)(nil), "ethereum.validator.accounts.v2.NodeConnectionResponse") proto.RegisterType((*LogsEndpointResponse)(nil), "ethereum.validator.accounts.v2.LogsEndpointResponse") + proto.RegisterType((*VersionResponse)(nil), "ethereum.validator.accounts.v2.VersionResponse") proto.RegisterType((*ChangePasswordRequest)(nil), "ethereum.validator.accounts.v2.ChangePasswordRequest") proto.RegisterType((*HasWalletResponse)(nil), "ethereum.validator.accounts.v2.HasWalletResponse") proto.RegisterType((*ImportKeystoresRequest)(nil), "ethereum.validator.accounts.v2.ImportKeystoresRequest") @@ -1317,133 +1373,136 @@ func init() { } var fileDescriptor_8a5153635bfe042e = []byte{ - // 2009 bytes of a gzipped FileDescriptorProto + // 2058 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x58, 0xcd, 0x6f, 0x1c, 0x49, - 0x15, 0xa7, 0x6d, 0xc7, 0x19, 0xbf, 0x99, 0xd8, 0x4e, 0xd9, 0xb1, 0x27, 0x8e, 0x63, 0x3b, 0x95, - 0x0f, 0x3b, 0x4e, 0x76, 0x26, 0x99, 0xb0, 0x49, 0x94, 0x0b, 0x8a, 0xc7, 0x43, 0x12, 0x39, 0x1f, - 0xa6, 0xe3, 0x4d, 0xc4, 0x65, 0x5b, 0xe5, 0xee, 0x4a, 0x4f, 0xc9, 0x33, 0xdd, 0xbd, 0xdd, 0x35, + 0x15, 0xa7, 0x6d, 0x67, 0x32, 0x7e, 0x33, 0xfe, 0x48, 0xd9, 0xb1, 0x27, 0x8e, 0x63, 0x3b, 0x95, + 0x0f, 0x3b, 0x4e, 0x76, 0x26, 0x99, 0xb0, 0x49, 0x94, 0x0b, 0x8a, 0xc7, 0x83, 0x13, 0x39, 0x1f, + 0xa6, 0xe3, 0x4d, 0xc4, 0x65, 0x5b, 0xe5, 0xee, 0x4a, 0x4f, 0xcb, 0x33, 0xdd, 0xbd, 0xdd, 0x35, 0x13, 0x3b, 0x5c, 0x60, 0x59, 0x09, 0x81, 0xc4, 0x01, 0xf6, 0x80, 0x90, 0x10, 0x12, 0x9c, 0x39, - 0x80, 0x84, 0xb4, 0xff, 0x02, 0x07, 0x0e, 0x48, 0xfc, 0x01, 0xa0, 0x88, 0x0b, 0xf0, 0x4f, 0xa0, - 0xaa, 0xae, 0xea, 0x8f, 0xc9, 0xf4, 0x8e, 0x2d, 0xc4, 0x85, 0x5b, 0xd7, 0xfb, 0xfc, 0xd5, 0xab, - 0x57, 0xef, 0xbd, 0x6a, 0xb8, 0x1e, 0x84, 0x3e, 0xf7, 0xeb, 0x7d, 0xd2, 0x61, 0x0e, 0xe1, 0x7e, - 0x58, 0x27, 0xb6, 0xed, 0xf7, 0x3c, 0x1e, 0xd5, 0xfb, 0x8d, 0xfa, 0x5b, 0xba, 0x6f, 0x91, 0x80, - 0xd5, 0xa4, 0x0c, 0x5a, 0xa1, 0xbc, 0x4d, 0x43, 0xda, 0xeb, 0xd6, 0x12, 0xe9, 0x9a, 0x96, 0xae, - 0xf5, 0x1b, 0x4b, 0x6b, 0xb1, 0xa9, 0x7d, 0x4a, 0x6c, 0xdf, 0xab, 0x87, 0x81, 0x5d, 0xef, 0xdf, - 0xae, 0xb7, 0x29, 0xe9, 0xf0, 0x76, 0x6c, 0x61, 0x69, 0x95, 0xf2, 0x76, 0xbd, 0x7f, 0x9b, 0x74, - 0x82, 0x36, 0xb9, 0xad, 0x04, 0x2d, 0xbb, 0x4d, 0x98, 0xa7, 0x04, 0x16, 0x73, 0x02, 0x9e, 0xef, - 0x50, 0xc5, 0x58, 0xce, 0x31, 0x52, 0xff, 0x8a, 0xeb, 0xfa, 0xbe, 0xdb, 0xa1, 0x75, 0x12, 0xb0, - 0x3a, 0xf1, 0x3c, 0x9f, 0x13, 0xce, 0x7c, 0x2f, 0x52, 0xdc, 0x0b, 0x8a, 0x2b, 0x57, 0xfb, 0xbd, - 0x37, 0x75, 0xda, 0x0d, 0xf8, 0x91, 0x62, 0x7e, 0xe4, 0x32, 0xde, 0xee, 0xed, 0xd7, 0x6c, 0xbf, - 0x5b, 0x77, 0x7d, 0xd7, 0x4f, 0xa5, 0xc4, 0x2a, 0xde, 0x91, 0xf8, 0x8a, 0xc5, 0xf1, 0xbf, 0xc7, - 0x60, 0xae, 0x19, 0x52, 0xc2, 0xe9, 0x6b, 0xd2, 0xe9, 0x50, 0x6e, 0xd2, 0xcf, 0x7a, 0x34, 0xe2, - 0xe8, 0x39, 0xc0, 0x01, 0x3d, 0xea, 0x12, 0x8f, 0xb8, 0x34, 0xac, 0x1a, 0x6b, 0xc6, 0xc6, 0x74, - 0xa3, 0x56, 0xfb, 0xfa, 0x80, 0xd5, 0x76, 0x12, 0x8d, 0x1d, 0xe6, 0x39, 0x66, 0xc6, 0x02, 0x5a, - 0x87, 0x99, 0xb7, 0xd2, 0x81, 0x15, 0x90, 0x28, 0x7a, 0xeb, 0x87, 0x4e, 0x75, 0x6c, 0xcd, 0xd8, - 0x98, 0x32, 0xa7, 0x63, 0xf2, 0xae, 0xa2, 0xa2, 0x25, 0x28, 0x75, 0x3d, 0xda, 0xf5, 0x3d, 0x66, - 0x57, 0xc7, 0xa5, 0x44, 0xb2, 0x46, 0x97, 0xa0, 0xe2, 0xf5, 0xba, 0x96, 0x76, 0x59, 0x9d, 0x58, - 0x33, 0x36, 0x26, 0xcc, 0xb2, 0xd7, 0xeb, 0x3e, 0x54, 0x24, 0xb4, 0x0a, 0xe5, 0x90, 0x76, 0x7d, - 0x4e, 0x2d, 0xe2, 0x38, 0x61, 0xf5, 0x94, 0xb4, 0x00, 0x31, 0xe9, 0xa1, 0xe3, 0x84, 0xe8, 0x1a, - 0xcc, 0x28, 0x01, 0x3b, 0x14, 0x60, 0x78, 0xbb, 0x3a, 0x29, 0x85, 0xce, 0xc4, 0xe4, 0x66, 0xc8, - 0x77, 0x09, 0x6f, 0x67, 0xe4, 0x0e, 0xe8, 0x51, 0x2c, 0x77, 0x3a, 0x2b, 0xb7, 0x43, 0x8f, 0xa4, - 0xdc, 0x0d, 0x40, 0xda, 0x1e, 0x49, 0x4d, 0x96, 0xa4, 0xa8, 0xb2, 0xd0, 0x24, 0xca, 0x28, 0xfe, - 0x14, 0xe6, 0xf3, 0xc1, 0x8e, 0x02, 0xdf, 0x8b, 0x28, 0xfa, 0x36, 0x4c, 0xc6, 0x61, 0x90, 0x91, - 0x2e, 0x8f, 0x8e, 0x74, 0x5e, 0xdf, 0x54, 0xda, 0xf8, 0x2b, 0x03, 0x16, 0x5b, 0x0e, 0xe3, 0x31, - 0xbb, 0xe9, 0x7b, 0x6f, 0x98, 0xab, 0x4f, 0x74, 0x20, 0x32, 0xc6, 0x71, 0x22, 0x33, 0x76, 0xcc, - 0xc8, 0x8c, 0x1f, 0x3f, 0x32, 0x13, 0xc3, 0x23, 0x73, 0x17, 0xaa, 0x8f, 0xa8, 0x47, 0x43, 0xc2, - 0xe9, 0x33, 0x75, 0xdc, 0x49, 0x74, 0xb2, 0x29, 0x61, 0xe4, 0x53, 0x02, 0xff, 0xc4, 0x80, 0xe9, - 0x81, 0x60, 0xae, 0x42, 0x39, 0x49, 0x35, 0xde, 0xd6, 0x1b, 0xd5, 0x69, 0xc6, 0xdb, 0xe8, 0x35, - 0xcc, 0xa4, 0x99, 0x69, 0x1d, 0x30, 0x2f, 0xce, 0xc5, 0x93, 0x27, 0xf8, 0xf4, 0x41, 0x6e, 0x8d, - 0x7f, 0x6e, 0xc0, 0xdc, 0x53, 0x16, 0x71, 0x9d, 0x8d, 0x3a, 0xf4, 0x1f, 0xc1, 0x9c, 0x4b, 0xb9, - 0xe5, 0xd0, 0xc0, 0x8f, 0x18, 0xb7, 0xf8, 0xa1, 0xe5, 0x10, 0x4e, 0x24, 0xb2, 0x92, 0x39, 0xeb, - 0x52, 0xbe, 0x1d, 0x73, 0xf6, 0x0e, 0xb7, 0x09, 0x27, 0xe8, 0x02, 0x4c, 0x05, 0xc4, 0xa5, 0x56, - 0xc4, 0xde, 0x51, 0x89, 0xec, 0x94, 0x59, 0x12, 0x84, 0x97, 0xec, 0x1d, 0x45, 0x17, 0x01, 0x24, - 0x93, 0xfb, 0x07, 0xd4, 0x53, 0x81, 0x97, 0xe2, 0x7b, 0x82, 0x80, 0x66, 0x61, 0x9c, 0x74, 0x3a, - 0x32, 0xca, 0x25, 0x53, 0x7c, 0xe2, 0xdf, 0x1a, 0x30, 0x9f, 0x07, 0xa5, 0xe2, 0xd4, 0x84, 0x52, - 0x72, 0x93, 0x8c, 0xb5, 0xf1, 0x8d, 0x72, 0x63, 0x7d, 0xd4, 0xfe, 0x95, 0x0d, 0x33, 0x51, 0x14, - 0xc9, 0xe0, 0xd1, 0x43, 0x11, 0xea, 0x04, 0x93, 0x4a, 0x1a, 0x41, 0xde, 0x4d, 0x70, 0x5d, 0x04, - 0xe0, 0x3e, 0x27, 0x9d, 0x78, 0x53, 0xe3, 0x72, 0x53, 0x53, 0x92, 0x22, 0x76, 0x85, 0xff, 0x60, - 0xc0, 0x69, 0x65, 0x1c, 0x35, 0xe0, 0x9c, 0xf2, 0xce, 0x3c, 0xd7, 0x0a, 0x7a, 0xfb, 0x1d, 0x66, - 0x8b, 0x54, 0x93, 0xf1, 0xaa, 0x98, 0x73, 0x29, 0x73, 0x57, 0xf2, 0x76, 0xe8, 0x91, 0xa8, 0x0c, - 0x0a, 0x92, 0xe5, 0x91, 0x2e, 0x55, 0x18, 0xca, 0x8a, 0xf6, 0x9c, 0x74, 0xa9, 0x40, 0x3a, 0x78, - 0x00, 0xe3, 0xd2, 0xe0, 0x19, 0x27, 0x17, 0xfd, 0x75, 0x21, 0x17, 0xb2, 0xbe, 0x2c, 0xb9, 0xd9, - 0x9c, 0x9d, 0x4e, 0xc9, 0x32, 0x65, 0x77, 0x60, 0x5a, 0xc7, 0x23, 0xbd, 0x62, 0x29, 0xdc, 0x38, - 0xa8, 0x15, 0x13, 0x02, 0x8d, 0x32, 0x42, 0x55, 0x38, 0xcd, 0x3c, 0x87, 0xd9, 0x34, 0xaa, 0x8e, - 0xad, 0x8d, 0x6f, 0x4c, 0x98, 0x7a, 0x89, 0x3f, 0x85, 0xf2, 0xc3, 0x1e, 0x6f, 0x6b, 0x4b, 0x4b, - 0x50, 0x4a, 0xea, 0xa4, 0x4a, 0x79, 0xbd, 0x46, 0x77, 0xe0, 0x9c, 0xfe, 0xb6, 0x6c, 0x71, 0xc5, - 0xc3, 0xae, 0x04, 0xa5, 0x36, 0x3d, 0xaf, 0x99, 0xcd, 0x0c, 0x0f, 0xbf, 0x80, 0x4a, 0x6c, 0x5f, - 0x1d, 0xfe, 0x3c, 0x9c, 0x8a, 0x4f, 0x2b, 0xb6, 0x1e, 0x2f, 0xd0, 0x75, 0x98, 0x95, 0x1f, 0x16, - 0x3d, 0x0c, 0x58, 0x98, 0x5a, 0x9d, 0x30, 0x67, 0x24, 0xbd, 0x95, 0x90, 0xf1, 0xdf, 0x0c, 0x58, - 0x78, 0xee, 0x3b, 0xb4, 0xe9, 0x7b, 0x1e, 0xb5, 0x05, 0x29, 0xb1, 0x7d, 0x0b, 0xe6, 0x55, 0x2b, - 0x14, 0x0d, 0xcf, 0xa2, 0x9e, 0x13, 0xf8, 0xcc, 0xe3, 0xca, 0x15, 0x8a, 0x79, 0x42, 0xb7, 0xa5, - 0x38, 0x68, 0x19, 0xa6, 0xec, 0xd8, 0x0e, 0x8d, 0xef, 0x62, 0xc9, 0x4c, 0x09, 0x22, 0x6a, 0xd1, - 0x91, 0x67, 0x33, 0xcf, 0x95, 0x27, 0x56, 0x32, 0xf5, 0x52, 0x1c, 0xbb, 0x4b, 0x3d, 0x1a, 0xb1, - 0xc8, 0xe2, 0xac, 0x4b, 0x75, 0x43, 0x50, 0xb4, 0x3d, 0xd6, 0xa5, 0xe8, 0x3e, 0x54, 0xf5, 0xb1, - 0xdb, 0xbe, 0xc7, 0x43, 0x62, 0x73, 0x59, 0x00, 0x69, 0x14, 0xc9, 0xee, 0x50, 0x31, 0x17, 0x14, - 0xbf, 0xa9, 0xd8, 0x0f, 0x63, 0x2e, 0xfe, 0xbe, 0xb8, 0x38, 0xbe, 0x1b, 0x69, 0x94, 0xc9, 0xfe, - 0xee, 0xc2, 0x62, 0x72, 0x3d, 0xac, 0x8e, 0xef, 0x46, 0x83, 0x5b, 0x3c, 0x97, 0xb0, 0xb3, 0xfa, - 0x99, 0xb8, 0xe4, 0x95, 0xc6, 0xb2, 0x71, 0xc9, 0x6a, 0xe0, 0x2f, 0x0d, 0x38, 0xd7, 0x6c, 0x13, - 0xcf, 0xa5, 0xba, 0x3f, 0xea, 0x04, 0xb9, 0x0e, 0xb3, 0x76, 0x2f, 0x0c, 0xa9, 0x97, 0x69, 0xa8, - 0xb1, 0xf3, 0x19, 0x45, 0xcf, 0x76, 0xd4, 0x81, 0x9e, 0x7b, 0x8c, 0x5c, 0x1a, 0xff, 0x9a, 0x5c, - 0xba, 0x0f, 0x67, 0x1f, 0x93, 0x68, 0xa0, 0xea, 0x5e, 0x86, 0x33, 0xaa, 0xea, 0xd2, 0x43, 0x16, - 0xc9, 0x92, 0x22, 0x8e, 0xaa, 0x12, 0x13, 0x5b, 0x92, 0x86, 0xfb, 0xb0, 0xf0, 0xa4, 0x1b, 0xf8, - 0x21, 0x17, 0xb7, 0x81, 0xfb, 0x21, 0xcd, 0x94, 0x48, 0x74, 0xa0, 0x69, 0x16, 0x93, 0x32, 0xd4, - 0x91, 0x37, 0x68, 0xca, 0x3c, 0x9b, 0x70, 0x9e, 0x28, 0x46, 0x5e, 0x7c, 0x60, 0x77, 0xa9, 0xb8, - 0x0e, 0x01, 0xde, 0x81, 0xc5, 0x0f, 0xfc, 0xa6, 0xc9, 0xaa, 0xdd, 0x59, 0x1f, 0x5e, 0x5e, 0xa4, - 0x79, 0x49, 0xa9, 0x89, 0xf0, 0x6b, 0x40, 0x8f, 0x49, 0xf4, 0x49, 0x44, 0x9d, 0xd7, 0x74, 0x3f, - 0xb1, 0x83, 0xe1, 0x4c, 0x9b, 0x44, 0x56, 0xc4, 0x5c, 0x8f, 0x3a, 0x56, 0x2f, 0x50, 0xfb, 0x2f, - 0xb7, 0x49, 0xf4, 0x52, 0xd2, 0x3e, 0x09, 0x44, 0x11, 0x14, 0x32, 0xaa, 0xd5, 0xab, 0x3c, 0x6f, - 0xeb, 0x50, 0x62, 0x0c, 0x15, 0x71, 0xfa, 0x89, 0x49, 0x04, 0x13, 0x22, 0x51, 0x54, 0x14, 0xe4, - 0x37, 0xfe, 0xf5, 0x18, 0xcc, 0x6f, 0xc9, 0x44, 0x79, 0xc9, 0x09, 0xef, 0x45, 0xff, 0x67, 0x97, - 0x0e, 0x7d, 0x0b, 0x40, 0xce, 0xcf, 0x56, 0x9b, 0x12, 0x47, 0x4e, 0x66, 0xe5, 0xc6, 0x5a, 0xda, - 0x96, 0x28, 0x6f, 0xd7, 0xf4, 0xd4, 0x5c, 0x6b, 0x0a, 0xc1, 0xc7, 0x94, 0x38, 0xe6, 0x94, 0xad, - 0x3f, 0x37, 0xef, 0xc1, 0x74, 0xbe, 0x4b, 0xa3, 0x32, 0x9c, 0xde, 0x6e, 0x99, 0x4f, 0x5e, 0xb5, - 0xb6, 0x67, 0xbf, 0x81, 0x2a, 0x50, 0x7a, 0xf2, 0x6c, 0xf7, 0x85, 0xb9, 0xd7, 0xda, 0x9e, 0x35, - 0x10, 0xc0, 0xa4, 0xd9, 0x7a, 0xf6, 0x62, 0xaf, 0x35, 0x3b, 0xd6, 0xf8, 0xe7, 0x04, 0x4c, 0xc6, - 0x07, 0x81, 0x7e, 0x63, 0x40, 0x25, 0x3b, 0xa7, 0xa1, 0x3b, 0xa3, 0x1a, 0xe3, 0x90, 0x11, 0x7a, - 0xe9, 0x9b, 0x27, 0x53, 0x8a, 0xcf, 0x11, 0x5f, 0xfb, 0xfc, 0xaf, 0xff, 0xf8, 0x72, 0x6c, 0x0d, - 0x5f, 0x10, 0xef, 0x95, 0xf4, 0x15, 0x13, 0xe7, 0x4c, 0xdd, 0x96, 0x2a, 0x0f, 0x8c, 0x4d, 0xc4, - 0xa1, 0x92, 0x9d, 0xf2, 0xd0, 0x42, 0x2d, 0x7e, 0x15, 0xd4, 0xf4, 0xbc, 0x5f, 0x6b, 0x89, 0x57, - 0xc1, 0xd2, 0x09, 0x47, 0x49, 0xbc, 0x2c, 0xfd, 0x2f, 0xa0, 0xf9, 0x61, 0xfe, 0xd1, 0x4f, 0x0d, - 0x98, 0x1d, 0x9c, 0xd3, 0x0a, 0x5d, 0xdf, 0x1f, 0xe5, 0xba, 0x68, 0xe2, 0xc3, 0xeb, 0x12, 0xc4, - 0x25, 0xb4, 0x9a, 0x07, 0xa1, 0xa7, 0xbe, 0xba, 0xab, 0x14, 0xd1, 0x1f, 0x0d, 0x98, 0x19, 0xb8, - 0xd9, 0xe8, 0xee, 0x28, 0xb7, 0xc3, 0x4b, 0xd0, 0xd2, 0xbd, 0x13, 0xeb, 0x29, 0xb4, 0xb7, 0x24, - 0xda, 0x4d, 0x7c, 0x75, 0xe8, 0x91, 0x25, 0xd5, 0xa8, 0x1e, 0xd7, 0x92, 0x07, 0xc6, 0x66, 0xe3, - 0xf7, 0x63, 0x50, 0x4a, 0x9e, 0x2c, 0xbf, 0x34, 0xa0, 0x92, 0x1d, 0xd0, 0x46, 0x67, 0xdb, 0x90, - 0x19, 0x73, 0x74, 0xb6, 0x0d, 0x9b, 0x01, 0xf1, 0x8a, 0x84, 0x5e, 0x45, 0x0b, 0x79, 0xe8, 0xc9, - 0x78, 0xf7, 0x23, 0x03, 0xa6, 0xf3, 0x0d, 0x08, 0x7d, 0x3c, 0x32, 0xad, 0x87, 0x35, 0xac, 0xa5, - 0x82, 0x24, 0x29, 0xca, 0x77, 0x5d, 0xd3, 0xeb, 0xd4, 0x61, 0x32, 0x64, 0x3f, 0x28, 0xc1, 0x64, - 0x5c, 0xf8, 0xd0, 0x17, 0x06, 0xcc, 0x3c, 0xa2, 0x3c, 0x5b, 0x06, 0x0b, 0x73, 0x70, 0x64, 0x58, - 0x86, 0x15, 0x53, 0x7c, 0x59, 0x82, 0xba, 0x88, 0x06, 0x40, 0xa9, 0x3f, 0x01, 0x51, 0xec, 0xf2, - 0x2b, 0x03, 0xce, 0x3f, 0xa2, 0xfc, 0x95, 0x66, 0xef, 0x92, 0x90, 0x33, 0x9b, 0x05, 0xb2, 0x49, - 0xa2, 0x7b, 0x05, 0x45, 0xab, 0x50, 0x43, 0x07, 0xea, 0xe3, 0x02, 0xc5, 0x22, 0x2d, 0x05, 0x79, - 0x53, 0x42, 0xbe, 0x82, 0xf0, 0x50, 0xc8, 0x41, 0x0e, 0xdb, 0xef, 0x0c, 0x58, 0xcc, 0xe1, 0xa0, - 0xe1, 0x1b, 0x3f, 0xec, 0x12, 0xcf, 0xa6, 0xa8, 0x31, 0xd2, 0x7d, 0x2a, 0xac, 0x21, 0xdf, 0x39, - 0x91, 0x8e, 0x02, 0xbc, 0x21, 0x01, 0x63, 0xb4, 0x36, 0x1c, 0x70, 0x06, 0xd2, 0x8f, 0x0d, 0x38, - 0x93, 0x85, 0x1b, 0xa1, 0x9b, 0x05, 0x0e, 0x45, 0x8e, 0xa7, 0x62, 0x1a, 0xde, 0xa5, 0x51, 0xf0, - 0xa2, 0xa2, 0x82, 0xa3, 0xc0, 0xf4, 0x53, 0xcf, 0xbf, 0x32, 0x60, 0x3e, 0x8b, 0x65, 0x8b, 0x74, - 0x04, 0xc6, 0xdc, 0xa5, 0x2d, 0x86, 0xa4, 0xa5, 0x35, 0xb2, 0x8d, 0x51, 0xc8, 0xb4, 0x02, 0xbe, - 0x2a, 0x01, 0xae, 0xa2, 0x8b, 0x43, 0x01, 0xee, 0x6b, 0x14, 0x7d, 0x38, 0x9b, 0x45, 0xf7, 0x9d, - 0x1e, 0xed, 0xd1, 0xc2, 0xbb, 0x71, 0x75, 0x94, 0x77, 0xa9, 0x8e, 0xb1, 0x74, 0xbd, 0x8c, 0x96, - 0x86, 0xba, 0xfe, 0x4c, 0xba, 0x70, 0xa0, 0xf4, 0x88, 0xf2, 0x5d, 0x4a, 0xc3, 0xe2, 0xab, 0xb8, - 0x5c, 0xe0, 0x4e, 0x6a, 0x8d, 0xf0, 0x12, 0x08, 0x99, 0xc6, 0x9f, 0x27, 0x60, 0xf2, 0xb1, 0xfc, - 0xff, 0x86, 0x7e, 0x11, 0xa7, 0xf0, 0x56, 0x32, 0xd6, 0xa4, 0xef, 0x90, 0x42, 0x00, 0x23, 0x1b, - 0xc3, 0xf0, 0xf7, 0x0c, 0xbe, 0x29, 0xa1, 0x5d, 0x43, 0x57, 0xf2, 0xd0, 0xe2, 0x3f, 0x81, 0xf2, - 0xa7, 0x9e, 0x65, 0xa7, 0xde, 0xe3, 0x16, 0xc9, 0xb3, 0x73, 0xfc, 0x7f, 0x51, 0x9e, 0x86, 0x3d, - 0x40, 0xf0, 0x0d, 0x09, 0xe8, 0x2a, 0xba, 0x3c, 0x14, 0x90, 0x98, 0x13, 0xeb, 0x34, 0x71, 0xfd, - 0x43, 0x03, 0x66, 0x5f, 0xf2, 0x90, 0x92, 0xee, 0x56, 0xf2, 0xc0, 0x28, 0xc4, 0x73, 0x25, 0xc5, - 0x13, 0x47, 0xbe, 0x16, 0x06, 0x76, 0xad, 0x7f, 0xbb, 0x96, 0x1d, 0x4c, 0x71, 0x5d, 0xfa, 0xbf, - 0x8e, 0xd6, 0x8b, 0xfd, 0x27, 0xa5, 0x52, 0x38, 0xbe, 0x65, 0xa0, 0x9f, 0x19, 0x30, 0x17, 0xa3, - 0x78, 0x95, 0x7d, 0x1b, 0x15, 0x02, 0xb9, 0x79, 0x9c, 0xc0, 0x24, 0x80, 0x1a, 0x12, 0xd0, 0x4d, - 0xb4, 0x59, 0x0c, 0x28, 0xa5, 0x6a, 0x4c, 0x8d, 0x7f, 0x8d, 0xc3, 0x84, 0x78, 0x14, 0xa3, 0xef, - 0x01, 0xa4, 0x13, 0x7d, 0x21, 0xa4, 0xc6, 0x28, 0x48, 0x1f, 0xbe, 0x0a, 0xf0, 0x25, 0x09, 0xec, - 0x02, 0x3a, 0x9f, 0x07, 0xc6, 0x3c, 0xc6, 0x19, 0xe9, 0xb0, 0x77, 0xd4, 0x41, 0x9f, 0x1b, 0x70, - 0xea, 0xa9, 0xef, 0x32, 0x0f, 0xdd, 0x18, 0xf9, 0xfb, 0x25, 0xfd, 0x43, 0x30, 0x3a, 0x40, 0xd9, - 0xe7, 0xbe, 0xee, 0xf3, 0x78, 0x2e, 0x8f, 0xa3, 0x23, 0xfc, 0x8a, 0x69, 0xf2, 0x0b, 0x03, 0x26, - 0xc5, 0x33, 0xa5, 0x17, 0xfc, 0x2f, 0x51, 0xac, 0x4a, 0x14, 0xe7, 0xf1, 0xc0, 0x6c, 0x19, 0x49, - 0xc7, 0x02, 0xc6, 0x77, 0x61, 0xf2, 0xa9, 0xef, 0xfa, 0x3d, 0x5e, 0x78, 0x08, 0x45, 0x63, 0x44, - 0x81, 0xe9, 0x8e, 0xb4, 0xf6, 0xc0, 0xd8, 0xdc, 0xaa, 0xfc, 0xe9, 0xfd, 0x8a, 0xf1, 0x97, 0xf7, - 0x2b, 0xc6, 0xdf, 0xdf, 0xaf, 0x18, 0xfb, 0x93, 0x52, 0xfd, 0xce, 0x7f, 0x02, 0x00, 0x00, 0xff, - 0xff, 0x1b, 0x14, 0x9b, 0x39, 0x2e, 0x18, 0x00, 0x00, + 0x80, 0x84, 0xb4, 0xff, 0x02, 0xdc, 0x90, 0xf8, 0x03, 0x40, 0x11, 0x17, 0xe0, 0x9f, 0x40, 0x55, + 0x5d, 0xd5, 0x1f, 0x93, 0xe9, 0x6d, 0x5b, 0x88, 0x0b, 0xb7, 0xae, 0xf7, 0xf9, 0xab, 0x57, 0xaf, + 0x5e, 0xbd, 0xd7, 0x70, 0xc3, 0x0f, 0x3c, 0xe6, 0x35, 0x06, 0xa4, 0xeb, 0x58, 0x84, 0x79, 0x41, + 0x83, 0x98, 0xa6, 0xd7, 0x77, 0x59, 0xd8, 0x18, 0x34, 0x1b, 0x6f, 0xe9, 0x81, 0x41, 0x7c, 0xa7, + 0x2e, 0x64, 0xd0, 0x0a, 0x65, 0x1d, 0x1a, 0xd0, 0x7e, 0xaf, 0x1e, 0x4b, 0xd7, 0x95, 0x74, 0x7d, + 0xd0, 0x5c, 0x5a, 0x8b, 0x4c, 0x1d, 0x50, 0x62, 0x7a, 0x6e, 0x23, 0xf0, 0xcd, 0xc6, 0xe0, 0x4e, + 0xa3, 0x43, 0x49, 0x97, 0x75, 0x22, 0x0b, 0x4b, 0xab, 0x94, 0x75, 0x1a, 0x83, 0x3b, 0xa4, 0xeb, + 0x77, 0xc8, 0x1d, 0x29, 0x68, 0x98, 0x1d, 0xe2, 0xb8, 0x52, 0x60, 0x31, 0x23, 0xe0, 0x7a, 0x16, + 0x95, 0x8c, 0xe5, 0x0c, 0x23, 0xf1, 0x2f, 0xb9, 0xb6, 0xe7, 0xd9, 0x5d, 0xda, 0x20, 0xbe, 0xd3, + 0x20, 0xae, 0xeb, 0x31, 0xc2, 0x1c, 0xcf, 0x0d, 0x25, 0xf7, 0xa2, 0xe4, 0x8a, 0xd5, 0x41, 0xff, + 0x4d, 0x83, 0xf6, 0x7c, 0x76, 0x2c, 0x99, 0x1f, 0xd9, 0x0e, 0xeb, 0xf4, 0x0f, 0xea, 0xa6, 0xd7, + 0x6b, 0xd8, 0x9e, 0xed, 0x25, 0x52, 0x7c, 0x15, 0xed, 0x88, 0x7f, 0x45, 0xe2, 0xf8, 0xdf, 0x63, + 0x30, 0xd7, 0x0a, 0x28, 0x61, 0xf4, 0x35, 0xe9, 0x76, 0x29, 0xd3, 0xe9, 0x67, 0x7d, 0x1a, 0x32, + 0xf4, 0x1c, 0xe0, 0x90, 0x1e, 0xf7, 0x88, 0x4b, 0x6c, 0x1a, 0xd4, 0xb4, 0x35, 0x6d, 0x63, 0xba, + 0x59, 0xaf, 0x7f, 0x7d, 0xc0, 0xea, 0xbb, 0xb1, 0xc6, 0xae, 0xe3, 0x5a, 0x7a, 0xca, 0x02, 0x5a, + 0x87, 0x99, 0xb7, 0xc2, 0x81, 0xe1, 0x93, 0x30, 0x7c, 0xeb, 0x05, 0x56, 0x6d, 0x6c, 0x4d, 0xdb, + 0x98, 0xd4, 0xa7, 0x23, 0xf2, 0x9e, 0xa4, 0xa2, 0x25, 0x28, 0xf7, 0x5c, 0xda, 0xf3, 0x5c, 0xc7, + 0xac, 0x8d, 0x0b, 0x89, 0x78, 0x8d, 0x2e, 0x43, 0xd5, 0xed, 0xf7, 0x0c, 0xe5, 0xb2, 0x36, 0xb1, + 0xa6, 0x6d, 0x4c, 0xe8, 0x15, 0xb7, 0xdf, 0x7b, 0x24, 0x49, 0x68, 0x15, 0x2a, 0x01, 0xed, 0x79, + 0x8c, 0x1a, 0xc4, 0xb2, 0x82, 0xda, 0x19, 0x61, 0x01, 0x22, 0xd2, 0x23, 0xcb, 0x0a, 0xd0, 0x75, + 0x98, 0x91, 0x02, 0x66, 0xc0, 0xc1, 0xb0, 0x4e, 0xad, 0x24, 0x84, 0xa6, 0x22, 0x72, 0x2b, 0x60, + 0x7b, 0x84, 0x75, 0x52, 0x72, 0x87, 0xf4, 0x38, 0x92, 0x3b, 0x9b, 0x96, 0xdb, 0xa5, 0xc7, 0x42, + 0xee, 0x26, 0x20, 0x65, 0x8f, 0x24, 0x26, 0xcb, 0x42, 0x54, 0x5a, 0x68, 0x11, 0x69, 0x14, 0x7f, + 0x0a, 0xf3, 0xd9, 0x60, 0x87, 0xbe, 0xe7, 0x86, 0x14, 0x7d, 0x1b, 0x4a, 0x51, 0x18, 0x44, 0xa4, + 0x2b, 0xc5, 0x91, 0xce, 0xea, 0xeb, 0x52, 0x1b, 0x7f, 0xa5, 0xc1, 0x62, 0xdb, 0x72, 0x58, 0xc4, + 0x6e, 0x79, 0xee, 0x1b, 0xc7, 0x56, 0x27, 0x3a, 0x14, 0x19, 0xed, 0x24, 0x91, 0x19, 0x3b, 0x61, + 0x64, 0xc6, 0x4f, 0x1e, 0x99, 0x89, 0xd1, 0x91, 0xb9, 0x07, 0xb5, 0x1d, 0xea, 0xd2, 0x80, 0x30, + 0xfa, 0x4c, 0x1e, 0x77, 0x1c, 0x9d, 0x74, 0x4a, 0x68, 0xd9, 0x94, 0xc0, 0x3f, 0xd1, 0x60, 0x7a, + 0x28, 0x98, 0xab, 0x50, 0x89, 0x53, 0x8d, 0x75, 0xd4, 0x46, 0x55, 0x9a, 0xb1, 0x0e, 0x7a, 0x0d, + 0x33, 0x49, 0x66, 0x1a, 0x87, 0x8e, 0x1b, 0xe5, 0xe2, 0xe9, 0x13, 0x7c, 0xfa, 0x30, 0xb3, 0xc6, + 0x3f, 0xd7, 0x60, 0xee, 0xa9, 0x13, 0x32, 0x95, 0x8d, 0x2a, 0xf4, 0x1f, 0xc1, 0x9c, 0x4d, 0x99, + 0x61, 0x51, 0xdf, 0x0b, 0x1d, 0x66, 0xb0, 0x23, 0xc3, 0x22, 0x8c, 0x08, 0x64, 0x65, 0x7d, 0xd6, + 0xa6, 0x6c, 0x3b, 0xe2, 0xec, 0x1f, 0x6d, 0x13, 0x46, 0xd0, 0x45, 0x98, 0xf4, 0x89, 0x4d, 0x8d, + 0xd0, 0x79, 0x47, 0x05, 0xb2, 0x33, 0x7a, 0x99, 0x13, 0x5e, 0x3a, 0xef, 0x28, 0xba, 0x04, 0x20, + 0x98, 0xcc, 0x3b, 0xa4, 0xae, 0x0c, 0xbc, 0x10, 0xdf, 0xe7, 0x04, 0x34, 0x0b, 0xe3, 0xa4, 0xdb, + 0x15, 0x51, 0x2e, 0xeb, 0xfc, 0x13, 0xff, 0x56, 0x83, 0xf9, 0x2c, 0x28, 0x19, 0xa7, 0x16, 0x94, + 0xe3, 0x9b, 0xa4, 0xad, 0x8d, 0x6f, 0x54, 0x9a, 0xeb, 0x45, 0xfb, 0x97, 0x36, 0xf4, 0x58, 0x91, + 0x27, 0x83, 0x4b, 0x8f, 0x78, 0xa8, 0x63, 0x4c, 0x32, 0x69, 0x38, 0x79, 0x2f, 0xc6, 0x75, 0x09, + 0x80, 0x79, 0x8c, 0x74, 0xa3, 0x4d, 0x8d, 0x8b, 0x4d, 0x4d, 0x0a, 0x0a, 0xdf, 0x15, 0xfe, 0x83, + 0x06, 0x67, 0xa5, 0x71, 0xd4, 0x84, 0xf3, 0xd2, 0xbb, 0xe3, 0xda, 0x86, 0xdf, 0x3f, 0xe8, 0x3a, + 0x26, 0x4f, 0x35, 0x11, 0xaf, 0xaa, 0x3e, 0x97, 0x30, 0xf7, 0x04, 0x6f, 0x97, 0x1e, 0xf3, 0xca, + 0x20, 0x21, 0x19, 0x2e, 0xe9, 0x51, 0x89, 0xa1, 0x22, 0x69, 0xcf, 0x49, 0x8f, 0x72, 0xa4, 0xc3, + 0x07, 0x30, 0x2e, 0x0c, 0x4e, 0x59, 0x99, 0xe8, 0xaf, 0x73, 0xb9, 0xc0, 0x19, 0x88, 0x92, 0x9b, + 0xce, 0xd9, 0xe9, 0x84, 0x2c, 0x52, 0x76, 0x17, 0xa6, 0x55, 0x3c, 0x92, 0x2b, 0x96, 0xc0, 0x8d, + 0x82, 0x5a, 0xd5, 0xc1, 0x57, 0x28, 0x43, 0x54, 0x83, 0xb3, 0x8e, 0x6b, 0x39, 0x26, 0x0d, 0x6b, + 0x63, 0x6b, 0xe3, 0x1b, 0x13, 0xba, 0x5a, 0xe2, 0x4f, 0xa1, 0xf2, 0xa8, 0xcf, 0x3a, 0xca, 0xd2, + 0x12, 0x94, 0xe3, 0x3a, 0x29, 0x53, 0x5e, 0xad, 0xd1, 0x5d, 0x38, 0xaf, 0xbe, 0x0d, 0x93, 0x5f, + 0xf1, 0xa0, 0x27, 0x40, 0xc9, 0x4d, 0xcf, 0x2b, 0x66, 0x2b, 0xc5, 0xc3, 0x2f, 0xa0, 0x1a, 0xd9, + 0x97, 0x87, 0x3f, 0x0f, 0x67, 0xa2, 0xd3, 0x8a, 0xac, 0x47, 0x0b, 0x74, 0x03, 0x66, 0xc5, 0x87, + 0x41, 0x8f, 0x7c, 0x27, 0x48, 0xac, 0x4e, 0xe8, 0x33, 0x82, 0xde, 0x8e, 0xc9, 0xf8, 0x6f, 0x1a, + 0x2c, 0x3c, 0xf7, 0x2c, 0xda, 0xf2, 0x5c, 0x97, 0x9a, 0x9c, 0x14, 0xdb, 0xbe, 0x0d, 0xf3, 0xf2, + 0x29, 0xe4, 0x0f, 0x9e, 0x41, 0x5d, 0xcb, 0xf7, 0x1c, 0x97, 0x49, 0x57, 0x28, 0xe2, 0x71, 0xdd, + 0xb6, 0xe4, 0xa0, 0x65, 0x98, 0x34, 0x23, 0x3b, 0x34, 0xba, 0x8b, 0x65, 0x3d, 0x21, 0xf0, 0xa8, + 0x85, 0xc7, 0xae, 0xe9, 0xb8, 0xb6, 0x38, 0xb1, 0xb2, 0xae, 0x96, 0xfc, 0xd8, 0x6d, 0xea, 0xd2, + 0xd0, 0x09, 0x0d, 0xe6, 0xf4, 0xa8, 0x7a, 0x10, 0x24, 0x6d, 0xdf, 0xe9, 0x51, 0xf4, 0x00, 0x6a, + 0xea, 0xd8, 0x4d, 0xcf, 0x65, 0x01, 0x31, 0x99, 0x28, 0x80, 0x34, 0x0c, 0xc5, 0xeb, 0x50, 0xd5, + 0x17, 0x24, 0xbf, 0x25, 0xd9, 0x8f, 0x22, 0x2e, 0xfe, 0x3e, 0xbf, 0x38, 0x9e, 0x1d, 0x2a, 0x94, + 0xf1, 0xfe, 0xee, 0xc1, 0x62, 0x7c, 0x3d, 0x8c, 0xae, 0x67, 0x87, 0xc3, 0x5b, 0x3c, 0x1f, 0xb3, + 0xd3, 0xfa, 0xa9, 0xb8, 0x64, 0x95, 0xc6, 0xd2, 0x71, 0x49, 0x6b, 0xe0, 0x1d, 0x98, 0x79, 0x45, + 0x83, 0x30, 0x1d, 0xdc, 0x05, 0x28, 0x45, 0x82, 0xd2, 0x97, 0x5c, 0xf1, 0x10, 0xc6, 0x5e, 0xa5, + 0xc5, 0x84, 0x80, 0xbf, 0xd4, 0xe0, 0x7c, 0xab, 0x43, 0x5c, 0x9b, 0xaa, 0x87, 0x56, 0x65, 0xda, + 0x0d, 0x98, 0x35, 0xfb, 0x41, 0x40, 0xdd, 0xd4, 0xcb, 0x1c, 0x59, 0x9e, 0x91, 0xf4, 0xf4, 0xd3, + 0x3c, 0xf4, 0x78, 0x9f, 0x20, 0x29, 0xc7, 0xbf, 0x26, 0x29, 0x1f, 0xc0, 0xb9, 0xc7, 0x24, 0x1c, + 0x2a, 0xdf, 0x57, 0x60, 0x4a, 0x96, 0x6f, 0x7a, 0xe4, 0x84, 0xa2, 0x36, 0xf1, 0x33, 0xaf, 0x46, + 0xc4, 0xb6, 0xa0, 0xe1, 0x01, 0x2c, 0x3c, 0xe9, 0xf9, 0x5e, 0xc0, 0xf8, 0xb5, 0x62, 0x5e, 0x40, + 0x53, 0xb5, 0x16, 0x1d, 0x2a, 0x9a, 0xe1, 0x08, 0x19, 0x6a, 0x89, 0xab, 0x38, 0xa9, 0x9f, 0x8b, + 0x39, 0x4f, 0x24, 0x23, 0x2b, 0x3e, 0xb4, 0xbb, 0x44, 0x5c, 0x85, 0x00, 0xef, 0xc2, 0xe2, 0x07, + 0x7e, 0x93, 0xac, 0x57, 0xee, 0x8c, 0x0f, 0xab, 0x00, 0x52, 0xbc, 0xb8, 0x66, 0x85, 0xf8, 0x35, + 0xa0, 0xc7, 0x24, 0xfc, 0x24, 0xa4, 0xd6, 0x6b, 0x7a, 0x10, 0xdb, 0xc1, 0x30, 0xd5, 0x21, 0xa1, + 0x11, 0x3a, 0xb6, 0x4b, 0x2d, 0xa3, 0xef, 0xcb, 0xfd, 0x57, 0x3a, 0x24, 0x7c, 0x29, 0x68, 0x9f, + 0xf8, 0xbc, 0x9a, 0x72, 0x19, 0xd9, 0x33, 0xc8, 0x0b, 0xd3, 0x51, 0xa1, 0xc4, 0x18, 0xaa, 0x3c, + 0x8d, 0x62, 0x93, 0x08, 0x26, 0x78, 0xc6, 0xc9, 0x28, 0x88, 0x6f, 0xfc, 0xeb, 0x31, 0x98, 0xdf, + 0x12, 0xa9, 0xf3, 0x92, 0x11, 0xd6, 0x0f, 0xff, 0xcf, 0x6e, 0x2f, 0xfa, 0x16, 0x80, 0x68, 0xc4, + 0x8d, 0x0e, 0x25, 0x96, 0x68, 0xf1, 0x2a, 0xcd, 0xb5, 0xe4, 0x7d, 0xa3, 0xac, 0x53, 0x57, 0xed, + 0x77, 0xbd, 0xc5, 0x05, 0x1f, 0x53, 0x62, 0xe9, 0x93, 0xa6, 0xfa, 0xdc, 0xbc, 0x0f, 0xd3, 0xd9, + 0xe7, 0x1e, 0x55, 0xe0, 0xec, 0x76, 0x5b, 0x7f, 0xf2, 0xaa, 0xbd, 0x3d, 0xfb, 0x0d, 0x54, 0x85, + 0xf2, 0x93, 0x67, 0x7b, 0x2f, 0xf4, 0xfd, 0xf6, 0xf6, 0xac, 0x86, 0x00, 0x4a, 0x7a, 0xfb, 0xd9, + 0x8b, 0xfd, 0xf6, 0xec, 0x58, 0xf3, 0x9f, 0x13, 0x50, 0x8a, 0x0e, 0x02, 0xfd, 0x46, 0x83, 0x6a, + 0xba, 0xe1, 0x43, 0x77, 0x8b, 0x5e, 0xd8, 0x11, 0xbd, 0xf8, 0xd2, 0x37, 0x4f, 0xa7, 0x14, 0x9d, + 0x23, 0xbe, 0xfe, 0xf9, 0x5f, 0xff, 0xf1, 0xe5, 0xd8, 0x1a, 0xbe, 0xc8, 0x07, 0x9f, 0x64, 0x1c, + 0x8a, 0x72, 0xa6, 0x61, 0x0a, 0x95, 0x87, 0xda, 0x26, 0x62, 0x50, 0x4d, 0xb7, 0x8b, 0x68, 0xa1, + 0x1e, 0x8d, 0x17, 0x75, 0x35, 0x38, 0xd4, 0xdb, 0x7c, 0xbc, 0x58, 0x3a, 0x65, 0x4f, 0x8a, 0x97, + 0x85, 0xff, 0x05, 0x34, 0x3f, 0xca, 0x3f, 0xfa, 0xa9, 0x06, 0xb3, 0xc3, 0x0d, 0x5f, 0xae, 0xeb, + 0x07, 0x45, 0xae, 0xf3, 0x5a, 0x47, 0xbc, 0x2e, 0x40, 0x5c, 0x46, 0xab, 0x59, 0x10, 0xaa, 0x7d, + 0x6c, 0xd8, 0x52, 0x11, 0xfd, 0x51, 0x83, 0x99, 0xa1, 0x9b, 0x8d, 0xee, 0x15, 0xb9, 0x1d, 0x5d, + 0x82, 0x96, 0xee, 0x9f, 0x5a, 0x4f, 0xa2, 0xbd, 0x2d, 0xd0, 0x6e, 0xe2, 0x6b, 0x23, 0x8f, 0x2c, + 0xae, 0x46, 0x8d, 0xa8, 0x96, 0x3c, 0xd4, 0x36, 0x9b, 0xbf, 0x1f, 0x83, 0x72, 0x3c, 0xfb, 0xfc, + 0x52, 0x83, 0x6a, 0xba, 0xd3, 0x2b, 0xce, 0xb6, 0x11, 0xcd, 0x6a, 0x71, 0xb6, 0x8d, 0x6a, 0x26, + 0xf1, 0x8a, 0x80, 0x5e, 0x43, 0x0b, 0x59, 0xe8, 0x71, 0x9f, 0xf8, 0x23, 0x0d, 0xa6, 0xb3, 0x0f, + 0x10, 0xfa, 0xb8, 0x30, 0xad, 0x47, 0x3d, 0x58, 0x4b, 0x39, 0x49, 0x92, 0x97, 0xef, 0xaa, 0xa6, + 0x37, 0xa8, 0xe5, 0x88, 0x90, 0xfd, 0xa0, 0x0c, 0xa5, 0xa8, 0xf0, 0xa1, 0x2f, 0x34, 0x98, 0xd9, + 0xa1, 0x2c, 0x5d, 0x06, 0x73, 0x73, 0xb0, 0x30, 0x2c, 0xa3, 0x8a, 0x29, 0xbe, 0x22, 0x40, 0x5d, + 0x42, 0x43, 0xa0, 0xe4, 0x2f, 0x85, 0x30, 0x72, 0xf9, 0x95, 0x06, 0x17, 0x76, 0x28, 0x7b, 0xa5, + 0xd8, 0x7b, 0x24, 0x60, 0x8e, 0xe9, 0xf8, 0xe2, 0x91, 0x44, 0xf7, 0x73, 0x8a, 0x56, 0xae, 0x86, + 0x0a, 0xd4, 0xc7, 0x39, 0x8a, 0x79, 0x5a, 0x12, 0xf2, 0xa6, 0x80, 0x7c, 0x15, 0xe1, 0x91, 0x90, + 0xfd, 0x0c, 0xb6, 0xdf, 0x69, 0xb0, 0x98, 0xc1, 0x41, 0x83, 0x37, 0x5e, 0xd0, 0x23, 0xae, 0x49, + 0x51, 0xb3, 0xd0, 0x7d, 0x22, 0xac, 0x20, 0xdf, 0x3d, 0x95, 0x8e, 0x04, 0xbc, 0x21, 0x00, 0x63, + 0xb4, 0x36, 0x1a, 0x70, 0x0a, 0xd2, 0x8f, 0x35, 0x98, 0x4a, 0xc3, 0x0d, 0xd1, 0xad, 0x1c, 0x87, + 0x3c, 0xc7, 0x13, 0x31, 0x05, 0xef, 0x72, 0x11, 0xbc, 0x30, 0xaf, 0xe0, 0x48, 0x30, 0x83, 0xc4, + 0xf3, 0xaf, 0x34, 0x98, 0x4f, 0x63, 0xd9, 0x22, 0x5d, 0x8e, 0x31, 0x73, 0x69, 0xf3, 0x21, 0x29, + 0x69, 0x85, 0x6c, 0xa3, 0x08, 0x99, 0x52, 0xc0, 0xd7, 0x04, 0xc0, 0x55, 0x74, 0x69, 0x24, 0xc0, + 0x03, 0x85, 0x62, 0x00, 0xe7, 0xd2, 0xe8, 0xbe, 0xd3, 0xa7, 0x7d, 0x9a, 0x7b, 0x37, 0xae, 0x15, + 0x79, 0x17, 0xea, 0x18, 0x0b, 0xd7, 0xcb, 0x68, 0x69, 0xa4, 0xeb, 0xcf, 0x84, 0x0b, 0x0b, 0xca, + 0x3b, 0x94, 0xed, 0x51, 0x1a, 0xe4, 0x5f, 0xc5, 0xe5, 0x1c, 0x77, 0x42, 0xab, 0xc0, 0x8b, 0xcf, + 0x65, 0x9a, 0x7f, 0x3e, 0x03, 0xa5, 0xc7, 0xe2, 0x47, 0x1e, 0xfa, 0x45, 0x94, 0xc2, 0x5b, 0x71, + 0x5b, 0x93, 0x0c, 0x34, 0xb9, 0x00, 0x0a, 0x1f, 0x86, 0xd1, 0x83, 0x11, 0xbe, 0x25, 0xa0, 0x5d, + 0x47, 0x57, 0xb3, 0xd0, 0xa2, 0x5f, 0x8a, 0xe2, 0xef, 0xa0, 0x61, 0x26, 0xde, 0xa3, 0x27, 0x92, + 0xa5, 0x07, 0x82, 0xff, 0xa2, 0x3c, 0x8d, 0x9a, 0x64, 0xf0, 0x4d, 0x01, 0xe8, 0x1a, 0xba, 0x32, + 0x12, 0x10, 0xef, 0x13, 0x1b, 0x34, 0x76, 0xfd, 0x3d, 0x00, 0x9e, 0x12, 0xd1, 0x3c, 0x92, 0x0b, + 0xa4, 0x51, 0x04, 0x64, 0x68, 0xa0, 0xc1, 0x57, 0x05, 0x86, 0x15, 0xb4, 0x3c, 0x12, 0xc3, 0x40, + 0xba, 0xfb, 0xa1, 0x06, 0xb3, 0x2f, 0x59, 0x40, 0x49, 0x6f, 0x2b, 0x1e, 0x93, 0x72, 0x31, 0x5c, + 0x4d, 0x30, 0x44, 0xc7, 0x5e, 0x0f, 0x7c, 0xb3, 0x3e, 0xb8, 0x53, 0x4f, 0x77, 0xc5, 0xb8, 0x21, + 0x1c, 0xdf, 0x40, 0xeb, 0xf9, 0x9b, 0x8f, 0xeb, 0x34, 0x77, 0x7c, 0x5b, 0x43, 0x3f, 0xd3, 0x60, + 0x2e, 0x42, 0xf1, 0x2a, 0x3d, 0xe1, 0xe5, 0x02, 0xb9, 0x75, 0x92, 0x53, 0x89, 0x01, 0x35, 0x05, + 0xa0, 0x5b, 0x68, 0x33, 0x1f, 0x50, 0x42, 0x55, 0x98, 0x9a, 0xff, 0x1a, 0x87, 0x09, 0x3e, 0xda, + 0xf3, 0xf3, 0x49, 0xc6, 0x89, 0x5c, 0x48, 0xcd, 0x22, 0x48, 0x1f, 0x8e, 0x24, 0xf8, 0xb2, 0x00, + 0x76, 0x11, 0x5d, 0xc8, 0x02, 0x73, 0x5c, 0x87, 0x39, 0xa4, 0xeb, 0xbc, 0xa3, 0x16, 0xfa, 0x5c, + 0x83, 0x33, 0x4f, 0x3d, 0xdb, 0x71, 0xd1, 0xcd, 0xc2, 0x9f, 0x48, 0xc9, 0x7f, 0x8e, 0xe2, 0x00, + 0xa5, 0x7f, 0x5a, 0xa8, 0x26, 0x03, 0xcf, 0x65, 0x71, 0x74, 0xb9, 0x5f, 0xde, 0xca, 0x7e, 0xa1, + 0x41, 0x89, 0xcf, 0x48, 0x7d, 0xff, 0x7f, 0x89, 0x62, 0x55, 0xa0, 0xb8, 0x80, 0x87, 0x1a, 0xdb, + 0x50, 0x38, 0xe6, 0x30, 0xbe, 0x0b, 0xa5, 0xa7, 0x9e, 0xed, 0xf5, 0x59, 0xee, 0x21, 0xe4, 0xf5, + 0x30, 0x39, 0xa6, 0xbb, 0xc2, 0xda, 0x43, 0x6d, 0x73, 0xab, 0xfa, 0xa7, 0xf7, 0x2b, 0xda, 0x5f, + 0xde, 0xaf, 0x68, 0x7f, 0x7f, 0xbf, 0xa2, 0x1d, 0x94, 0x84, 0xfa, 0xdd, 0xff, 0x04, 0x00, 0x00, + 0xff, 0xff, 0x16, 0x34, 0x84, 0x21, 0xf4, 0x18, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -2036,6 +2095,7 @@ var _Beacon_serviceDesc = grpc.ServiceDesc{ type HealthClient interface { GetBeaconNodeConnection(ctx context.Context, in *types.Empty, opts ...grpc.CallOption) (*NodeConnectionResponse, error) GetLogsEndpoints(ctx context.Context, in *types.Empty, opts ...grpc.CallOption) (*LogsEndpointResponse, error) + GetVersion(ctx context.Context, in *types.Empty, opts ...grpc.CallOption) (*VersionResponse, error) StreamBeaconLogs(ctx context.Context, in *types.Empty, opts ...grpc.CallOption) (Health_StreamBeaconLogsClient, error) StreamValidatorLogs(ctx context.Context, in *types.Empty, opts ...grpc.CallOption) (Health_StreamValidatorLogsClient, error) } @@ -2066,6 +2126,15 @@ func (c *healthClient) GetLogsEndpoints(ctx context.Context, in *types.Empty, op return out, nil } +func (c *healthClient) GetVersion(ctx context.Context, in *types.Empty, opts ...grpc.CallOption) (*VersionResponse, error) { + out := new(VersionResponse) + err := c.cc.Invoke(ctx, "/ethereum.validator.accounts.v2.Health/GetVersion", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *healthClient) StreamBeaconLogs(ctx context.Context, in *types.Empty, opts ...grpc.CallOption) (Health_StreamBeaconLogsClient, error) { stream, err := c.cc.NewStream(ctx, &_Health_serviceDesc.Streams[0], "/ethereum.validator.accounts.v2.Health/StreamBeaconLogs", opts...) if err != nil { @@ -2134,6 +2203,7 @@ func (x *healthStreamValidatorLogsClient) Recv() (*LogsResponse, error) { type HealthServer interface { GetBeaconNodeConnection(context.Context, *types.Empty) (*NodeConnectionResponse, error) GetLogsEndpoints(context.Context, *types.Empty) (*LogsEndpointResponse, error) + GetVersion(context.Context, *types.Empty) (*VersionResponse, error) StreamBeaconLogs(*types.Empty, Health_StreamBeaconLogsServer) error StreamValidatorLogs(*types.Empty, Health_StreamValidatorLogsServer) error } @@ -2148,6 +2218,9 @@ func (*UnimplementedHealthServer) GetBeaconNodeConnection(ctx context.Context, r func (*UnimplementedHealthServer) GetLogsEndpoints(ctx context.Context, req *types.Empty) (*LogsEndpointResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GetLogsEndpoints not implemented") } +func (*UnimplementedHealthServer) GetVersion(ctx context.Context, req *types.Empty) (*VersionResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetVersion not implemented") +} func (*UnimplementedHealthServer) StreamBeaconLogs(req *types.Empty, srv Health_StreamBeaconLogsServer) error { return status.Errorf(codes.Unimplemented, "method StreamBeaconLogs not implemented") } @@ -2195,6 +2268,24 @@ func _Health_GetLogsEndpoints_Handler(srv interface{}, ctx context.Context, dec return interceptor(ctx, in, info, handler) } +func _Health_GetVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(types.Empty) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(HealthServer).GetVersion(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ethereum.validator.accounts.v2.Health/GetVersion", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(HealthServer).GetVersion(ctx, req.(*types.Empty)) + } + return interceptor(ctx, in, info, handler) +} + func _Health_StreamBeaconLogs_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(types.Empty) if err := stream.RecvMsg(m); err != nil { @@ -2249,6 +2340,10 @@ var _Health_serviceDesc = grpc.ServiceDesc{ MethodName: "GetLogsEndpoints", Handler: _Health_GetLogsEndpoints_Handler, }, + { + MethodName: "GetVersion", + Handler: _Health_GetVersion_Handler, + }, }, Streams: []grpc.StreamDesc{ { @@ -3099,6 +3194,47 @@ func (m *LogsEndpointResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *VersionResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *VersionResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *VersionResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.Validator) > 0 { + i -= len(m.Validator) + copy(dAtA[i:], m.Validator) + i = encodeVarintWebApi(dAtA, i, uint64(len(m.Validator))) + i-- + dAtA[i] = 0x12 + } + if len(m.Beacon) > 0 { + i -= len(m.Beacon) + copy(dAtA[i:], m.Beacon) + i = encodeVarintWebApi(dAtA, i, uint64(len(m.Beacon))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *ChangePasswordRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -3747,6 +3883,26 @@ func (m *LogsEndpointResponse) Size() (n int) { return n } +func (m *VersionResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Beacon) + if l > 0 { + n += 1 + l + sovWebApi(uint64(l)) + } + l = len(m.Validator) + if l > 0 { + n += 1 + l + sovWebApi(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func (m *ChangePasswordRequest) Size() (n int) { if m == nil { return 0 @@ -5800,6 +5956,124 @@ func (m *LogsEndpointResponse) Unmarshal(dAtA []byte) error { } return nil } +func (m *VersionResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowWebApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: VersionResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: VersionResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Beacon", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowWebApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthWebApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthWebApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Beacon = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Validator", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowWebApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthWebApi + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthWebApi + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Validator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipWebApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthWebApi + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthWebApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *ChangePasswordRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/proto/validator/accounts/v2/web_api.proto b/proto/validator/accounts/v2/web_api.proto index 300bfb0c23..10621ea385 100644 --- a/proto/validator/accounts/v2/web_api.proto +++ b/proto/validator/accounts/v2/web_api.proto @@ -105,6 +105,11 @@ service Health { get: "/v2/validator/health/logs/endpoints" }; } + rpc GetVersion(google.protobuf.Empty) returns (VersionResponse) { + option (google.api.http) = { + get: "/v2/validator/health/version" + }; + } rpc StreamBeaconLogs(google.protobuf.Empty) returns (stream ethereum.beacon.rpc.v1.LogsResponse) { option (google.api.http) = { get: "/v2/validator/health/logs/beacon/stream" @@ -268,6 +273,11 @@ message LogsEndpointResponse { string beacon_logs_endpoint = 2; } +message VersionResponse { + string beacon = 1; + string validator = 2; +} + message ChangePasswordRequest { string current_password = 1; string password = 2; diff --git a/proto/validator/accounts/v2_gateway/web_api.pb.go b/proto/validator/accounts/v2_gateway/web_api.pb.go index cd9abae2fb..c772f9b170 100755 --- a/proto/validator/accounts/v2_gateway/web_api.pb.go +++ b/proto/validator/accounts/v2_gateway/web_api.pb.go @@ -911,6 +911,61 @@ func (x *LogsEndpointResponse) GetBeaconLogsEndpoint() string { return "" } +type VersionResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Beacon string `protobuf:"bytes,1,opt,name=beacon,proto3" json:"beacon,omitempty"` + Validator string `protobuf:"bytes,2,opt,name=validator,proto3" json:"validator,omitempty"` +} + +func (x *VersionResponse) Reset() { + *x = VersionResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VersionResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VersionResponse) ProtoMessage() {} + +func (x *VersionResponse) ProtoReflect() protoreflect.Message { + mi := &file_proto_validator_accounts_v2_web_api_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 VersionResponse.ProtoReflect.Descriptor instead. +func (*VersionResponse) Descriptor() ([]byte, []int) { + return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{13} +} + +func (x *VersionResponse) GetBeacon() string { + if x != nil { + return x.Beacon + } + return "" +} + +func (x *VersionResponse) GetValidator() string { + if x != nil { + return x.Validator + } + return "" +} + type ChangePasswordRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -924,7 +979,7 @@ type ChangePasswordRequest struct { func (x *ChangePasswordRequest) Reset() { *x = ChangePasswordRequest{} if protoimpl.UnsafeEnabled { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[13] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -937,7 +992,7 @@ func (x *ChangePasswordRequest) String() string { func (*ChangePasswordRequest) ProtoMessage() {} func (x *ChangePasswordRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[13] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -950,7 +1005,7 @@ func (x *ChangePasswordRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangePasswordRequest.ProtoReflect.Descriptor instead. func (*ChangePasswordRequest) Descriptor() ([]byte, []int) { - return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{13} + return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{14} } func (x *ChangePasswordRequest) GetCurrentPassword() string { @@ -985,7 +1040,7 @@ type HasWalletResponse struct { func (x *HasWalletResponse) Reset() { *x = HasWalletResponse{} if protoimpl.UnsafeEnabled { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[14] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -998,7 +1053,7 @@ func (x *HasWalletResponse) String() string { func (*HasWalletResponse) ProtoMessage() {} func (x *HasWalletResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[14] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1011,7 +1066,7 @@ func (x *HasWalletResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use HasWalletResponse.ProtoReflect.Descriptor instead. func (*HasWalletResponse) Descriptor() ([]byte, []int) { - return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{14} + return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{15} } func (x *HasWalletResponse) GetWalletExists() bool { @@ -1033,7 +1088,7 @@ type ImportKeystoresRequest struct { func (x *ImportKeystoresRequest) Reset() { *x = ImportKeystoresRequest{} if protoimpl.UnsafeEnabled { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[15] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1046,7 +1101,7 @@ func (x *ImportKeystoresRequest) String() string { func (*ImportKeystoresRequest) ProtoMessage() {} func (x *ImportKeystoresRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[15] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1059,7 +1114,7 @@ func (x *ImportKeystoresRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ImportKeystoresRequest.ProtoReflect.Descriptor instead. func (*ImportKeystoresRequest) Descriptor() ([]byte, []int) { - return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{15} + return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{16} } func (x *ImportKeystoresRequest) GetKeystoresImported() []string { @@ -1087,7 +1142,7 @@ type ImportKeystoresResponse struct { func (x *ImportKeystoresResponse) Reset() { *x = ImportKeystoresResponse{} if protoimpl.UnsafeEnabled { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[16] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1100,7 +1155,7 @@ func (x *ImportKeystoresResponse) String() string { func (*ImportKeystoresResponse) ProtoMessage() {} func (x *ImportKeystoresResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[16] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1113,7 +1168,7 @@ func (x *ImportKeystoresResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ImportKeystoresResponse.ProtoReflect.Descriptor instead. func (*ImportKeystoresResponse) Descriptor() ([]byte, []int) { - return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{16} + return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{17} } func (x *ImportKeystoresResponse) GetImportedPublicKeys() [][]byte { @@ -1135,7 +1190,7 @@ type HasUsedWebResponse struct { func (x *HasUsedWebResponse) Reset() { *x = HasUsedWebResponse{} if protoimpl.UnsafeEnabled { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[17] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1148,7 +1203,7 @@ func (x *HasUsedWebResponse) String() string { func (*HasUsedWebResponse) ProtoMessage() {} func (x *HasUsedWebResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[17] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1161,7 +1216,7 @@ func (x *HasUsedWebResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use HasUsedWebResponse.ProtoReflect.Descriptor instead. func (*HasUsedWebResponse) Descriptor() ([]byte, []int) { - return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{17} + return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{18} } func (x *HasUsedWebResponse) GetHasSignedUp() bool { @@ -1189,7 +1244,7 @@ type LogsResponse struct { func (x *LogsResponse) Reset() { *x = LogsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[18] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1202,7 +1257,7 @@ func (x *LogsResponse) String() string { func (*LogsResponse) ProtoMessage() {} func (x *LogsResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[18] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1215,7 +1270,7 @@ func (x *LogsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use LogsResponse.ProtoReflect.Descriptor instead. func (*LogsResponse) Descriptor() ([]byte, []int) { - return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{18} + return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{19} } func (x *LogsResponse) GetLogs() []string { @@ -1241,7 +1296,7 @@ type BeaconStatusResponse struct { func (x *BeaconStatusResponse) Reset() { *x = BeaconStatusResponse{} if protoimpl.UnsafeEnabled { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[19] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1254,7 +1309,7 @@ func (x *BeaconStatusResponse) String() string { func (*BeaconStatusResponse) ProtoMessage() {} func (x *BeaconStatusResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[19] + mi := &file_proto_validator_accounts_v2_web_api_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1267,7 +1322,7 @@ func (x *BeaconStatusResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use BeaconStatusResponse.ProtoReflect.Descriptor instead. func (*BeaconStatusResponse) Descriptor() ([]byte, []int) { - return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{19} + return file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP(), []int{20} } func (x *BeaconStatusResponse) GetBeaconNodeEndpoint() string { @@ -1455,252 +1510,265 @@ var file_proto_validator_accounts_v2_web_api_proto_rawDesc = []byte{ 0x6f, 0x67, 0x73, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x62, 0x65, 0x61, 0x63, 0x6f, - 0x6e, 0x4c, 0x6f, 0x67, 0x73, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x93, 0x01, - 0x0a, 0x15, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x33, - 0x0a, 0x15, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x70, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0x38, 0x0a, 0x11, 0x48, 0x61, 0x73, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x77, 0x61, 0x6c, 0x6c, - 0x65, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0c, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0x76, 0x0a, - 0x16, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2d, 0x0a, 0x12, 0x6b, 0x65, 0x79, 0x73, 0x74, - 0x6f, 0x72, 0x65, 0x73, 0x5f, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x11, 0x6b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x49, 0x6d, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x6b, 0x65, 0x79, 0x73, 0x74, 0x6f, - 0x72, 0x65, 0x73, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x11, 0x6b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x50, 0x61, 0x73, - 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x4b, 0x0a, 0x17, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4b, - 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x30, 0x0a, 0x14, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x75, 0x62, - 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x12, - 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, - 0x79, 0x73, 0x22, 0x57, 0x0a, 0x12, 0x48, 0x61, 0x73, 0x55, 0x73, 0x65, 0x64, 0x57, 0x65, 0x62, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x68, 0x61, 0x73, 0x5f, - 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0b, 0x68, 0x61, 0x73, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x55, 0x70, 0x12, 0x1d, 0x0a, 0x0a, - 0x68, 0x61, 0x73, 0x5f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x09, 0x68, 0x61, 0x73, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x22, 0x22, 0x0a, 0x0c, 0x4c, - 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, - 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x22, - 0x9e, 0x02, 0x0a, 0x14, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x62, 0x65, 0x61, 0x63, - 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x4e, 0x6f, - 0x64, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x79, 0x6e, 0x63, - 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x79, 0x6e, 0x63, 0x69, - 0x6e, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, - 0x73, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x16, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, - 0x3f, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, - 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, - 0x6e, 0x48, 0x65, 0x61, 0x64, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x65, 0x61, 0x64, - 0x2a, 0x37, 0x0a, 0x0e, 0x4b, 0x65, 0x79, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x4b, 0x69, - 0x6e, 0x64, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x52, 0x49, 0x56, 0x45, 0x44, 0x10, 0x00, 0x12, - 0x0c, 0x0a, 0x08, 0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, - 0x06, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x10, 0x02, 0x32, 0xe9, 0x04, 0x0a, 0x06, 0x57, 0x61, - 0x6c, 0x6c, 0x65, 0x74, 0x12, 0xa1, 0x01, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, - 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x12, 0x33, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, - 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x61, 0x6c, - 0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x65, 0x74, 0x68, - 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x22, 0x1b, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x2f, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x12, 0x74, 0x0a, 0x0c, 0x57, 0x61, 0x6c, 0x6c, - 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, - 0x1a, 0x2e, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, - 0x32, 0x2e, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x1c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x16, 0x12, 0x14, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x12, 0x8d, - 0x01, 0x0a, 0x10, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x6e, 0x65, 0x6d, 0x6f, - 0x6e, 0x69, 0x63, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x38, 0x2e, 0x65, 0x74, - 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, - 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x47, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x6e, 0x65, 0x6d, 0x6f, 0x6e, 0x69, 0x63, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, - 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x6d, 0x6e, 0x65, - 0x6d, 0x6f, 0x6e, 0x69, 0x63, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0xb4, - 0x01, 0x0a, 0x0f, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, - 0x65, 0x73, 0x12, 0x36, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, - 0x2e, 0x76, 0x32, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x74, 0x6f, - 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x65, 0x74, 0x68, - 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x49, 0x6d, 0x70, 0x6f, - 0x72, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x30, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x22, 0x25, 0x2f, 0x76, 0x32, - 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x77, 0x61, 0x6c, 0x6c, 0x65, - 0x74, 0x2f, 0x6b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x2f, 0x69, 0x6d, 0x70, 0x6f, - 0x72, 0x74, 0x3a, 0x01, 0x2a, 0x32, 0xb0, 0x02, 0x0a, 0x08, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x12, 0x99, 0x01, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x73, 0x12, 0x33, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, - 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, - 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1e, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x12, 0x16, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x87, - 0x01, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, - 0x64, 0x12, 0x35, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, - 0x76, 0x32, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, - 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, - 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x22, 0x1b, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, - 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, - 0x2f, 0x65, 0x64, 0x69, 0x74, 0x3a, 0x01, 0x2a, 0x32, 0x81, 0x08, 0x0a, 0x06, 0x42, 0x65, 0x61, - 0x63, 0x6f, 0x6e, 0x12, 0x84, 0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x42, 0x65, 0x61, 0x63, 0x6f, - 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, - 0x34, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, - 0x2e, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x23, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x12, 0x1b, 0x2f, - 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x62, 0x65, 0x61, - 0x63, 0x6f, 0x6e, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0xb7, 0x01, 0x0a, 0x19, 0x47, - 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, - 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, - 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x35, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x6f, 0x72, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x24, - 0x12, 0x22, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, - 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0xac, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, - 0x12, 0x32, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x6f, 0x72, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, - 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, - 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x22, 0x12, 0x20, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, - 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, - 0x6e, 0x63, 0x65, 0x12, 0x89, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, - 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x2c, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, - 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, - 0x73, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, - 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x22, 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x12, 0x1f, - 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x62, 0x65, - 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, - 0x9c, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, - 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x33, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, - 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, - 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x61, - 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, - 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x42, - 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, - 0x1d, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x62, - 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x76, - 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x51, 0x75, - 0x65, 0x75, 0x65, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x25, 0x2e, 0x65, 0x74, - 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x51, 0x75, 0x65, - 0x75, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x76, 0x32, 0x2f, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, - 0x2f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x12, 0x64, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, - 0x72, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e, 0x65, 0x74, 0x68, - 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x31, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x73, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, - 0x12, 0x1a, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, - 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x70, 0x65, 0x65, 0x72, 0x73, 0x32, 0xcc, 0x04, 0x0a, - 0x06, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x12, 0x97, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x42, - 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x36, 0x2e, 0x65, 0x74, - 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, - 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x4e, 0x6f, 0x64, - 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x76, 0x32, - 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x68, 0x65, 0x61, 0x6c, 0x74, - 0x68, 0x2f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x8d, 0x01, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x45, 0x6e, 0x64, - 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x34, + 0x6e, 0x4c, 0x6f, 0x67, 0x73, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0x47, 0x0a, + 0x0f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x93, 0x01, 0x0a, 0x15, 0x43, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x29, 0x0a, 0x10, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, + 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x75, 0x72, 0x72, + 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x33, 0x0a, 0x15, 0x70, 0x61, 0x73, 0x73, 0x77, + 0x6f, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x38, 0x0a, 0x11, + 0x48, 0x61, 0x73, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x5f, 0x65, 0x78, 0x69, 0x73, + 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, + 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x22, 0x76, 0x0a, 0x16, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, + 0x4b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x2d, 0x0a, 0x12, 0x6b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x5f, 0x69, 0x6d, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6b, 0x65, + 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x12, + 0x2d, 0x0a, 0x12, 0x6b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x5f, 0x70, 0x61, 0x73, + 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6b, 0x65, 0x79, + 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x4b, + 0x0a, 0x17, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x69, 0x6d, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x12, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x22, 0x57, 0x0a, 0x12, 0x48, + 0x61, 0x73, 0x55, 0x73, 0x65, 0x64, 0x57, 0x65, 0x62, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, + 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x68, 0x61, 0x73, 0x53, 0x69, 0x67, + 0x6e, 0x65, 0x64, 0x55, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x68, 0x61, 0x73, 0x5f, 0x77, 0x61, 0x6c, + 0x6c, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x68, 0x61, 0x73, 0x57, 0x61, + 0x6c, 0x6c, 0x65, 0x74, 0x22, 0x22, 0x0a, 0x0c, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x22, 0x9e, 0x02, 0x0a, 0x14, 0x42, 0x65, 0x61, + 0x63, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x30, 0x0a, 0x14, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, 0x65, + 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x12, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, + 0x69, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, + 0x64, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x79, 0x6e, 0x63, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x07, 0x73, 0x79, 0x6e, 0x63, 0x69, 0x6e, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x67, + 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0b, 0x67, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x38, + 0x0a, 0x18, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x16, 0x64, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x3f, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, + 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x52, 0x09, + 0x63, 0x68, 0x61, 0x69, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x2a, 0x37, 0x0a, 0x0e, 0x4b, 0x65, 0x79, + 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x0b, 0x0a, 0x07, 0x44, + 0x45, 0x52, 0x49, 0x56, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4d, 0x50, 0x4f, + 0x52, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, + 0x10, 0x02, 0x32, 0xe9, 0x04, 0x0a, 0x06, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x12, 0xa1, 0x01, + 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x12, 0x33, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, - 0x4c, 0x6f, 0x67, 0x73, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x76, - 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x68, 0x65, 0x61, 0x6c, - 0x74, 0x68, 0x2f, 0x6c, 0x6f, 0x67, 0x73, 0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, - 0x73, 0x12, 0x83, 0x01, 0x0a, 0x10, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x42, 0x65, 0x61, 0x63, - 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x24, - 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, - 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x29, 0x12, 0x27, 0x2f, 0x76, - 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x68, 0x65, 0x61, 0x6c, - 0x74, 0x68, 0x2f, 0x6c, 0x6f, 0x67, 0x73, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x73, - 0x74, 0x72, 0x65, 0x61, 0x6d, 0x30, 0x01, 0x12, 0x91, 0x01, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, - 0x61, 0x6d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x12, - 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x2c, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, - 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2c, 0x12, 0x2a, 0x2f, - 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x68, 0x65, 0x61, - 0x6c, 0x74, 0x68, 0x2f, 0x6c, 0x6f, 0x67, 0x73, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, - 0x6f, 0x72, 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x30, 0x01, 0x32, 0xea, 0x03, 0x0a, 0x04, - 0x41, 0x75, 0x74, 0x68, 0x12, 0x7b, 0x0a, 0x0a, 0x48, 0x61, 0x73, 0x55, 0x73, 0x65, 0x64, 0x57, - 0x65, 0x62, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x32, 0x2e, 0x65, 0x74, 0x68, - 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x48, 0x61, 0x73, 0x55, - 0x73, 0x65, 0x64, 0x57, 0x65, 0x62, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x21, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x12, 0x19, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, - 0x64, 0x12, 0x82, 0x01, 0x0a, 0x05, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x2b, 0x2e, 0x65, 0x74, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x61, 0x6c, 0x6c, 0x65, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x20, 0x22, 0x1b, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, + 0x2f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x2f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x3a, 0x01, + 0x2a, 0x12, 0x74, 0x0a, 0x0c, 0x57, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x2e, 0x2e, 0x65, 0x74, 0x68, 0x65, + 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x57, 0x61, 0x6c, 0x6c, 0x65, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1c, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x16, 0x12, 0x14, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, + 0x2f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x12, 0x8d, 0x01, 0x0a, 0x10, 0x47, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x65, 0x4d, 0x6e, 0x65, 0x6d, 0x6f, 0x6e, 0x69, 0x63, 0x12, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x38, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4d, 0x6e, + 0x65, 0x6d, 0x6f, 0x6e, 0x69, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x27, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x6d, 0x6e, 0x65, 0x6d, 0x6f, 0x6e, 0x69, 0x63, 0x2f, 0x67, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0xb4, 0x01, 0x0a, 0x0f, 0x49, 0x6d, 0x70, 0x6f, + 0x72, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x12, 0x36, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, - 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x41, 0x75, 0x74, - 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, + 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x49, 0x6d, 0x70, + 0x6f, 0x72, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x74, + 0x6f, 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x30, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x2a, 0x22, 0x25, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x6f, 0x72, 0x2f, 0x77, 0x61, 0x6c, 0x6c, 0x65, 0x74, 0x2f, 0x6b, 0x65, 0x79, 0x73, 0x74, + 0x6f, 0x72, 0x65, 0x73, 0x2f, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0x32, 0xb0, + 0x02, 0x0a, 0x08, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x99, 0x01, 0x0a, 0x0c, + 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x33, 0x2e, 0x65, + 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, + 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, + 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x34, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, + 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x12, + 0x16, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x87, 0x01, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x35, 0x2e, 0x65, 0x74, 0x68, + 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x26, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x20, 0x22, 0x1b, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, + 0x2f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x2f, 0x65, 0x64, 0x69, 0x74, 0x3a, 0x01, + 0x2a, 0x32, 0x81, 0x08, 0x0a, 0x06, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x12, 0x84, 0x01, 0x0a, + 0x0f, 0x47, 0x65, 0x74, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x34, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x22, 0x13, - 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x6c, 0x6f, - 0x67, 0x69, 0x6e, 0x3a, 0x01, 0x2a, 0x12, 0x84, 0x01, 0x0a, 0x06, 0x53, 0x69, 0x67, 0x6e, 0x75, - 0x70, 0x12, 0x2b, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x23, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x12, 0x1b, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0xb7, 0x01, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x6f, 0x72, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x37, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x65, 0x74, 0x68, + 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x2a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x24, 0x12, 0x22, 0x2f, 0x76, 0x32, 0x2f, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, + 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0xac, 0x01, + 0x0a, 0x17, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x65, + 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x32, 0x2e, 0x65, 0x74, 0x68, 0x65, + 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x65, 0x72, 0x66, 0x6f, + 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, + 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, + 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x12, 0x20, 0x2f, 0x76, 0x32, 0x2f, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, + 0x2f, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x89, 0x01, 0x0a, + 0x0d, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x2c, + 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x65, + 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x22, + 0x27, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x12, 0x1f, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x9c, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, + 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, + 0x73, 0x12, 0x33, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, 0x74, 0x68, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, + 0x6d, 0x2e, 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, + 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, 0x1d, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x62, + 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x76, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x51, 0x75, 0x65, 0x75, 0x65, 0x12, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x25, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, + 0x65, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x51, 0x75, 0x65, 0x75, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x12, + 0x64, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x1a, 0x1c, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x65, + 0x74, 0x68, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x50, 0x65, 0x65, 0x72, + 0x73, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x76, 0x32, 0x2f, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2f, + 0x70, 0x65, 0x65, 0x72, 0x73, 0x32, 0xc9, 0x05, 0x0a, 0x06, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, + 0x12, 0x97, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x4e, 0x6f, + 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x36, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2c, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x6f, 0x72, 0x2f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x2f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, + 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x8d, 0x01, 0x0a, 0x10, 0x47, + 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, + 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x34, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, + 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x6f, 0x67, 0x73, 0x45, 0x6e, 0x64, + 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x2f, 0x6c, 0x6f, 0x67, 0x73, + 0x2f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x7b, 0x0a, 0x0a, 0x47, 0x65, + 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, + 0x1a, 0x2f, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, + 0x32, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x24, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x12, 0x1c, 0x2f, 0x76, 0x32, 0x2f, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x2f, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x83, 0x01, 0x0a, 0x10, 0x53, 0x74, 0x72, 0x65, + 0x61, 0x6d, 0x42, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x24, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, + 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, + 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x29, 0x12, 0x27, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, + 0x72, 0x2f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x2f, 0x6c, 0x6f, 0x67, 0x73, 0x2f, 0x62, 0x65, + 0x61, 0x63, 0x6f, 0x6e, 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x30, 0x01, 0x12, 0x91, 0x01, + 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, + 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x2c, 0x2e, + 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x4c, + 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x2c, 0x12, 0x2a, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x2f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x2f, 0x6c, 0x6f, 0x67, 0x73, 0x2f, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x30, + 0x01, 0x32, 0xea, 0x03, 0x0a, 0x04, 0x41, 0x75, 0x74, 0x68, 0x12, 0x7b, 0x0a, 0x0a, 0x48, 0x61, + 0x73, 0x55, 0x73, 0x65, 0x64, 0x57, 0x65, 0x62, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, + 0x1a, 0x32, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, + 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, + 0x32, 0x2e, 0x48, 0x61, 0x73, 0x55, 0x73, 0x65, 0x64, 0x57, 0x65, 0x62, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x21, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x12, 0x19, 0x2f, 0x76, + 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x69, 0x6e, 0x69, 0x74, + 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x12, 0x82, 0x01, 0x0a, 0x05, 0x4c, 0x6f, 0x67, 0x69, + 0x6e, 0x12, 0x2b, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, - 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1f, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x19, 0x22, 0x14, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, - 0x74, 0x6f, 0x72, 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x75, 0x70, 0x3a, 0x01, 0x2a, 0x12, 0x59, 0x0a, - 0x06, 0x4c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, - 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x1f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x22, - 0x14, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x6c, - 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x3a, 0x01, 0x2a, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1e, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x18, 0x22, 0x13, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x6f, 0x72, 0x2f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x3a, 0x01, 0x2a, 0x12, 0x84, 0x01, 0x0a, + 0x06, 0x53, 0x69, 0x67, 0x6e, 0x75, 0x70, 0x12, 0x2b, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, + 0x75, 0x6d, 0x2e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x75, 0x6d, 0x2e, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x1f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x22, 0x14, 0x2f, 0x76, 0x32, 0x2f, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x75, 0x70, + 0x3a, 0x01, 0x2a, 0x12, 0x59, 0x0a, 0x06, 0x4c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x12, 0x16, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x1f, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x22, 0x14, 0x2f, 0x76, 0x32, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x61, 0x74, 0x6f, 0x72, 0x2f, 0x6c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x3a, 0x01, 0x2a, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1716,7 +1784,7 @@ func file_proto_validator_accounts_v2_web_api_proto_rawDescGZIP() []byte { } var file_proto_validator_accounts_v2_web_api_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_proto_validator_accounts_v2_web_api_proto_msgTypes = make([]protoimpl.MessageInfo, 20) +var file_proto_validator_accounts_v2_web_api_proto_msgTypes = make([]protoimpl.MessageInfo, 21) var file_proto_validator_accounts_v2_web_api_proto_goTypes = []interface{}{ (KeymanagerKind)(0), // 0: ethereum.validator.accounts.v2.KeymanagerKind (*CreateWalletRequest)(nil), // 1: ethereum.validator.accounts.v2.CreateWalletRequest @@ -1732,77 +1800,80 @@ var file_proto_validator_accounts_v2_web_api_proto_goTypes = []interface{}{ (*AuthResponse)(nil), // 11: ethereum.validator.accounts.v2.AuthResponse (*NodeConnectionResponse)(nil), // 12: ethereum.validator.accounts.v2.NodeConnectionResponse (*LogsEndpointResponse)(nil), // 13: ethereum.validator.accounts.v2.LogsEndpointResponse - (*ChangePasswordRequest)(nil), // 14: ethereum.validator.accounts.v2.ChangePasswordRequest - (*HasWalletResponse)(nil), // 15: ethereum.validator.accounts.v2.HasWalletResponse - (*ImportKeystoresRequest)(nil), // 16: ethereum.validator.accounts.v2.ImportKeystoresRequest - (*ImportKeystoresResponse)(nil), // 17: ethereum.validator.accounts.v2.ImportKeystoresResponse - (*HasUsedWebResponse)(nil), // 18: ethereum.validator.accounts.v2.HasUsedWebResponse - (*LogsResponse)(nil), // 19: ethereum.validator.accounts.v2.LogsResponse - (*BeaconStatusResponse)(nil), // 20: ethereum.validator.accounts.v2.BeaconStatusResponse - (*v1alpha1.ChainHead)(nil), // 21: ethereum.eth.v1alpha1.ChainHead - (*empty.Empty)(nil), // 22: google.protobuf.Empty - (*v1alpha1.GetValidatorParticipationRequest)(nil), // 23: ethereum.eth.v1alpha1.GetValidatorParticipationRequest - (*v1alpha1.ValidatorPerformanceRequest)(nil), // 24: ethereum.eth.v1alpha1.ValidatorPerformanceRequest - (*v1alpha1.ListValidatorsRequest)(nil), // 25: ethereum.eth.v1alpha1.ListValidatorsRequest - (*v1alpha1.ListValidatorBalancesRequest)(nil), // 26: ethereum.eth.v1alpha1.ListValidatorBalancesRequest - (*v1alpha1.ValidatorParticipationResponse)(nil), // 27: ethereum.eth.v1alpha1.ValidatorParticipationResponse - (*v1alpha1.ValidatorPerformanceResponse)(nil), // 28: ethereum.eth.v1alpha1.ValidatorPerformanceResponse - (*v1alpha1.Validators)(nil), // 29: ethereum.eth.v1alpha1.Validators - (*v1alpha1.ValidatorBalances)(nil), // 30: ethereum.eth.v1alpha1.ValidatorBalances - (*v1alpha1.ValidatorQueue)(nil), // 31: ethereum.eth.v1alpha1.ValidatorQueue - (*v1alpha1.Peers)(nil), // 32: ethereum.eth.v1alpha1.Peers - (*v1.LogsResponse)(nil), // 33: ethereum.beacon.rpc.v1.LogsResponse + (*VersionResponse)(nil), // 14: ethereum.validator.accounts.v2.VersionResponse + (*ChangePasswordRequest)(nil), // 15: ethereum.validator.accounts.v2.ChangePasswordRequest + (*HasWalletResponse)(nil), // 16: ethereum.validator.accounts.v2.HasWalletResponse + (*ImportKeystoresRequest)(nil), // 17: ethereum.validator.accounts.v2.ImportKeystoresRequest + (*ImportKeystoresResponse)(nil), // 18: ethereum.validator.accounts.v2.ImportKeystoresResponse + (*HasUsedWebResponse)(nil), // 19: ethereum.validator.accounts.v2.HasUsedWebResponse + (*LogsResponse)(nil), // 20: ethereum.validator.accounts.v2.LogsResponse + (*BeaconStatusResponse)(nil), // 21: ethereum.validator.accounts.v2.BeaconStatusResponse + (*v1alpha1.ChainHead)(nil), // 22: ethereum.eth.v1alpha1.ChainHead + (*empty.Empty)(nil), // 23: google.protobuf.Empty + (*v1alpha1.GetValidatorParticipationRequest)(nil), // 24: ethereum.eth.v1alpha1.GetValidatorParticipationRequest + (*v1alpha1.ValidatorPerformanceRequest)(nil), // 25: ethereum.eth.v1alpha1.ValidatorPerformanceRequest + (*v1alpha1.ListValidatorsRequest)(nil), // 26: ethereum.eth.v1alpha1.ListValidatorsRequest + (*v1alpha1.ListValidatorBalancesRequest)(nil), // 27: ethereum.eth.v1alpha1.ListValidatorBalancesRequest + (*v1alpha1.ValidatorParticipationResponse)(nil), // 28: ethereum.eth.v1alpha1.ValidatorParticipationResponse + (*v1alpha1.ValidatorPerformanceResponse)(nil), // 29: ethereum.eth.v1alpha1.ValidatorPerformanceResponse + (*v1alpha1.Validators)(nil), // 30: ethereum.eth.v1alpha1.Validators + (*v1alpha1.ValidatorBalances)(nil), // 31: ethereum.eth.v1alpha1.ValidatorBalances + (*v1alpha1.ValidatorQueue)(nil), // 32: ethereum.eth.v1alpha1.ValidatorQueue + (*v1alpha1.Peers)(nil), // 33: ethereum.eth.v1alpha1.Peers + (*v1.LogsResponse)(nil), // 34: ethereum.beacon.rpc.v1.LogsResponse } var file_proto_validator_accounts_v2_web_api_proto_depIdxs = []int32{ 0, // 0: ethereum.validator.accounts.v2.CreateWalletRequest.keymanager:type_name -> ethereum.validator.accounts.v2.KeymanagerKind 5, // 1: ethereum.validator.accounts.v2.CreateWalletResponse.wallet:type_name -> ethereum.validator.accounts.v2.WalletResponse 0, // 2: ethereum.validator.accounts.v2.WalletResponse.keymanager_kind:type_name -> ethereum.validator.accounts.v2.KeymanagerKind 8, // 3: ethereum.validator.accounts.v2.ListAccountsResponse.accounts:type_name -> ethereum.validator.accounts.v2.Account - 21, // 4: ethereum.validator.accounts.v2.BeaconStatusResponse.chain_head:type_name -> ethereum.eth.v1alpha1.ChainHead + 22, // 4: ethereum.validator.accounts.v2.BeaconStatusResponse.chain_head:type_name -> ethereum.eth.v1alpha1.ChainHead 1, // 5: ethereum.validator.accounts.v2.Wallet.CreateWallet:input_type -> ethereum.validator.accounts.v2.CreateWalletRequest - 22, // 6: ethereum.validator.accounts.v2.Wallet.WalletConfig:input_type -> google.protobuf.Empty - 22, // 7: ethereum.validator.accounts.v2.Wallet.GenerateMnemonic:input_type -> google.protobuf.Empty - 16, // 8: ethereum.validator.accounts.v2.Wallet.ImportKeystores:input_type -> ethereum.validator.accounts.v2.ImportKeystoresRequest + 23, // 6: ethereum.validator.accounts.v2.Wallet.WalletConfig:input_type -> google.protobuf.Empty + 23, // 7: ethereum.validator.accounts.v2.Wallet.GenerateMnemonic:input_type -> google.protobuf.Empty + 17, // 8: ethereum.validator.accounts.v2.Wallet.ImportKeystores:input_type -> ethereum.validator.accounts.v2.ImportKeystoresRequest 6, // 9: ethereum.validator.accounts.v2.Accounts.ListAccounts:input_type -> ethereum.validator.accounts.v2.ListAccountsRequest - 14, // 10: ethereum.validator.accounts.v2.Accounts.ChangePassword:input_type -> ethereum.validator.accounts.v2.ChangePasswordRequest - 22, // 11: ethereum.validator.accounts.v2.Beacon.GetBeaconStatus:input_type -> google.protobuf.Empty - 23, // 12: ethereum.validator.accounts.v2.Beacon.GetValidatorParticipation:input_type -> ethereum.eth.v1alpha1.GetValidatorParticipationRequest - 24, // 13: ethereum.validator.accounts.v2.Beacon.GetValidatorPerformance:input_type -> ethereum.eth.v1alpha1.ValidatorPerformanceRequest - 25, // 14: ethereum.validator.accounts.v2.Beacon.GetValidators:input_type -> ethereum.eth.v1alpha1.ListValidatorsRequest - 26, // 15: ethereum.validator.accounts.v2.Beacon.GetValidatorBalances:input_type -> ethereum.eth.v1alpha1.ListValidatorBalancesRequest - 22, // 16: ethereum.validator.accounts.v2.Beacon.GetValidatorQueue:input_type -> google.protobuf.Empty - 22, // 17: ethereum.validator.accounts.v2.Beacon.GetPeers:input_type -> google.protobuf.Empty - 22, // 18: ethereum.validator.accounts.v2.Health.GetBeaconNodeConnection:input_type -> google.protobuf.Empty - 22, // 19: ethereum.validator.accounts.v2.Health.GetLogsEndpoints:input_type -> google.protobuf.Empty - 22, // 20: ethereum.validator.accounts.v2.Health.StreamBeaconLogs:input_type -> google.protobuf.Empty - 22, // 21: ethereum.validator.accounts.v2.Health.StreamValidatorLogs:input_type -> google.protobuf.Empty - 22, // 22: ethereum.validator.accounts.v2.Auth.HasUsedWeb:input_type -> google.protobuf.Empty - 10, // 23: ethereum.validator.accounts.v2.Auth.Login:input_type -> ethereum.validator.accounts.v2.AuthRequest - 10, // 24: ethereum.validator.accounts.v2.Auth.Signup:input_type -> ethereum.validator.accounts.v2.AuthRequest - 22, // 25: ethereum.validator.accounts.v2.Auth.Logout:input_type -> google.protobuf.Empty - 2, // 26: ethereum.validator.accounts.v2.Wallet.CreateWallet:output_type -> ethereum.validator.accounts.v2.CreateWalletResponse - 5, // 27: ethereum.validator.accounts.v2.Wallet.WalletConfig:output_type -> ethereum.validator.accounts.v2.WalletResponse - 4, // 28: ethereum.validator.accounts.v2.Wallet.GenerateMnemonic:output_type -> ethereum.validator.accounts.v2.GenerateMnemonicResponse - 17, // 29: ethereum.validator.accounts.v2.Wallet.ImportKeystores:output_type -> ethereum.validator.accounts.v2.ImportKeystoresResponse - 7, // 30: ethereum.validator.accounts.v2.Accounts.ListAccounts:output_type -> ethereum.validator.accounts.v2.ListAccountsResponse - 22, // 31: ethereum.validator.accounts.v2.Accounts.ChangePassword:output_type -> google.protobuf.Empty - 20, // 32: ethereum.validator.accounts.v2.Beacon.GetBeaconStatus:output_type -> ethereum.validator.accounts.v2.BeaconStatusResponse - 27, // 33: ethereum.validator.accounts.v2.Beacon.GetValidatorParticipation:output_type -> ethereum.eth.v1alpha1.ValidatorParticipationResponse - 28, // 34: ethereum.validator.accounts.v2.Beacon.GetValidatorPerformance:output_type -> ethereum.eth.v1alpha1.ValidatorPerformanceResponse - 29, // 35: ethereum.validator.accounts.v2.Beacon.GetValidators:output_type -> ethereum.eth.v1alpha1.Validators - 30, // 36: ethereum.validator.accounts.v2.Beacon.GetValidatorBalances:output_type -> ethereum.eth.v1alpha1.ValidatorBalances - 31, // 37: ethereum.validator.accounts.v2.Beacon.GetValidatorQueue:output_type -> ethereum.eth.v1alpha1.ValidatorQueue - 32, // 38: ethereum.validator.accounts.v2.Beacon.GetPeers:output_type -> ethereum.eth.v1alpha1.Peers - 12, // 39: ethereum.validator.accounts.v2.Health.GetBeaconNodeConnection:output_type -> ethereum.validator.accounts.v2.NodeConnectionResponse - 13, // 40: ethereum.validator.accounts.v2.Health.GetLogsEndpoints:output_type -> ethereum.validator.accounts.v2.LogsEndpointResponse - 33, // 41: ethereum.validator.accounts.v2.Health.StreamBeaconLogs:output_type -> ethereum.beacon.rpc.v1.LogsResponse - 19, // 42: ethereum.validator.accounts.v2.Health.StreamValidatorLogs:output_type -> ethereum.validator.accounts.v2.LogsResponse - 18, // 43: ethereum.validator.accounts.v2.Auth.HasUsedWeb:output_type -> ethereum.validator.accounts.v2.HasUsedWebResponse - 11, // 44: ethereum.validator.accounts.v2.Auth.Login:output_type -> ethereum.validator.accounts.v2.AuthResponse - 11, // 45: ethereum.validator.accounts.v2.Auth.Signup:output_type -> ethereum.validator.accounts.v2.AuthResponse - 22, // 46: ethereum.validator.accounts.v2.Auth.Logout:output_type -> google.protobuf.Empty - 26, // [26:47] is the sub-list for method output_type - 5, // [5:26] is the sub-list for method input_type + 15, // 10: ethereum.validator.accounts.v2.Accounts.ChangePassword:input_type -> ethereum.validator.accounts.v2.ChangePasswordRequest + 23, // 11: ethereum.validator.accounts.v2.Beacon.GetBeaconStatus:input_type -> google.protobuf.Empty + 24, // 12: ethereum.validator.accounts.v2.Beacon.GetValidatorParticipation:input_type -> ethereum.eth.v1alpha1.GetValidatorParticipationRequest + 25, // 13: ethereum.validator.accounts.v2.Beacon.GetValidatorPerformance:input_type -> ethereum.eth.v1alpha1.ValidatorPerformanceRequest + 26, // 14: ethereum.validator.accounts.v2.Beacon.GetValidators:input_type -> ethereum.eth.v1alpha1.ListValidatorsRequest + 27, // 15: ethereum.validator.accounts.v2.Beacon.GetValidatorBalances:input_type -> ethereum.eth.v1alpha1.ListValidatorBalancesRequest + 23, // 16: ethereum.validator.accounts.v2.Beacon.GetValidatorQueue:input_type -> google.protobuf.Empty + 23, // 17: ethereum.validator.accounts.v2.Beacon.GetPeers:input_type -> google.protobuf.Empty + 23, // 18: ethereum.validator.accounts.v2.Health.GetBeaconNodeConnection:input_type -> google.protobuf.Empty + 23, // 19: ethereum.validator.accounts.v2.Health.GetLogsEndpoints:input_type -> google.protobuf.Empty + 23, // 20: ethereum.validator.accounts.v2.Health.GetVersion:input_type -> google.protobuf.Empty + 23, // 21: ethereum.validator.accounts.v2.Health.StreamBeaconLogs:input_type -> google.protobuf.Empty + 23, // 22: ethereum.validator.accounts.v2.Health.StreamValidatorLogs:input_type -> google.protobuf.Empty + 23, // 23: ethereum.validator.accounts.v2.Auth.HasUsedWeb:input_type -> google.protobuf.Empty + 10, // 24: ethereum.validator.accounts.v2.Auth.Login:input_type -> ethereum.validator.accounts.v2.AuthRequest + 10, // 25: ethereum.validator.accounts.v2.Auth.Signup:input_type -> ethereum.validator.accounts.v2.AuthRequest + 23, // 26: ethereum.validator.accounts.v2.Auth.Logout:input_type -> google.protobuf.Empty + 2, // 27: ethereum.validator.accounts.v2.Wallet.CreateWallet:output_type -> ethereum.validator.accounts.v2.CreateWalletResponse + 5, // 28: ethereum.validator.accounts.v2.Wallet.WalletConfig:output_type -> ethereum.validator.accounts.v2.WalletResponse + 4, // 29: ethereum.validator.accounts.v2.Wallet.GenerateMnemonic:output_type -> ethereum.validator.accounts.v2.GenerateMnemonicResponse + 18, // 30: ethereum.validator.accounts.v2.Wallet.ImportKeystores:output_type -> ethereum.validator.accounts.v2.ImportKeystoresResponse + 7, // 31: ethereum.validator.accounts.v2.Accounts.ListAccounts:output_type -> ethereum.validator.accounts.v2.ListAccountsResponse + 23, // 32: ethereum.validator.accounts.v2.Accounts.ChangePassword:output_type -> google.protobuf.Empty + 21, // 33: ethereum.validator.accounts.v2.Beacon.GetBeaconStatus:output_type -> ethereum.validator.accounts.v2.BeaconStatusResponse + 28, // 34: ethereum.validator.accounts.v2.Beacon.GetValidatorParticipation:output_type -> ethereum.eth.v1alpha1.ValidatorParticipationResponse + 29, // 35: ethereum.validator.accounts.v2.Beacon.GetValidatorPerformance:output_type -> ethereum.eth.v1alpha1.ValidatorPerformanceResponse + 30, // 36: ethereum.validator.accounts.v2.Beacon.GetValidators:output_type -> ethereum.eth.v1alpha1.Validators + 31, // 37: ethereum.validator.accounts.v2.Beacon.GetValidatorBalances:output_type -> ethereum.eth.v1alpha1.ValidatorBalances + 32, // 38: ethereum.validator.accounts.v2.Beacon.GetValidatorQueue:output_type -> ethereum.eth.v1alpha1.ValidatorQueue + 33, // 39: ethereum.validator.accounts.v2.Beacon.GetPeers:output_type -> ethereum.eth.v1alpha1.Peers + 12, // 40: ethereum.validator.accounts.v2.Health.GetBeaconNodeConnection:output_type -> ethereum.validator.accounts.v2.NodeConnectionResponse + 13, // 41: ethereum.validator.accounts.v2.Health.GetLogsEndpoints:output_type -> ethereum.validator.accounts.v2.LogsEndpointResponse + 14, // 42: ethereum.validator.accounts.v2.Health.GetVersion:output_type -> ethereum.validator.accounts.v2.VersionResponse + 34, // 43: ethereum.validator.accounts.v2.Health.StreamBeaconLogs:output_type -> ethereum.beacon.rpc.v1.LogsResponse + 20, // 44: ethereum.validator.accounts.v2.Health.StreamValidatorLogs:output_type -> ethereum.validator.accounts.v2.LogsResponse + 19, // 45: ethereum.validator.accounts.v2.Auth.HasUsedWeb:output_type -> ethereum.validator.accounts.v2.HasUsedWebResponse + 11, // 46: ethereum.validator.accounts.v2.Auth.Login:output_type -> ethereum.validator.accounts.v2.AuthResponse + 11, // 47: ethereum.validator.accounts.v2.Auth.Signup:output_type -> ethereum.validator.accounts.v2.AuthResponse + 23, // 48: ethereum.validator.accounts.v2.Auth.Logout:output_type -> google.protobuf.Empty + 27, // [27:49] is the sub-list for method output_type + 5, // [5:27] is the sub-list for method input_type 5, // [5:5] is the sub-list for extension type_name 5, // [5:5] is the sub-list for extension extendee 0, // [0:5] is the sub-list for field type_name @@ -1971,7 +2042,7 @@ func file_proto_validator_accounts_v2_web_api_proto_init() { } } file_proto_validator_accounts_v2_web_api_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangePasswordRequest); i { + switch v := v.(*VersionResponse); i { case 0: return &v.state case 1: @@ -1983,7 +2054,7 @@ func file_proto_validator_accounts_v2_web_api_proto_init() { } } file_proto_validator_accounts_v2_web_api_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HasWalletResponse); i { + switch v := v.(*ChangePasswordRequest); i { case 0: return &v.state case 1: @@ -1995,7 +2066,7 @@ func file_proto_validator_accounts_v2_web_api_proto_init() { } } file_proto_validator_accounts_v2_web_api_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ImportKeystoresRequest); i { + switch v := v.(*HasWalletResponse); i { case 0: return &v.state case 1: @@ -2007,7 +2078,7 @@ func file_proto_validator_accounts_v2_web_api_proto_init() { } } file_proto_validator_accounts_v2_web_api_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ImportKeystoresResponse); i { + switch v := v.(*ImportKeystoresRequest); i { case 0: return &v.state case 1: @@ -2019,7 +2090,7 @@ func file_proto_validator_accounts_v2_web_api_proto_init() { } } file_proto_validator_accounts_v2_web_api_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HasUsedWebResponse); i { + switch v := v.(*ImportKeystoresResponse); i { case 0: return &v.state case 1: @@ -2031,7 +2102,7 @@ func file_proto_validator_accounts_v2_web_api_proto_init() { } } file_proto_validator_accounts_v2_web_api_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LogsResponse); i { + switch v := v.(*HasUsedWebResponse); i { case 0: return &v.state case 1: @@ -2043,6 +2114,18 @@ func file_proto_validator_accounts_v2_web_api_proto_init() { } } file_proto_validator_accounts_v2_web_api_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LogsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_proto_validator_accounts_v2_web_api_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BeaconStatusResponse); i { case 0: return &v.state @@ -2061,7 +2144,7 @@ func file_proto_validator_accounts_v2_web_api_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_proto_validator_accounts_v2_web_api_proto_rawDesc, NumEnums: 1, - NumMessages: 20, + NumMessages: 21, NumExtensions: 0, NumServices: 5, }, @@ -2666,6 +2749,7 @@ var _Beacon_serviceDesc = grpc.ServiceDesc{ type HealthClient interface { GetBeaconNodeConnection(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*NodeConnectionResponse, error) GetLogsEndpoints(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*LogsEndpointResponse, error) + GetVersion(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*VersionResponse, error) StreamBeaconLogs(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (Health_StreamBeaconLogsClient, error) StreamValidatorLogs(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (Health_StreamValidatorLogsClient, error) } @@ -2696,6 +2780,15 @@ func (c *healthClient) GetLogsEndpoints(ctx context.Context, in *empty.Empty, op return out, nil } +func (c *healthClient) GetVersion(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*VersionResponse, error) { + out := new(VersionResponse) + err := c.cc.Invoke(ctx, "/ethereum.validator.accounts.v2.Health/GetVersion", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *healthClient) StreamBeaconLogs(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (Health_StreamBeaconLogsClient, error) { stream, err := c.cc.NewStream(ctx, &_Health_serviceDesc.Streams[0], "/ethereum.validator.accounts.v2.Health/StreamBeaconLogs", opts...) if err != nil { @@ -2764,6 +2857,7 @@ func (x *healthStreamValidatorLogsClient) Recv() (*LogsResponse, error) { type HealthServer interface { GetBeaconNodeConnection(context.Context, *empty.Empty) (*NodeConnectionResponse, error) GetLogsEndpoints(context.Context, *empty.Empty) (*LogsEndpointResponse, error) + GetVersion(context.Context, *empty.Empty) (*VersionResponse, error) StreamBeaconLogs(*empty.Empty, Health_StreamBeaconLogsServer) error StreamValidatorLogs(*empty.Empty, Health_StreamValidatorLogsServer) error } @@ -2778,6 +2872,9 @@ func (*UnimplementedHealthServer) GetBeaconNodeConnection(context.Context, *empt func (*UnimplementedHealthServer) GetLogsEndpoints(context.Context, *empty.Empty) (*LogsEndpointResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GetLogsEndpoints not implemented") } +func (*UnimplementedHealthServer) GetVersion(context.Context, *empty.Empty) (*VersionResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetVersion not implemented") +} func (*UnimplementedHealthServer) StreamBeaconLogs(*empty.Empty, Health_StreamBeaconLogsServer) error { return status.Errorf(codes.Unimplemented, "method StreamBeaconLogs not implemented") } @@ -2825,6 +2922,24 @@ func _Health_GetLogsEndpoints_Handler(srv interface{}, ctx context.Context, dec return interceptor(ctx, in, info, handler) } +func _Health_GetVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(empty.Empty) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(HealthServer).GetVersion(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ethereum.validator.accounts.v2.Health/GetVersion", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(HealthServer).GetVersion(ctx, req.(*empty.Empty)) + } + return interceptor(ctx, in, info, handler) +} + func _Health_StreamBeaconLogs_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(empty.Empty) if err := stream.RecvMsg(m); err != nil { @@ -2879,6 +2994,10 @@ var _Health_serviceDesc = grpc.ServiceDesc{ MethodName: "GetLogsEndpoints", Handler: _Health_GetLogsEndpoints_Handler, }, + { + MethodName: "GetVersion", + Handler: _Health_GetVersion_Handler, + }, }, Streams: []grpc.StreamDesc{ { diff --git a/proto/validator/accounts/v2_gateway/web_api.pb.gw.go b/proto/validator/accounts/v2_gateway/web_api.pb.gw.go index 94aac4f8a2..910b38e200 100755 --- a/proto/validator/accounts/v2_gateway/web_api.pb.gw.go +++ b/proto/validator/accounts/v2_gateway/web_api.pb.gw.go @@ -441,6 +441,24 @@ func local_request_Health_GetLogsEndpoints_0(ctx context.Context, marshaler runt } +func request_Health_GetVersion_0(ctx context.Context, marshaler runtime.Marshaler, client HealthClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq empty.Empty + var metadata runtime.ServerMetadata + + msg, err := client.GetVersion(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_Health_GetVersion_0(ctx context.Context, marshaler runtime.Marshaler, server HealthServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq empty.Empty + var metadata runtime.ServerMetadata + + msg, err := server.GetVersion(ctx, &protoReq) + return msg, metadata, err + +} + func request_Health_StreamBeaconLogs_0(ctx context.Context, marshaler runtime.Marshaler, client HealthClient, req *http.Request, pathParams map[string]string) (Health_StreamBeaconLogsClient, runtime.ServerMetadata, error) { var protoReq empty.Empty var metadata runtime.ServerMetadata @@ -924,6 +942,26 @@ func RegisterHealthHandlerServer(ctx context.Context, mux *runtime.ServeMux, ser }) + mux.Handle("GET", pattern_Health_GetVersion_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_Health_GetVersion_0(rctx, inboundMarshaler, server, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_Health_GetVersion_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("GET", pattern_Health_StreamBeaconLogs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { err := status.Error(codes.Unimplemented, "streaming calls are not yet supported in the in-process transport") _, outboundMarshaler := runtime.MarshalerForRequest(mux, req) @@ -1554,6 +1592,26 @@ func RegisterHealthHandlerClient(ctx context.Context, mux *runtime.ServeMux, cli }) + mux.Handle("GET", pattern_Health_GetVersion_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + rctx, err := runtime.AnnotateContext(ctx, mux, req) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_Health_GetVersion_0(rctx, inboundMarshaler, client, req, pathParams) + ctx = runtime.NewServerMetadataContext(ctx, md) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + + forward_Health_GetVersion_0(ctx, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + mux.Handle("GET", pattern_Health_StreamBeaconLogs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1602,6 +1660,8 @@ var ( pattern_Health_GetLogsEndpoints_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4}, []string{"v2", "validator", "health", "logs", "endpoints"}, "", runtime.AssumeColonVerbOpt(true))) + pattern_Health_GetVersion_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v2", "validator", "health", "version"}, "", runtime.AssumeColonVerbOpt(true))) + pattern_Health_StreamBeaconLogs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 4, 2, 5}, []string{"v2", "validator", "health", "logs", "beacon", "stream"}, "", runtime.AssumeColonVerbOpt(true))) pattern_Health_StreamValidatorLogs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3, 2, 1, 2, 4}, []string{"v2", "validator", "health", "logs", "stream"}, "", runtime.AssumeColonVerbOpt(true))) @@ -1612,6 +1672,8 @@ var ( forward_Health_GetLogsEndpoints_0 = runtime.ForwardResponseMessage + forward_Health_GetVersion_0 = runtime.ForwardResponseMessage + forward_Health_StreamBeaconLogs_0 = runtime.ForwardResponseStream forward_Health_StreamValidatorLogs_0 = runtime.ForwardResponseStream diff --git a/validator/rpc/BUILD.bazel b/validator/rpc/BUILD.bazel index f611cb4b15..58b619a829 100644 --- a/validator/rpc/BUILD.bazel +++ b/validator/rpc/BUILD.bazel @@ -28,6 +28,7 @@ go_library( "//shared/rand:go_default_library", "//shared/timeutils:go_default_library", "//shared/traceutil:go_default_library", + "//shared/version:go_default_library", "//validator/accounts:go_default_library", "//validator/accounts/wallet:go_default_library", "//validator/client:go_default_library", diff --git a/validator/rpc/health.go b/validator/rpc/health.go index 0bffcfb77c..eca20b7cc8 100644 --- a/validator/rpc/health.go +++ b/validator/rpc/health.go @@ -7,6 +7,7 @@ import ( ptypes "github.com/gogo/protobuf/types" "github.com/pkg/errors" pb "github.com/prysmaticlabs/prysm/proto/validator/accounts/v2" + "github.com/prysmaticlabs/prysm/shared/version" "google.golang.org/grpc/codes" "google.golang.org/grpc/status" ) @@ -41,6 +42,19 @@ func (s *Server) GetLogsEndpoints(ctx context.Context, _ *ptypes.Empty) (*pb.Log return nil, status.Error(codes.Unimplemented, "unimplemented") } +// GetVersion -- +func (s *Server) GetVersion(ctx context.Context, _ *ptypes.Empty) (*pb.VersionResponse, error) { + beacon, err := s.beaconNodeClient.GetVersion(ctx, &ptypes.Empty{}) + if err != nil { + return nil, err + } + + return &pb.VersionResponse{ + Beacon: beacon.Version, + Validator: version.GetVersion(), + }, nil +} + // StreamBeaconLogs from the beacon node via a gRPC server-side stream. func (s *Server) StreamBeaconLogs(req *ptypes.Empty, stream pb.Health_StreamBeaconLogsServer) error { client, err := s.beaconNodeHealthClient.StreamBeaconLogs(s.ctx, req)