From: czichy Date: Tue, 17 May 2022 12:35:45 +0000 (+0300) Subject: merge of the e2ap-v2.0 branch X-Git-Tag: common/v1.2.5~4 X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=1e2ebda06739c940232a17ad2d9e221f0547b66d;p=ric-plt%2Fnodeb-rnib.git merge of the e2ap-v2.0 branch commit 8ea5c5358ce9a001385c4639f1000e6c9287bcb2 Author: subhash kumar singh Date: Tue Mar 8 10:31:51 2022 +0000 Protobuf for node configuration Node configuration is added as part E2APv1.1 and E2APv2.0. gNB and eNB will have their respective node configuration. Issue-ID: RIC-722 Signed-off-by: subhash kumar singh Change-Id: I07db06c1084f2ae85f9063f66588da548521483a Change-Id: I76acb7525a50938ea3c1cc96e990e076e97a8fd8 Signed-off-by: czichy --- diff --git a/entities/additional_cell_information.pb.go b/entities/additional_cell_information.pb.go index 5dbfc96..7009ce6 100644 --- a/entities/additional_cell_information.pb.go +++ b/entities/additional_cell_information.pb.go @@ -20,7 +20,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.25.0-devel +// protoc-gen-go v1.25.0 // protoc v3.6.1 // source: additional_cell_information.proto diff --git a/entities/cell.pb.go b/entities/cell.pb.go index d40a68c..b542175 100644 --- a/entities/cell.pb.go +++ b/entities/cell.pb.go @@ -20,7 +20,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.25.0-devel +// protoc-gen-go v1.25.0 // protoc v3.6.1 // source: cell.proto diff --git a/entities/cells.pb.go b/entities/cells.pb.go index 095d153..d2840ea 100644 --- a/entities/cells.pb.go +++ b/entities/cells.pb.go @@ -20,7 +20,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.25.0-devel +// protoc-gen-go v1.25.0 // protoc v3.6.1 // source: cells.proto diff --git a/entities/e2node_component_config.pb.go b/entities/e2node_component_config.pb.go new file mode 100644 index 0000000..48fbd30 --- /dev/null +++ b/entities/e2node_component_config.pb.go @@ -0,0 +1,1302 @@ +// +// Copyright 2022 Samsung Electronics Co. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// +// This source code is part of the near-RT RIC (RAN Intelligent Controller) +// platform project (RICP). + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.25.0 +// protoc v3.6.1 +// source: e2node_component_config.proto + +package entities + +import ( + proto "github.com/golang/protobuf/proto" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// This is a compile-time assertion that a sufficiently up-to-date version +// of the legacy proto package is being used. +const _ = proto.ProtoPackageIsVersion4 + +type E2NodeComponentInterfaceType int32 + +const ( + E2NodeComponentInterfaceType_ng E2NodeComponentInterfaceType = 0 + E2NodeComponentInterfaceType_xn E2NodeComponentInterfaceType = 1 + E2NodeComponentInterfaceType_e1 E2NodeComponentInterfaceType = 2 + E2NodeComponentInterfaceType_f1 E2NodeComponentInterfaceType = 3 + E2NodeComponentInterfaceType_w1 E2NodeComponentInterfaceType = 5 + E2NodeComponentInterfaceType_s1 E2NodeComponentInterfaceType = 6 + E2NodeComponentInterfaceType_x2 E2NodeComponentInterfaceType = 7 +) + +// Enum value maps for E2NodeComponentInterfaceType. +var ( + E2NodeComponentInterfaceType_name = map[int32]string{ + 0: "ng", + 1: "xn", + 2: "e1", + 3: "f1", + 5: "w1", + 6: "s1", + 7: "x2", + } + E2NodeComponentInterfaceType_value = map[string]int32{ + "ng": 0, + "xn": 1, + "e1": 2, + "f1": 3, + "w1": 5, + "s1": 6, + "x2": 7, + } +) + +func (x E2NodeComponentInterfaceType) Enum() *E2NodeComponentInterfaceType { + p := new(E2NodeComponentInterfaceType) + *p = x + return p +} + +func (x E2NodeComponentInterfaceType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (E2NodeComponentInterfaceType) Descriptor() protoreflect.EnumDescriptor { + return file_e2node_component_config_proto_enumTypes[0].Descriptor() +} + +func (E2NodeComponentInterfaceType) Type() protoreflect.EnumType { + return &file_e2node_component_config_proto_enumTypes[0] +} + +func (x E2NodeComponentInterfaceType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use E2NodeComponentInterfaceType.Descriptor instead. +func (E2NodeComponentInterfaceType) EnumDescriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{0} +} + +type E2NodeComponentConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to E2NodeComponentID: + // *E2NodeComponentConfig_E2NodeComponentInterfaceTypeNG + // *E2NodeComponentConfig_E2NodeComponentInterfaceTypeXn + // *E2NodeComponentConfig_E2NodeComponentInterfaceTypeE1 + // *E2NodeComponentConfig_E2NodeComponentInterfaceTypeF1 + // *E2NodeComponentConfig_E2NodeComponentInterfaceTypeW1 + // *E2NodeComponentConfig_E2NodeComponentInterfaceTypeS1 + // *E2NodeComponentConfig_E2NodeComponentInterfaceTypeX2 + E2NodeComponentID isE2NodeComponentConfig_E2NodeComponentID `protobuf_oneof:"E2nodeComponentID"` + E2NodeComponentInterfaceType E2NodeComponentInterfaceType `protobuf:"varint,8,opt,name=e2nodeComponentInterfaceType,proto3,enum=entities.E2NodeComponentInterfaceType" json:"e2nodeComponentInterfaceType,omitempty"` + E2NodeComponentRequestPart []byte `protobuf:"bytes,9,opt,name=e2nodeComponentRequestPart,proto3" json:"e2nodeComponentRequestPart,omitempty"` + E2NodeComponentResponsePart []byte `protobuf:"bytes,10,opt,name=e2nodeComponentResponsePart,proto3" json:"e2nodeComponentResponsePart,omitempty"` +} + +func (x *E2NodeComponentConfig) Reset() { + *x = E2NodeComponentConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_e2node_component_config_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *E2NodeComponentConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*E2NodeComponentConfig) ProtoMessage() {} + +func (x *E2NodeComponentConfig) ProtoReflect() protoreflect.Message { + mi := &file_e2node_component_config_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use E2NodeComponentConfig.ProtoReflect.Descriptor instead. +func (*E2NodeComponentConfig) Descriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{0} +} + +func (m *E2NodeComponentConfig) GetE2NodeComponentID() isE2NodeComponentConfig_E2NodeComponentID { + if m != nil { + return m.E2NodeComponentID + } + return nil +} + +func (x *E2NodeComponentConfig) GetE2NodeComponentInterfaceTypeNG() *E2NodeComponentInterfaceNG { + if x, ok := x.GetE2NodeComponentID().(*E2NodeComponentConfig_E2NodeComponentInterfaceTypeNG); ok { + return x.E2NodeComponentInterfaceTypeNG + } + return nil +} + +func (x *E2NodeComponentConfig) GetE2NodeComponentInterfaceTypeXn() *E2NodeComponentInterfaceXn { + if x, ok := x.GetE2NodeComponentID().(*E2NodeComponentConfig_E2NodeComponentInterfaceTypeXn); ok { + return x.E2NodeComponentInterfaceTypeXn + } + return nil +} + +func (x *E2NodeComponentConfig) GetE2NodeComponentInterfaceTypeE1() *E2NodeComponentInterfaceE1 { + if x, ok := x.GetE2NodeComponentID().(*E2NodeComponentConfig_E2NodeComponentInterfaceTypeE1); ok { + return x.E2NodeComponentInterfaceTypeE1 + } + return nil +} + +func (x *E2NodeComponentConfig) GetE2NodeComponentInterfaceTypeF1() *E2NodeComponentInterfaceF1 { + if x, ok := x.GetE2NodeComponentID().(*E2NodeComponentConfig_E2NodeComponentInterfaceTypeF1); ok { + return x.E2NodeComponentInterfaceTypeF1 + } + return nil +} + +func (x *E2NodeComponentConfig) GetE2NodeComponentInterfaceTypeW1() *E2NodeComponentInterfaceW1 { + if x, ok := x.GetE2NodeComponentID().(*E2NodeComponentConfig_E2NodeComponentInterfaceTypeW1); ok { + return x.E2NodeComponentInterfaceTypeW1 + } + return nil +} + +func (x *E2NodeComponentConfig) GetE2NodeComponentInterfaceTypeS1() *E2NodeComponentInterfaceS1 { + if x, ok := x.GetE2NodeComponentID().(*E2NodeComponentConfig_E2NodeComponentInterfaceTypeS1); ok { + return x.E2NodeComponentInterfaceTypeS1 + } + return nil +} + +func (x *E2NodeComponentConfig) GetE2NodeComponentInterfaceTypeX2() *E2NodeComponentInterfaceX2 { + if x, ok := x.GetE2NodeComponentID().(*E2NodeComponentConfig_E2NodeComponentInterfaceTypeX2); ok { + return x.E2NodeComponentInterfaceTypeX2 + } + return nil +} + +func (x *E2NodeComponentConfig) GetE2NodeComponentInterfaceType() E2NodeComponentInterfaceType { + if x != nil { + return x.E2NodeComponentInterfaceType + } + return E2NodeComponentInterfaceType_ng +} + +func (x *E2NodeComponentConfig) GetE2NodeComponentRequestPart() []byte { + if x != nil { + return x.E2NodeComponentRequestPart + } + return nil +} + +func (x *E2NodeComponentConfig) GetE2NodeComponentResponsePart() []byte { + if x != nil { + return x.E2NodeComponentResponsePart + } + return nil +} + +type isE2NodeComponentConfig_E2NodeComponentID interface { + isE2NodeComponentConfig_E2NodeComponentID() +} + +type E2NodeComponentConfig_E2NodeComponentInterfaceTypeNG struct { + E2NodeComponentInterfaceTypeNG *E2NodeComponentInterfaceNG `protobuf:"bytes,1,opt,name=e2nodeComponentInterfaceTypeNG,proto3,oneof"` +} + +type E2NodeComponentConfig_E2NodeComponentInterfaceTypeXn struct { + E2NodeComponentInterfaceTypeXn *E2NodeComponentInterfaceXn `protobuf:"bytes,2,opt,name=e2nodeComponentInterfaceTypeXn,proto3,oneof"` +} + +type E2NodeComponentConfig_E2NodeComponentInterfaceTypeE1 struct { + E2NodeComponentInterfaceTypeE1 *E2NodeComponentInterfaceE1 `protobuf:"bytes,3,opt,name=e2nodeComponentInterfaceTypeE1,proto3,oneof"` +} + +type E2NodeComponentConfig_E2NodeComponentInterfaceTypeF1 struct { + E2NodeComponentInterfaceTypeF1 *E2NodeComponentInterfaceF1 `protobuf:"bytes,4,opt,name=e2nodeComponentInterfaceTypeF1,proto3,oneof"` +} + +type E2NodeComponentConfig_E2NodeComponentInterfaceTypeW1 struct { + E2NodeComponentInterfaceTypeW1 *E2NodeComponentInterfaceW1 `protobuf:"bytes,5,opt,name=e2nodeComponentInterfaceTypeW1,proto3,oneof"` +} + +type E2NodeComponentConfig_E2NodeComponentInterfaceTypeS1 struct { + E2NodeComponentInterfaceTypeS1 *E2NodeComponentInterfaceS1 `protobuf:"bytes,6,opt,name=e2nodeComponentInterfaceTypeS1,proto3,oneof"` +} + +type E2NodeComponentConfig_E2NodeComponentInterfaceTypeX2 struct { + E2NodeComponentInterfaceTypeX2 *E2NodeComponentInterfaceX2 `protobuf:"bytes,7,opt,name=e2nodeComponentInterfaceTypeX2,proto3,oneof"` +} + +func (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeNG) isE2NodeComponentConfig_E2NodeComponentID() { +} + +func (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeXn) isE2NodeComponentConfig_E2NodeComponentID() { +} + +func (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeE1) isE2NodeComponentConfig_E2NodeComponentID() { +} + +func (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeF1) isE2NodeComponentConfig_E2NodeComponentID() { +} + +func (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeW1) isE2NodeComponentConfig_E2NodeComponentID() { +} + +func (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeS1) isE2NodeComponentConfig_E2NodeComponentID() { +} + +func (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeX2) isE2NodeComponentConfig_E2NodeComponentID() { +} + +type E2NodeComponentInterfaceNG struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AmfName string `protobuf:"bytes,11,opt,name=amf_name,json=amfName,proto3" json:"amf_name,omitempty"` +} + +func (x *E2NodeComponentInterfaceNG) Reset() { + *x = E2NodeComponentInterfaceNG{} + if protoimpl.UnsafeEnabled { + mi := &file_e2node_component_config_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *E2NodeComponentInterfaceNG) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*E2NodeComponentInterfaceNG) ProtoMessage() {} + +func (x *E2NodeComponentInterfaceNG) ProtoReflect() protoreflect.Message { + mi := &file_e2node_component_config_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use E2NodeComponentInterfaceNG.ProtoReflect.Descriptor instead. +func (*E2NodeComponentInterfaceNG) Descriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{1} +} + +func (x *E2NodeComponentInterfaceNG) GetAmfName() string { + if x != nil { + return x.AmfName + } + return "" +} + +type E2NodeComponentInterfaceXn struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to GlobalNgRanNodeId: + // *E2NodeComponentInterfaceXn_GlobalNgenbId + // *E2NodeComponentInterfaceXn_GlobalGnbId + GlobalNgRanNodeId isE2NodeComponentInterfaceXn_GlobalNgRanNodeId `protobuf_oneof:"global_ng_ran_node_id"` +} + +func (x *E2NodeComponentInterfaceXn) Reset() { + *x = E2NodeComponentInterfaceXn{} + if protoimpl.UnsafeEnabled { + mi := &file_e2node_component_config_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *E2NodeComponentInterfaceXn) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*E2NodeComponentInterfaceXn) ProtoMessage() {} + +func (x *E2NodeComponentInterfaceXn) ProtoReflect() protoreflect.Message { + mi := &file_e2node_component_config_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use E2NodeComponentInterfaceXn.ProtoReflect.Descriptor instead. +func (*E2NodeComponentInterfaceXn) Descriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{2} +} + +func (m *E2NodeComponentInterfaceXn) GetGlobalNgRanNodeId() isE2NodeComponentInterfaceXn_GlobalNgRanNodeId { + if m != nil { + return m.GlobalNgRanNodeId + } + return nil +} + +func (x *E2NodeComponentInterfaceXn) GetGlobalNgenbId() *GlobalNGENBID { + if x, ok := x.GetGlobalNgRanNodeId().(*E2NodeComponentInterfaceXn_GlobalNgenbId); ok { + return x.GlobalNgenbId + } + return nil +} + +func (x *E2NodeComponentInterfaceXn) GetGlobalGnbId() *GlobalGNBID { + if x, ok := x.GetGlobalNgRanNodeId().(*E2NodeComponentInterfaceXn_GlobalGnbId); ok { + return x.GlobalGnbId + } + return nil +} + +type isE2NodeComponentInterfaceXn_GlobalNgRanNodeId interface { + isE2NodeComponentInterfaceXn_GlobalNgRanNodeId() +} + +type E2NodeComponentInterfaceXn_GlobalNgenbId struct { + GlobalNgenbId *GlobalNGENBID `protobuf:"bytes,12,opt,name=global_ngenb_id,json=globalNgenbId,proto3,oneof"` +} + +type E2NodeComponentInterfaceXn_GlobalGnbId struct { + GlobalGnbId *GlobalGNBID `protobuf:"bytes,13,opt,name=global_gnb_id,json=globalGnbId,proto3,oneof"` +} + +func (*E2NodeComponentInterfaceXn_GlobalNgenbId) isE2NodeComponentInterfaceXn_GlobalNgRanNodeId() {} + +func (*E2NodeComponentInterfaceXn_GlobalGnbId) isE2NodeComponentInterfaceXn_GlobalNgRanNodeId() {} + +type E2NodeComponentInterfaceE1 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GNBCuCpId int64 `protobuf:"varint,14,opt,name=gNB_cu_cp_id,json=gNBCuCpId,proto3" json:"gNB_cu_cp_id,omitempty"` +} + +func (x *E2NodeComponentInterfaceE1) Reset() { + *x = E2NodeComponentInterfaceE1{} + if protoimpl.UnsafeEnabled { + mi := &file_e2node_component_config_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *E2NodeComponentInterfaceE1) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*E2NodeComponentInterfaceE1) ProtoMessage() {} + +func (x *E2NodeComponentInterfaceE1) ProtoReflect() protoreflect.Message { + mi := &file_e2node_component_config_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use E2NodeComponentInterfaceE1.ProtoReflect.Descriptor instead. +func (*E2NodeComponentInterfaceE1) Descriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{3} +} + +func (x *E2NodeComponentInterfaceE1) GetGNBCuCpId() int64 { + if x != nil { + return x.GNBCuCpId + } + return 0 +} + +type E2NodeComponentInterfaceF1 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GNBDuId int64 `protobuf:"varint,15,opt,name=gNB_du_id,json=gNBDuId,proto3" json:"gNB_du_id,omitempty"` +} + +func (x *E2NodeComponentInterfaceF1) Reset() { + *x = E2NodeComponentInterfaceF1{} + if protoimpl.UnsafeEnabled { + mi := &file_e2node_component_config_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *E2NodeComponentInterfaceF1) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*E2NodeComponentInterfaceF1) ProtoMessage() {} + +func (x *E2NodeComponentInterfaceF1) ProtoReflect() protoreflect.Message { + mi := &file_e2node_component_config_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use E2NodeComponentInterfaceF1.ProtoReflect.Descriptor instead. +func (*E2NodeComponentInterfaceF1) Descriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{4} +} + +func (x *E2NodeComponentInterfaceF1) GetGNBDuId() int64 { + if x != nil { + return x.GNBDuId + } + return 0 +} + +type E2NodeComponentInterfaceW1 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + NgenbDuId int64 `protobuf:"varint,16,opt,name=ngenb_du_id,json=ngenbDuId,proto3" json:"ngenb_du_id,omitempty"` +} + +func (x *E2NodeComponentInterfaceW1) Reset() { + *x = E2NodeComponentInterfaceW1{} + if protoimpl.UnsafeEnabled { + mi := &file_e2node_component_config_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *E2NodeComponentInterfaceW1) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*E2NodeComponentInterfaceW1) ProtoMessage() {} + +func (x *E2NodeComponentInterfaceW1) ProtoReflect() protoreflect.Message { + mi := &file_e2node_component_config_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use E2NodeComponentInterfaceW1.ProtoReflect.Descriptor instead. +func (*E2NodeComponentInterfaceW1) Descriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{5} +} + +func (x *E2NodeComponentInterfaceW1) GetNgenbDuId() int64 { + if x != nil { + return x.NgenbDuId + } + return 0 +} + +type E2NodeComponentInterfaceS1 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MmeName string `protobuf:"bytes,17,opt,name=mme_name,json=mmeName,proto3" json:"mme_name,omitempty"` +} + +func (x *E2NodeComponentInterfaceS1) Reset() { + *x = E2NodeComponentInterfaceS1{} + if protoimpl.UnsafeEnabled { + mi := &file_e2node_component_config_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *E2NodeComponentInterfaceS1) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*E2NodeComponentInterfaceS1) ProtoMessage() {} + +func (x *E2NodeComponentInterfaceS1) ProtoReflect() protoreflect.Message { + mi := &file_e2node_component_config_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use E2NodeComponentInterfaceS1.ProtoReflect.Descriptor instead. +func (*E2NodeComponentInterfaceS1) Descriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{6} +} + +func (x *E2NodeComponentInterfaceS1) GetMmeName() string { + if x != nil { + return x.MmeName + } + return "" +} + +type E2NodeComponentInterfaceX2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GlobalEnbId *GlobalENBID `protobuf:"bytes,18,opt,name=global_enb_id,json=globalEnbId,proto3" json:"global_enb_id,omitempty"` + GlobalEngnbId *GlobalENGNBID `protobuf:"bytes,19,opt,name=global_engnb_id,json=globalEngnbId,proto3" json:"global_engnb_id,omitempty"` +} + +func (x *E2NodeComponentInterfaceX2) Reset() { + *x = E2NodeComponentInterfaceX2{} + if protoimpl.UnsafeEnabled { + mi := &file_e2node_component_config_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *E2NodeComponentInterfaceX2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*E2NodeComponentInterfaceX2) ProtoMessage() {} + +func (x *E2NodeComponentInterfaceX2) ProtoReflect() protoreflect.Message { + mi := &file_e2node_component_config_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use E2NodeComponentInterfaceX2.ProtoReflect.Descriptor instead. +func (*E2NodeComponentInterfaceX2) Descriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{7} +} + +func (x *E2NodeComponentInterfaceX2) GetGlobalEnbId() *GlobalENBID { + if x != nil { + return x.GlobalEnbId + } + return nil +} + +func (x *E2NodeComponentInterfaceX2) GetGlobalEngnbId() *GlobalENGNBID { + if x != nil { + return x.GlobalEngnbId + } + return nil +} + +type GlobalENBID struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlmnIdentity string `protobuf:"bytes,20,opt,name=plmn_identity,json=plmnIdentity,proto3" json:"plmn_identity,omitempty"` + EnbId string `protobuf:"bytes,21,opt,name=enb_id,json=enbId,proto3" json:"enb_id,omitempty"` + EnbType EnbType `protobuf:"varint,22,opt,name=enb_type,json=enbType,proto3,enum=entities.EnbType" json:"enb_type,omitempty"` +} + +func (x *GlobalENBID) Reset() { + *x = GlobalENBID{} + if protoimpl.UnsafeEnabled { + mi := &file_e2node_component_config_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GlobalENBID) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GlobalENBID) ProtoMessage() {} + +func (x *GlobalENBID) ProtoReflect() protoreflect.Message { + mi := &file_e2node_component_config_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GlobalENBID.ProtoReflect.Descriptor instead. +func (*GlobalENBID) Descriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{8} +} + +func (x *GlobalENBID) GetPlmnIdentity() string { + if x != nil { + return x.PlmnIdentity + } + return "" +} + +func (x *GlobalENBID) GetEnbId() string { + if x != nil { + return x.EnbId + } + return "" +} + +func (x *GlobalENBID) GetEnbType() EnbType { + if x != nil { + return x.EnbType + } + return EnbType_UNKNOWN_ENB_TYPE +} + +type GlobalENGNBID struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlmnIdentity string `protobuf:"bytes,23,opt,name=plmn_identity,json=plmnIdentity,proto3" json:"plmn_identity,omitempty"` + GnbId string `protobuf:"bytes,24,opt,name=gnb_id,json=gnbId,proto3" json:"gnb_id,omitempty"` + GnbType GnbType `protobuf:"varint,25,opt,name=gnb_type,json=gnbType,proto3,enum=entities.GnbType" json:"gnb_type,omitempty"` +} + +func (x *GlobalENGNBID) Reset() { + *x = GlobalENGNBID{} + if protoimpl.UnsafeEnabled { + mi := &file_e2node_component_config_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GlobalENGNBID) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GlobalENGNBID) ProtoMessage() {} + +func (x *GlobalENGNBID) ProtoReflect() protoreflect.Message { + mi := &file_e2node_component_config_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GlobalENGNBID.ProtoReflect.Descriptor instead. +func (*GlobalENGNBID) Descriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{9} +} + +func (x *GlobalENGNBID) GetPlmnIdentity() string { + if x != nil { + return x.PlmnIdentity + } + return "" +} + +func (x *GlobalENGNBID) GetGnbId() string { + if x != nil { + return x.GnbId + } + return "" +} + +func (x *GlobalENGNBID) GetGnbType() GnbType { + if x != nil { + return x.GnbType + } + return GnbType_UNKNOWN_GNB_TYPE +} + +type GlobalGNBID struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlmnIdentity string `protobuf:"bytes,26,opt,name=plmn_identity,json=plmnIdentity,proto3" json:"plmn_identity,omitempty"` + GnbId string `protobuf:"bytes,27,opt,name=gnb_id,json=gnbId,proto3" json:"gnb_id,omitempty"` + GnbType GnbType `protobuf:"varint,28,opt,name=gnb_type,json=gnbType,proto3,enum=entities.GnbType" json:"gnb_type,omitempty"` +} + +func (x *GlobalGNBID) Reset() { + *x = GlobalGNBID{} + if protoimpl.UnsafeEnabled { + mi := &file_e2node_component_config_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GlobalGNBID) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GlobalGNBID) ProtoMessage() {} + +func (x *GlobalGNBID) ProtoReflect() protoreflect.Message { + mi := &file_e2node_component_config_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GlobalGNBID.ProtoReflect.Descriptor instead. +func (*GlobalGNBID) Descriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{10} +} + +func (x *GlobalGNBID) GetPlmnIdentity() string { + if x != nil { + return x.PlmnIdentity + } + return "" +} + +func (x *GlobalGNBID) GetGnbId() string { + if x != nil { + return x.GnbId + } + return "" +} + +func (x *GlobalGNBID) GetGnbType() GnbType { + if x != nil { + return x.GnbType + } + return GnbType_UNKNOWN_GNB_TYPE +} + +type GlobalNGENBID struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlmnIdentity string `protobuf:"bytes,29,opt,name=plmn_identity,json=plmnIdentity,proto3" json:"plmn_identity,omitempty"` + EnbId string `protobuf:"bytes,30,opt,name=enb_id,json=enbId,proto3" json:"enb_id,omitempty"` + EnbType EnbType `protobuf:"varint,31,opt,name=enb_type,json=enbType,proto3,enum=entities.EnbType" json:"enb_type,omitempty"` +} + +func (x *GlobalNGENBID) Reset() { + *x = GlobalNGENBID{} + if protoimpl.UnsafeEnabled { + mi := &file_e2node_component_config_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GlobalNGENBID) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GlobalNGENBID) ProtoMessage() {} + +func (x *GlobalNGENBID) ProtoReflect() protoreflect.Message { + mi := &file_e2node_component_config_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GlobalNGENBID.ProtoReflect.Descriptor instead. +func (*GlobalNGENBID) Descriptor() ([]byte, []int) { + return file_e2node_component_config_proto_rawDescGZIP(), []int{11} +} + +func (x *GlobalNGENBID) GetPlmnIdentity() string { + if x != nil { + return x.PlmnIdentity + } + return "" +} + +func (x *GlobalNGENBID) GetEnbId() string { + if x != nil { + return x.EnbId + } + return "" +} + +func (x *GlobalNGENBID) GetEnbType() EnbType { + if x != nil { + return x.EnbType + } + return EnbType_UNKNOWN_ENB_TYPE +} + +var File_e2node_component_config_proto protoreflect.FileDescriptor + +var file_e2node_component_config_proto_rawDesc = []byte{ + 0x0a, 0x1d, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, + 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, + 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, 0x0e, 0x6e, 0x62, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xaa, 0x08, 0x0a, 0x15, 0x45, 0x32, + 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x12, 0x6e, 0x0a, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x4e, 0x47, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x4e, + 0x47, 0x48, 0x00, 0x52, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x4e, 0x47, 0x12, 0x6e, 0x0a, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x58, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x58, + 0x6e, 0x48, 0x00, 0x52, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x58, 0x6e, 0x12, 0x6e, 0x0a, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x45, 0x31, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x45, + 0x31, 0x48, 0x00, 0x52, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x45, 0x31, 0x12, 0x6e, 0x0a, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x46, 0x31, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x46, + 0x31, 0x48, 0x00, 0x52, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x46, 0x31, 0x12, 0x6e, 0x0a, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x57, 0x31, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x57, + 0x31, 0x48, 0x00, 0x52, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x57, 0x31, 0x12, 0x6e, 0x0a, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x53, 0x31, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x53, + 0x31, 0x48, 0x00, 0x52, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x53, 0x31, 0x12, 0x6e, 0x0a, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x58, 0x32, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x58, + 0x32, 0x48, 0x00, 0x52, 0x1e, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x58, 0x32, 0x12, 0x6a, 0x0a, 0x1c, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x52, 0x1c, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, + 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x3e, 0x0a, 0x1a, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x74, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x1a, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x74, 0x12, + 0x40, 0x0a, 0x1b, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x72, 0x74, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x1b, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, + 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x72, + 0x74, 0x42, 0x13, 0x0a, 0x11, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x22, 0x37, 0x0a, 0x1a, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, + 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x4e, 0x47, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x6d, 0x66, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x6d, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x22, + 0xb5, 0x01, 0x0a, 0x1a, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, + 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x58, 0x6e, 0x12, 0x41, + 0x0a, 0x0f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x6e, 0x67, 0x65, 0x6e, 0x62, 0x5f, 0x69, + 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x2e, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4e, 0x47, 0x45, 0x4e, 0x42, 0x49, 0x44, + 0x48, 0x00, 0x52, 0x0d, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4e, 0x67, 0x65, 0x6e, 0x62, 0x49, + 0x64, 0x12, 0x3b, 0x0a, 0x0d, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x67, 0x6e, 0x62, 0x5f, + 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x2e, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x47, 0x4e, 0x42, 0x49, 0x44, 0x48, + 0x00, 0x52, 0x0b, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x47, 0x6e, 0x62, 0x49, 0x64, 0x42, 0x17, + 0x0a, 0x15, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x6e, 0x67, 0x5f, 0x72, 0x61, 0x6e, 0x5f, + 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x22, 0x3d, 0x0a, 0x1a, 0x45, 0x32, 0x6e, 0x6f, 0x64, + 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, + 0x61, 0x63, 0x65, 0x45, 0x31, 0x12, 0x1f, 0x0a, 0x0c, 0x67, 0x4e, 0x42, 0x5f, 0x63, 0x75, 0x5f, + 0x63, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x67, 0x4e, 0x42, + 0x43, 0x75, 0x43, 0x70, 0x49, 0x64, 0x22, 0x38, 0x0a, 0x1a, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, + 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x46, 0x31, 0x12, 0x1a, 0x0a, 0x09, 0x67, 0x4e, 0x42, 0x5f, 0x64, 0x75, 0x5f, 0x69, + 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x4e, 0x42, 0x44, 0x75, 0x49, 0x64, + 0x22, 0x3c, 0x0a, 0x1a, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, + 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x57, 0x31, 0x12, 0x1e, + 0x0a, 0x0b, 0x6e, 0x67, 0x65, 0x6e, 0x62, 0x5f, 0x64, 0x75, 0x5f, 0x69, 0x64, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x09, 0x6e, 0x67, 0x65, 0x6e, 0x62, 0x44, 0x75, 0x49, 0x64, 0x22, 0x37, + 0x0a, 0x1a, 0x45, 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, + 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x53, 0x31, 0x12, 0x19, 0x0a, 0x08, + 0x6d, 0x6d, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x6d, 0x6d, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x98, 0x01, 0x0a, 0x1a, 0x45, 0x32, 0x6e, 0x6f, + 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x66, 0x61, 0x63, 0x65, 0x58, 0x32, 0x12, 0x39, 0x0a, 0x0d, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, + 0x5f, 0x65, 0x6e, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x45, + 0x4e, 0x42, 0x49, 0x44, 0x52, 0x0b, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x45, 0x6e, 0x62, 0x49, + 0x64, 0x12, 0x3f, 0x0a, 0x0f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x65, 0x6e, 0x67, 0x6e, + 0x62, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x45, 0x4e, 0x47, 0x4e, + 0x42, 0x49, 0x44, 0x52, 0x0d, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x45, 0x6e, 0x67, 0x6e, 0x62, + 0x49, 0x64, 0x22, 0x77, 0x0a, 0x0b, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x45, 0x4e, 0x42, 0x49, + 0x44, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6c, 0x6d, 0x6e, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x79, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x6d, 0x6e, 0x49, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x62, 0x5f, 0x69, 0x64, + 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x62, 0x49, 0x64, 0x12, 0x2c, 0x0a, + 0x08, 0x65, 0x6e, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x11, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x6e, 0x62, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x07, 0x65, 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, 0x22, 0x79, 0x0a, 0x0d, 0x47, + 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x45, 0x4e, 0x47, 0x4e, 0x42, 0x49, 0x44, 0x12, 0x23, 0x0a, 0x0d, + 0x70, 0x6c, 0x6d, 0x6e, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x17, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x6d, 0x6e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x12, 0x15, 0x0a, 0x06, 0x67, 0x6e, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x67, 0x6e, 0x62, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x08, 0x67, 0x6e, 0x62, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x47, 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x67, + 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, 0x22, 0x77, 0x0a, 0x0b, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, + 0x47, 0x4e, 0x42, 0x49, 0x44, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6c, 0x6d, 0x6e, 0x5f, 0x69, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, + 0x6d, 0x6e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x15, 0x0a, 0x06, 0x67, 0x6e, + 0x62, 0x5f, 0x69, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x67, 0x6e, 0x62, 0x49, + 0x64, 0x12, 0x2c, 0x0a, 0x08, 0x67, 0x6e, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1c, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x47, + 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x67, 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, 0x22, + 0x79, 0x0a, 0x0d, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x4e, 0x47, 0x45, 0x4e, 0x42, 0x49, 0x44, + 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6c, 0x6d, 0x6e, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x6d, 0x6e, 0x49, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x15, 0x0a, 0x06, 0x65, 0x6e, 0x62, 0x5f, 0x69, 0x64, 0x18, + 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x62, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x08, + 0x65, 0x6e, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, + 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x6e, 0x62, 0x54, 0x79, 0x70, + 0x65, 0x52, 0x07, 0x65, 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, 0x2a, 0x56, 0x0a, 0x1c, 0x45, 0x32, + 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x74, + 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x06, 0x0a, 0x02, 0x6e, 0x67, + 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x78, 0x6e, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x65, 0x31, + 0x10, 0x02, 0x12, 0x06, 0x0a, 0x02, 0x66, 0x31, 0x10, 0x03, 0x12, 0x06, 0x0a, 0x02, 0x77, 0x31, + 0x10, 0x05, 0x12, 0x06, 0x0a, 0x02, 0x73, 0x31, 0x10, 0x06, 0x12, 0x06, 0x0a, 0x02, 0x78, 0x32, + 0x10, 0x07, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_e2node_component_config_proto_rawDescOnce sync.Once + file_e2node_component_config_proto_rawDescData = file_e2node_component_config_proto_rawDesc +) + +func file_e2node_component_config_proto_rawDescGZIP() []byte { + file_e2node_component_config_proto_rawDescOnce.Do(func() { + file_e2node_component_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_e2node_component_config_proto_rawDescData) + }) + return file_e2node_component_config_proto_rawDescData +} + +var file_e2node_component_config_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_e2node_component_config_proto_msgTypes = make([]protoimpl.MessageInfo, 12) +var file_e2node_component_config_proto_goTypes = []interface{}{ + (E2NodeComponentInterfaceType)(0), // 0: entities.E2nodeComponentInterfaceType + (*E2NodeComponentConfig)(nil), // 1: entities.E2nodeComponentConfig + (*E2NodeComponentInterfaceNG)(nil), // 2: entities.E2nodeComponentInterfaceNG + (*E2NodeComponentInterfaceXn)(nil), // 3: entities.E2nodeComponentInterfaceXn + (*E2NodeComponentInterfaceE1)(nil), // 4: entities.E2nodeComponentInterfaceE1 + (*E2NodeComponentInterfaceF1)(nil), // 5: entities.E2nodeComponentInterfaceF1 + (*E2NodeComponentInterfaceW1)(nil), // 6: entities.E2nodeComponentInterfaceW1 + (*E2NodeComponentInterfaceS1)(nil), // 7: entities.E2nodeComponentInterfaceS1 + (*E2NodeComponentInterfaceX2)(nil), // 8: entities.E2nodeComponentInterfaceX2 + (*GlobalENBID)(nil), // 9: entities.GlobalENBID + (*GlobalENGNBID)(nil), // 10: entities.GlobalENGNBID + (*GlobalGNBID)(nil), // 11: entities.GlobalGNBID + (*GlobalNGENBID)(nil), // 12: entities.GlobalNGENBID + (EnbType)(0), // 13: entities.EnbType + (GnbType)(0), // 14: entities.GnbType +} +var file_e2node_component_config_proto_depIdxs = []int32{ + 2, // 0: entities.E2nodeComponentConfig.e2nodeComponentInterfaceTypeNG:type_name -> entities.E2nodeComponentInterfaceNG + 3, // 1: entities.E2nodeComponentConfig.e2nodeComponentInterfaceTypeXn:type_name -> entities.E2nodeComponentInterfaceXn + 4, // 2: entities.E2nodeComponentConfig.e2nodeComponentInterfaceTypeE1:type_name -> entities.E2nodeComponentInterfaceE1 + 5, // 3: entities.E2nodeComponentConfig.e2nodeComponentInterfaceTypeF1:type_name -> entities.E2nodeComponentInterfaceF1 + 6, // 4: entities.E2nodeComponentConfig.e2nodeComponentInterfaceTypeW1:type_name -> entities.E2nodeComponentInterfaceW1 + 7, // 5: entities.E2nodeComponentConfig.e2nodeComponentInterfaceTypeS1:type_name -> entities.E2nodeComponentInterfaceS1 + 8, // 6: entities.E2nodeComponentConfig.e2nodeComponentInterfaceTypeX2:type_name -> entities.E2nodeComponentInterfaceX2 + 0, // 7: entities.E2nodeComponentConfig.e2nodeComponentInterfaceType:type_name -> entities.E2nodeComponentInterfaceType + 12, // 8: entities.E2nodeComponentInterfaceXn.global_ngenb_id:type_name -> entities.GlobalNGENBID + 11, // 9: entities.E2nodeComponentInterfaceXn.global_gnb_id:type_name -> entities.GlobalGNBID + 9, // 10: entities.E2nodeComponentInterfaceX2.global_enb_id:type_name -> entities.GlobalENBID + 10, // 11: entities.E2nodeComponentInterfaceX2.global_engnb_id:type_name -> entities.GlobalENGNBID + 13, // 12: entities.GlobalENBID.enb_type:type_name -> entities.EnbType + 14, // 13: entities.GlobalENGNBID.gnb_type:type_name -> entities.GnbType + 14, // 14: entities.GlobalGNBID.gnb_type:type_name -> entities.GnbType + 13, // 15: entities.GlobalNGENBID.enb_type:type_name -> entities.EnbType + 16, // [16:16] is the sub-list for method output_type + 16, // [16:16] is the sub-list for method input_type + 16, // [16:16] is the sub-list for extension type_name + 16, // [16:16] is the sub-list for extension extendee + 0, // [0:16] is the sub-list for field type_name +} + +func init() { file_e2node_component_config_proto_init() } +func file_e2node_component_config_proto_init() { + if File_e2node_component_config_proto != nil { + return + } + file_nb_types_proto_init() + if !protoimpl.UnsafeEnabled { + file_e2node_component_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*E2NodeComponentConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_e2node_component_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*E2NodeComponentInterfaceNG); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_e2node_component_config_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*E2NodeComponentInterfaceXn); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_e2node_component_config_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*E2NodeComponentInterfaceE1); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_e2node_component_config_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*E2NodeComponentInterfaceF1); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_e2node_component_config_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*E2NodeComponentInterfaceW1); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_e2node_component_config_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*E2NodeComponentInterfaceS1); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_e2node_component_config_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*E2NodeComponentInterfaceX2); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_e2node_component_config_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GlobalENBID); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_e2node_component_config_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GlobalENGNBID); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_e2node_component_config_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GlobalGNBID); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_e2node_component_config_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GlobalNGENBID); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_e2node_component_config_proto_msgTypes[0].OneofWrappers = []interface{}{ + (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeNG)(nil), + (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeXn)(nil), + (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeE1)(nil), + (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeF1)(nil), + (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeW1)(nil), + (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeS1)(nil), + (*E2NodeComponentConfig_E2NodeComponentInterfaceTypeX2)(nil), + } + file_e2node_component_config_proto_msgTypes[2].OneofWrappers = []interface{}{ + (*E2NodeComponentInterfaceXn_GlobalNgenbId)(nil), + (*E2NodeComponentInterfaceXn_GlobalGnbId)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_e2node_component_config_proto_rawDesc, + NumEnums: 1, + NumMessages: 12, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_e2node_component_config_proto_goTypes, + DependencyIndexes: file_e2node_component_config_proto_depIdxs, + EnumInfos: file_e2node_component_config_proto_enumTypes, + MessageInfos: file_e2node_component_config_proto_msgTypes, + }.Build() + File_e2node_component_config_proto = out.File + file_e2node_component_config_proto_rawDesc = nil + file_e2node_component_config_proto_goTypes = nil + file_e2node_component_config_proto_depIdxs = nil +} diff --git a/entities/e2node_component_config.proto b/entities/e2node_component_config.proto new file mode 100644 index 0000000..34ab173 --- /dev/null +++ b/entities/e2node_component_config.proto @@ -0,0 +1,107 @@ +/* + * Copyright 2022 Samsung Electronics Co. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* + * This source code is part of the near-RT RIC (RAN Intelligent Controller) + * platform project (RICP). + */ + + + syntax = "proto3"; + package entities; + + import "nb_types.proto"; + + message E2nodeComponentConfig { + oneof E2nodeComponentID { + E2nodeComponentInterfaceNG e2nodeComponentInterfaceTypeNG = 1; + E2nodeComponentInterfaceXn e2nodeComponentInterfaceTypeXn = 2; + E2nodeComponentInterfaceE1 e2nodeComponentInterfaceTypeE1 = 3; + E2nodeComponentInterfaceF1 e2nodeComponentInterfaceTypeF1 = 4; + E2nodeComponentInterfaceW1 e2nodeComponentInterfaceTypeW1 = 5; + E2nodeComponentInterfaceS1 e2nodeComponentInterfaceTypeS1 = 6; + E2nodeComponentInterfaceX2 e2nodeComponentInterfaceTypeX2 = 7; + } + E2nodeComponentInterfaceType e2nodeComponentInterfaceType = 8; + bytes e2nodeComponentRequestPart = 9; + bytes e2nodeComponentResponsePart = 10; + } + + message E2nodeComponentInterfaceNG { + string amf_name = 11; + } + + message E2nodeComponentInterfaceXn { + oneof global_ng_ran_node_id { + GlobalNGENBID global_ngenb_id = 12; + GlobalGNBID global_gnb_id = 13; + } + } + + message E2nodeComponentInterfaceE1 { + int64 gNB_cu_cp_id = 14; + } + + message E2nodeComponentInterfaceF1 { + int64 gNB_du_id = 15; + } + + message E2nodeComponentInterfaceW1 { + int64 ngenb_du_id = 16; +} + +message E2nodeComponentInterfaceS1 { + string mme_name = 17; +} + +message E2nodeComponentInterfaceX2 { + GlobalENBID global_enb_id = 18; + GlobalENGNBID global_engnb_id = 19; +} + +message GlobalENBID { + string plmn_identity = 20; + string enb_id = 21; + EnbType enb_type = 22; +} + +message GlobalENGNBID { + string plmn_identity = 23; + string gnb_id = 24; + GnbType gnb_type = 25; +} + +message GlobalGNBID { + string plmn_identity = 26; + string gnb_id = 27; + GnbType gnb_type = 28; +} + +message GlobalNGENBID { + string plmn_identity = 29; + string enb_id = 30; + EnbType enb_type = 31; +} + +enum E2nodeComponentInterfaceType { + ng = 0; + xn = 1; + e1 = 2; + f1 = 3; + w1 = 5; + s1 = 6; + x2 = 7; +} \ No newline at end of file diff --git a/entities/enb.pb.go b/entities/enb.pb.go index 8187eb4..ac1d171 100644 --- a/entities/enb.pb.go +++ b/entities/enb.pb.go @@ -20,7 +20,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.25.0-devel +// protoc-gen-go v1.25.0 // protoc v3.6.1 // source: enb.proto @@ -302,70 +302,6 @@ func (NumberOfAntennaPorts) EnumDescriptor() ([]byte, []int) { return file_enb_proto_rawDescGZIP(), []int{4} } -type EnbType int32 - -const ( - EnbType_UNKNOWN_ENB_TYPE EnbType = 0 - EnbType_MACRO_ENB EnbType = 1 - EnbType_HOME_ENB EnbType = 2 - EnbType_SHORT_MACRO_ENB EnbType = 3 - EnbType_LONG_MACRO_ENB EnbType = 4 - EnbType_MACRO_NG_ENB EnbType = 5 - EnbType_SHORT_MACRO_NG_ENB EnbType = 6 - EnbType_LONG_MACRO_NG_ENB EnbType = 7 -) - -// Enum value maps for EnbType. -var ( - EnbType_name = map[int32]string{ - 0: "UNKNOWN_ENB_TYPE", - 1: "MACRO_ENB", - 2: "HOME_ENB", - 3: "SHORT_MACRO_ENB", - 4: "LONG_MACRO_ENB", - 5: "MACRO_NG_ENB", - 6: "SHORT_MACRO_NG_ENB", - 7: "LONG_MACRO_NG_ENB", - } - EnbType_value = map[string]int32{ - "UNKNOWN_ENB_TYPE": 0, - "MACRO_ENB": 1, - "HOME_ENB": 2, - "SHORT_MACRO_ENB": 3, - "LONG_MACRO_ENB": 4, - "MACRO_NG_ENB": 5, - "SHORT_MACRO_NG_ENB": 6, - "LONG_MACRO_NG_ENB": 7, - } -) - -func (x EnbType) Enum() *EnbType { - p := new(EnbType) - *p = x - return p -} - -func (x EnbType) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (EnbType) Descriptor() protoreflect.EnumDescriptor { - return file_enb_proto_enumTypes[5].Descriptor() -} - -func (EnbType) Type() protoreflect.EnumType { - return &file_enb_proto_enumTypes[5] -} - -func (x EnbType) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use EnbType.Descriptor instead. -func (EnbType) EnumDescriptor() ([]byte, []int) { - return file_enb_proto_rawDescGZIP(), []int{5} -} - type SubframeAssignment int32 const ( @@ -414,11 +350,11 @@ func (x SubframeAssignment) String() string { } func (SubframeAssignment) Descriptor() protoreflect.EnumDescriptor { - return file_enb_proto_enumTypes[6].Descriptor() + return file_enb_proto_enumTypes[5].Descriptor() } func (SubframeAssignment) Type() protoreflect.EnumType { - return &file_enb_proto_enumTypes[6] + return &file_enb_proto_enumTypes[5] } func (x SubframeAssignment) Number() protoreflect.EnumNumber { @@ -427,7 +363,7 @@ func (x SubframeAssignment) Number() protoreflect.EnumNumber { // Deprecated: Use SubframeAssignment.Descriptor instead. func (SubframeAssignment) EnumDescriptor() ([]byte, []int) { - return file_enb_proto_rawDescGZIP(), []int{6} + return file_enb_proto_rawDescGZIP(), []int{5} } type CyclicPrefix int32 @@ -463,11 +399,11 @@ func (x CyclicPrefix) String() string { } func (CyclicPrefix) Descriptor() protoreflect.EnumDescriptor { - return file_enb_proto_enumTypes[7].Descriptor() + return file_enb_proto_enumTypes[6].Descriptor() } func (CyclicPrefix) Type() protoreflect.EnumType { - return &file_enb_proto_enumTypes[7] + return &file_enb_proto_enumTypes[6] } func (x CyclicPrefix) Number() protoreflect.EnumNumber { @@ -476,7 +412,7 @@ func (x CyclicPrefix) Number() protoreflect.EnumNumber { // Deprecated: Use CyclicPrefix.Descriptor instead. func (CyclicPrefix) EnumDescriptor() ([]byte, []int) { - return file_enb_proto_rawDescGZIP(), []int{7} + return file_enb_proto_rawDescGZIP(), []int{6} } type TransmissionBandwidth int32 @@ -527,11 +463,11 @@ func (x TransmissionBandwidth) String() string { } func (TransmissionBandwidth) Descriptor() protoreflect.EnumDescriptor { - return file_enb_proto_enumTypes[8].Descriptor() + return file_enb_proto_enumTypes[7].Descriptor() } func (TransmissionBandwidth) Type() protoreflect.EnumType { - return &file_enb_proto_enumTypes[8] + return &file_enb_proto_enumTypes[7] } func (x TransmissionBandwidth) Number() protoreflect.EnumNumber { @@ -540,7 +476,7 @@ func (x TransmissionBandwidth) Number() protoreflect.EnumNumber { // Deprecated: Use TransmissionBandwidth.Descriptor instead. func (TransmissionBandwidth) EnumDescriptor() ([]byte, []int) { - return file_enb_proto_rawDescGZIP(), []int{8} + return file_enb_proto_rawDescGZIP(), []int{7} } type Eutra_Mode int32 @@ -576,11 +512,11 @@ func (x Eutra_Mode) String() string { } func (Eutra_Mode) Descriptor() protoreflect.EnumDescriptor { - return file_enb_proto_enumTypes[9].Descriptor() + return file_enb_proto_enumTypes[8].Descriptor() } func (Eutra_Mode) Type() protoreflect.EnumType { - return &file_enb_proto_enumTypes[9] + return &file_enb_proto_enumTypes[8] } func (x Eutra_Mode) Number() protoreflect.EnumNumber { @@ -646,11 +582,11 @@ func (x SpecialSubframe_Patterns) String() string { } func (SpecialSubframe_Patterns) Descriptor() protoreflect.EnumDescriptor { - return file_enb_proto_enumTypes[10].Descriptor() + return file_enb_proto_enumTypes[9].Descriptor() } func (SpecialSubframe_Patterns) Type() protoreflect.EnumType { - return &file_enb_proto_enumTypes[10] + return &file_enb_proto_enumTypes[9] } func (x SpecialSubframe_Patterns) Number() protoreflect.EnumNumber { @@ -719,11 +655,11 @@ func (x AdditionalSpecialSubframe_Patterns) String() string { } func (AdditionalSpecialSubframe_Patterns) Descriptor() protoreflect.EnumDescriptor { - return file_enb_proto_enumTypes[11].Descriptor() + return file_enb_proto_enumTypes[10].Descriptor() } func (AdditionalSpecialSubframe_Patterns) Type() protoreflect.EnumType { - return &file_enb_proto_enumTypes[11] + return &file_enb_proto_enumTypes[10] } func (x AdditionalSpecialSubframe_Patterns) Number() protoreflect.EnumNumber { @@ -765,11 +701,11 @@ func (x AdditionalSpecialSubframePatterns_Extension) String() string { } func (AdditionalSpecialSubframePatterns_Extension) Descriptor() protoreflect.EnumDescriptor { - return file_enb_proto_enumTypes[12].Descriptor() + return file_enb_proto_enumTypes[11].Descriptor() } func (AdditionalSpecialSubframePatterns_Extension) Type() protoreflect.EnumType { - return &file_enb_proto_enumTypes[12] + return &file_enb_proto_enumTypes[11] } func (x AdditionalSpecialSubframePatterns_Extension) Number() protoreflect.EnumNumber { @@ -786,9 +722,10 @@ type Enb struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - EnbType EnbType `protobuf:"varint,1,opt,name=enb_type,json=enbType,proto3,enum=entities.EnbType" json:"enb_type,omitempty"` - ServedCells []*ServedCellInfo `protobuf:"bytes,2,rep,name=served_cells,json=servedCells,proto3" json:"served_cells,omitempty"` - GuGroupIds []string `protobuf:"bytes,3,rep,name=gu_group_ids,json=guGroupIds,proto3" json:"gu_group_ids,omitempty"` + EnbType EnbType `protobuf:"varint,1,opt,name=enb_type,json=enbType,proto3,enum=entities.EnbType" json:"enb_type,omitempty"` + ServedCells []*ServedCellInfo `protobuf:"bytes,2,rep,name=served_cells,json=servedCells,proto3" json:"served_cells,omitempty"` + GuGroupIds []string `protobuf:"bytes,3,rep,name=gu_group_ids,json=guGroupIds,proto3" json:"gu_group_ids,omitempty"` + NodeConfigs []*E2NodeComponentConfig `protobuf:"bytes,4,rep,name=node_configs,json=nodeConfigs,proto3" json:"node_configs,omitempty"` } func (x *Enb) Reset() { @@ -844,6 +781,13 @@ func (x *Enb) GetGuGroupIds() []string { return nil } +func (x *Enb) GetNodeConfigs() []*E2NodeComponentConfig { + if x != nil { + return x.NodeConfigs + } + return nil +} + type ServedCellInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1792,321 +1736,317 @@ var file_enb_proto_rawDesc = []byte{ 0x0a, 0x09, 0x65, 0x6e, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, 0x21, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x92, 0x01, 0x0a, 0x03, 0x45, 0x6e, 0x62, - 0x12, 0x2c, 0x0a, 0x08, 0x65, 0x6e, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x6e, - 0x62, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x65, 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3b, - 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x67, - 0x75, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0a, 0x67, 0x75, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x73, 0x22, 0xc8, 0x07, - 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x10, 0x0a, 0x03, 0x70, 0x63, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x70, - 0x63, 0x69, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x65, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, - 0x61, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x63, 0x12, 0x27, 0x0a, - 0x0f, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x6d, 0x6e, 0x73, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, - 0x74, 0x50, 0x6c, 0x6d, 0x6e, 0x73, 0x12, 0x45, 0x0a, 0x11, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, - 0x5f, 0x65, 0x75, 0x74, 0x72, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x43, 0x68, 0x6f, - 0x69, 0x63, 0x65, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x63, 0x68, - 0x6f, 0x69, 0x63, 0x65, 0x45, 0x75, 0x74, 0x72, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x33, 0x0a, - 0x0a, 0x65, 0x75, 0x74, 0x72, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x14, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x75, 0x74, - 0x72, 0x61, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x65, 0x75, 0x74, 0x72, 0x61, 0x4d, 0x6f, - 0x64, 0x65, 0x12, 0x55, 0x0a, 0x17, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x6f, 0x66, 0x5f, - 0x61, 0x6e, 0x74, 0x65, 0x6e, 0x6e, 0x61, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x41, 0x6e, 0x74, 0x65, 0x6e, 0x6e, 0x61, 0x50, 0x6f, - 0x72, 0x74, 0x73, 0x52, 0x14, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x41, 0x6e, 0x74, - 0x65, 0x6e, 0x6e, 0x61, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x4d, 0x0a, 0x13, 0x70, 0x72, 0x61, - 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, - 0x73, 0x2e, 0x50, 0x72, 0x61, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x70, 0x72, 0x61, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x49, 0x0a, 0x14, 0x6d, 0x62, 0x73, 0x66, - 0x6e, 0x5f, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, - 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, - 0x73, 0x2e, 0x4d, 0x62, 0x73, 0x66, 0x6e, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x52, - 0x12, 0x6d, 0x62, 0x73, 0x66, 0x6e, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x73, 0x12, 0x15, 0x0a, 0x06, 0x63, 0x73, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x73, 0x67, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x1c, 0x6d, 0x62, - 0x6d, 0x73, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x72, 0x65, 0x61, 0x5f, - 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x19, 0x6d, 0x62, 0x6d, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x72, 0x65, - 0x61, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x6d, - 0x75, 0x6c, 0x74, 0x69, 0x62, 0x61, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x0c, - 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x62, 0x61, 0x6e, 0x64, 0x49, - 0x6e, 0x66, 0x6f, 0x73, 0x12, 0x64, 0x0a, 0x1c, 0x66, 0x72, 0x65, 0x71, 0x5f, 0x62, 0x61, 0x6e, - 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x70, 0x72, 0x69, 0x6f, - 0x72, 0x69, 0x74, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x46, 0x72, 0x65, 0x71, 0x42, 0x61, 0x6e, 0x64, 0x49, 0x6e, - 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, - 0x19, 0x66, 0x72, 0x65, 0x71, 0x42, 0x61, 0x6e, 0x64, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, - 0x6f, 0x72, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x4e, 0x0a, 0x14, 0x62, 0x61, - 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x5f, - 0x73, 0x69, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x69, 0x65, 0x73, 0x2e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x52, 0x65, 0x64, - 0x75, 0x63, 0x65, 0x64, 0x53, 0x49, 0x52, 0x12, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, - 0x68, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x53, 0x69, 0x12, 0x47, 0x0a, 0x0f, 0x6e, 0x65, - 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x0f, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, - 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, 0x6e, - 0x66, 0x6f, 0x73, 0x12, 0x63, 0x0a, 0x1b, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x5f, 0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x69, 0x65, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x65, - 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x19, 0x61, - 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x5b, 0x0a, 0x0f, 0x43, 0x68, 0x6f, 0x69, - 0x63, 0x65, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x23, 0x0a, 0x03, 0x66, - 0x64, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x69, 0x65, 0x73, 0x2e, 0x46, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x66, 0x64, 0x64, - 0x12, 0x23, 0x0a, 0x03, 0x74, 0x64, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x54, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x03, 0x74, 0x64, 0x64, 0x22, 0x2e, 0x0a, 0x05, 0x45, 0x75, 0x74, 0x72, 0x61, 0x22, 0x25, - 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, - 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x46, 0x44, 0x44, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, - 0x54, 0x44, 0x44, 0x10, 0x02, 0x22, 0x67, 0x0a, 0x14, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, - 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, - 0x04, 0x65, 0x63, 0x67, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x63, 0x67, - 0x69, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x63, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, - 0x70, 0x63, 0x69, 0x12, 0x17, 0x0a, 0x07, 0x65, 0x61, 0x72, 0x5f, 0x66, 0x63, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x61, 0x72, 0x46, 0x63, 0x6e, 0x12, 0x10, 0x0a, 0x03, - 0x74, 0x61, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x63, 0x22, 0xc6, - 0x02, 0x0a, 0x0d, 0x4d, 0x62, 0x73, 0x66, 0x6e, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, - 0x12, 0x66, 0x0a, 0x1c, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x61, - 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, - 0x73, 0x2e, 0x52, 0x61, 0x64, 0x69, 0x6f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x1a, 0x72, 0x61, - 0x64, 0x69, 0x6f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x40, 0x0a, 0x1c, 0x72, 0x61, 0x64, 0x69, - 0x6f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, - 0x72, 0x61, 0x64, 0x69, 0x6f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x2f, 0x0a, 0x13, 0x73, 0x75, - 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, - 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, 0x18, 0x73, - 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, - 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, - 0x16, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x22, 0xad, 0x02, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, - 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, - 0x0a, 0x13, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x72, 0x6f, 0x6f, - 0x74, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x4d, - 0x0a, 0x23, 0x7a, 0x65, 0x72, 0x6f, 0x5f, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x20, 0x7a, 0x65, 0x72, - 0x6f, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5a, 0x6f, 0x6e, 0x65, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, - 0x0f, 0x68, 0x69, 0x67, 0x68, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x66, 0x6c, 0x61, 0x67, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x68, 0x69, 0x67, 0x68, 0x53, 0x70, 0x65, 0x65, - 0x64, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x72, 0x61, 0x63, 0x68, 0x5f, 0x66, - 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x70, 0x72, 0x61, 0x63, 0x68, 0x46, 0x72, 0x65, 0x71, - 0x75, 0x65, 0x6e, 0x63, 0x79, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x3a, 0x0a, 0x19, 0x70, - 0x72, 0x61, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, - 0x70, 0x72, 0x61, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x9d, 0x04, 0x0a, 0x07, 0x54, 0x64, 0x64, 0x49, - 0x6e, 0x66, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x65, 0x61, 0x72, 0x5f, 0x66, 0x63, 0x6e, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x61, 0x72, 0x46, 0x63, 0x6e, 0x12, 0x56, 0x0a, 0x16, - 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x61, 0x6e, - 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x52, 0x15, 0x74, - 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, - 0x69, 0x64, 0x74, 0x68, 0x12, 0x4d, 0x0a, 0x13, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, - 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x1c, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x53, 0x75, 0x62, - 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, - 0x12, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, - 0x65, 0x6e, 0x74, 0x12, 0x51, 0x0a, 0x15, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x73, - 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x53, 0x70, - 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x13, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, - 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x70, 0x0a, 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x62, - 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x27, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, - 0x66, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x1d, 0x61, 0x64, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, - 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x8c, 0x01, 0x0a, 0x2a, 0x61, 0x64, 0x64, + 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x65, 0x32, 0x6e, 0x6f, 0x64, 0x65, + 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0e, 0x6e, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd6, 0x01, 0x0a, 0x03, 0x45, 0x6e, 0x62, 0x12, + 0x2c, 0x0a, 0x08, 0x65, 0x6e, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x11, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x6e, 0x62, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x65, 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3b, 0x0a, + 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x64, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x64, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x67, 0x75, + 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x0a, 0x67, 0x75, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x73, 0x12, 0x42, 0x0a, 0x0c, + 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, 0x32, + 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x52, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, + 0x22, 0xc8, 0x07, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x43, 0x65, 0x6c, 0x6c, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x63, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x03, 0x70, 0x63, 0x69, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x65, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x10, + 0x0a, 0x03, 0x74, 0x61, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x63, + 0x12, 0x27, 0x0a, 0x0f, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6c, + 0x6d, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x72, 0x6f, 0x61, 0x64, + 0x63, 0x61, 0x73, 0x74, 0x50, 0x6c, 0x6d, 0x6e, 0x73, 0x12, 0x45, 0x0a, 0x11, 0x63, 0x68, 0x6f, + 0x69, 0x63, 0x65, 0x5f, 0x65, 0x75, 0x74, 0x72, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, + 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4d, 0x6f, 0x64, 0x65, 0x52, + 0x0f, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x45, 0x75, 0x74, 0x72, 0x61, 0x4d, 0x6f, 0x64, 0x65, + 0x12, 0x33, 0x0a, 0x0a, 0x65, 0x75, 0x74, 0x72, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, + 0x45, 0x75, 0x74, 0x72, 0x61, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x65, 0x75, 0x74, 0x72, + 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x55, 0x0a, 0x17, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f, + 0x6f, 0x66, 0x5f, 0x61, 0x6e, 0x74, 0x65, 0x6e, 0x6e, 0x61, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x73, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x2e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x41, 0x6e, 0x74, 0x65, 0x6e, 0x6e, + 0x61, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x14, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, + 0x41, 0x6e, 0x74, 0x65, 0x6e, 0x6e, 0x61, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x4d, 0x0a, 0x13, + 0x70, 0x72, 0x61, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x61, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x70, 0x72, 0x61, 0x63, 0x68, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x49, 0x0a, 0x14, 0x6d, + 0x62, 0x73, 0x66, 0x6e, 0x5f, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, + 0x66, 0x6f, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4d, 0x62, 0x73, 0x66, 0x6e, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, + 0x6d, 0x65, 0x52, 0x12, 0x6d, 0x62, 0x73, 0x66, 0x6e, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, + 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x12, 0x15, 0x0a, 0x06, 0x63, 0x73, 0x67, 0x5f, 0x69, 0x64, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x73, 0x67, 0x49, 0x64, 0x12, 0x3f, 0x0a, + 0x1c, 0x6d, 0x62, 0x6d, 0x73, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x72, + 0x65, 0x61, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x0b, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x19, 0x6d, 0x62, 0x6d, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x41, 0x72, 0x65, 0x61, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x27, + 0x0a, 0x0f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x62, 0x61, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x66, 0x6f, + 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x62, 0x61, + 0x6e, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x12, 0x64, 0x0a, 0x1c, 0x66, 0x72, 0x65, 0x71, 0x5f, + 0x62, 0x61, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x70, + 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x46, 0x72, 0x65, 0x71, 0x42, 0x61, 0x6e, + 0x64, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, + 0x74, 0x79, 0x52, 0x19, 0x66, 0x72, 0x65, 0x71, 0x42, 0x61, 0x6e, 0x64, 0x49, 0x6e, 0x64, 0x69, + 0x63, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x4e, 0x0a, + 0x14, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x72, 0x65, 0x64, 0x75, 0x63, + 0x65, 0x64, 0x5f, 0x73, 0x69, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, + 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x53, 0x49, 0x52, 0x12, 0x62, 0x61, 0x6e, 0x64, 0x77, + 0x69, 0x64, 0x74, 0x68, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, 0x53, 0x69, 0x12, 0x47, 0x0a, + 0x0f, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, + 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x2e, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, + 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x12, 0x63, 0x0a, 0x1b, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x6c, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x19, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x65, 0x6c, 0x6c, + 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x5b, 0x0a, 0x0f, 0x43, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x23, + 0x0a, 0x03, 0x66, 0x64, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x46, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x03, + 0x66, 0x64, 0x64, 0x12, 0x23, 0x0a, 0x03, 0x74, 0x64, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x11, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x54, 0x64, 0x64, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x74, 0x64, 0x64, 0x22, 0x2e, 0x0a, 0x05, 0x45, 0x75, 0x74, 0x72, + 0x61, 0x22, 0x25, 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, + 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x46, 0x44, 0x44, 0x10, 0x01, 0x12, + 0x07, 0x0a, 0x03, 0x54, 0x44, 0x44, 0x10, 0x02, 0x22, 0x67, 0x0a, 0x14, 0x4e, 0x65, 0x69, 0x67, + 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x12, 0x0a, 0x04, 0x65, 0x63, 0x67, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x65, 0x63, 0x67, 0x69, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x63, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x03, 0x70, 0x63, 0x69, 0x12, 0x17, 0x0a, 0x07, 0x65, 0x61, 0x72, 0x5f, 0x66, 0x63, + 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x61, 0x72, 0x46, 0x63, 0x6e, 0x12, + 0x10, 0x0a, 0x03, 0x74, 0x61, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, + 0x63, 0x22, 0xc6, 0x02, 0x0a, 0x0d, 0x4d, 0x62, 0x73, 0x66, 0x6e, 0x53, 0x75, 0x62, 0x66, 0x72, + 0x61, 0x6d, 0x65, 0x12, 0x66, 0x0a, 0x1c, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x66, 0x72, 0x61, 0x6d, + 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x2e, 0x52, 0x61, 0x64, 0x69, 0x6f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, + 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, + 0x1a, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x40, 0x0a, 0x1c, 0x72, + 0x61, 0x64, 0x69, 0x6f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x1a, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x2f, 0x0a, + 0x13, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x73, 0x75, 0x62, 0x66, + 0x72, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5a, + 0x0a, 0x18, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x20, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x53, 0x75, 0x62, 0x66, + 0x72, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x16, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x22, 0xad, 0x02, 0x0a, 0x12, 0x50, + 0x72, 0x61, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, + 0x72, 0x6f, 0x6f, 0x74, 0x53, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x12, 0x4d, 0x0a, 0x23, 0x7a, 0x65, 0x72, 0x6f, 0x5f, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x6c, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x20, + 0x7a, 0x65, 0x72, 0x6f, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5a, + 0x6f, 0x6e, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x26, 0x0a, 0x0f, 0x68, 0x69, 0x67, 0x68, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x5f, 0x66, + 0x6c, 0x61, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x68, 0x69, 0x67, 0x68, 0x53, + 0x70, 0x65, 0x65, 0x64, 0x46, 0x6c, 0x61, 0x67, 0x12, 0x34, 0x0a, 0x16, 0x70, 0x72, 0x61, 0x63, + 0x68, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x6f, 0x66, 0x66, 0x73, + 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x70, 0x72, 0x61, 0x63, 0x68, 0x46, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x3a, + 0x0a, 0x19, 0x70, 0x72, 0x61, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x17, 0x70, 0x72, 0x61, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x9d, 0x04, 0x0a, 0x07, 0x54, + 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x65, 0x61, 0x72, 0x5f, 0x66, 0x63, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x61, 0x72, 0x46, 0x63, 0x6e, 0x12, + 0x56, 0x0a, 0x16, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, + 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x1f, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, + 0x52, 0x15, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, + 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x4d, 0x0a, 0x13, 0x73, 0x75, 0x62, 0x66, 0x72, + 0x61, 0x6d, 0x65, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, + 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x12, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x73, 0x73, 0x69, + 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x51, 0x0a, 0x15, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, + 0x6c, 0x5f, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, + 0x2e, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x13, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, + 0x66, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x70, 0x0a, 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, - 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, - 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, - 0x6d, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x26, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, - 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, - 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xc8, 0x02, 0x0a, 0x26, 0x41, 0x64, 0x64, 0x69, + 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x41, + 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, + 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x1d, 0x61, 0x64, + 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, + 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x8c, 0x01, 0x0a, 0x2a, + 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x65, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x30, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x99, 0x01, 0x0a, 0x2e, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x62, 0x66, 0x72, 0x61, - 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x5f, 0x65, 0x78, 0x74, 0x65, - 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, 0x2e, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, - 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, - 0x6f, 0x6e, 0x52, 0x2a, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, - 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x50, 0x61, 0x74, - 0x74, 0x65, 0x72, 0x6e, 0x73, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x40, - 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, - 0x64, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x69, 0x65, 0x73, 0x2e, 0x43, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, - 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x44, 0x6c, - 0x12, 0x40, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, - 0x78, 0x5f, 0x75, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x43, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, - 0x69, 0x78, 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, - 0x55, 0x6c, 0x22, 0xa2, 0x02, 0x0a, 0x1d, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, + 0x66, 0x6f, 0x52, 0x26, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, + 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x45, 0x78, 0x74, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xc8, 0x02, 0x0a, 0x26, 0x41, + 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, + 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x99, 0x01, 0x0a, 0x2e, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x62, + 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x5f, 0x65, + 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x35, + 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, + 0x61, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x2e, 0x45, 0x78, 0x74, 0x65, + 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x2a, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x7d, 0x0a, 0x24, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x62, 0x66, 0x72, - 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x41, 0x64, - 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, - 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x2e, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, - 0x52, 0x21, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, - 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x74, 0x65, - 0x72, 0x6e, 0x73, 0x12, 0x40, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x5f, 0x70, 0x72, - 0x65, 0x66, 0x69, 0x78, 0x5f, 0x64, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, + 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x12, 0x40, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x5f, 0x70, 0x72, 0x65, 0x66, + 0x69, 0x78, 0x5f, 0x64, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x43, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, + 0x66, 0x69, 0x78, 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, + 0x78, 0x44, 0x6c, 0x12, 0x40, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x5f, 0x70, 0x72, + 0x65, 0x66, 0x69, 0x78, 0x5f, 0x75, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x43, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, - 0x66, 0x69, 0x78, 0x44, 0x6c, 0x12, 0x40, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x5f, - 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x75, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x16, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x43, 0x79, 0x63, 0x6c, 0x69, - 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, - 0x72, 0x65, 0x66, 0x69, 0x78, 0x55, 0x6c, 0x22, 0xfd, 0x01, 0x0a, 0x07, 0x46, 0x64, 0x64, 0x49, - 0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x6c, 0x65, 0x61, 0x72, 0x5f, 0x66, 0x63, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x75, 0x6c, 0x65, 0x61, 0x72, 0x46, 0x63, 0x6e, - 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x6c, 0x65, 0x61, 0x72, 0x5f, 0x66, 0x63, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6c, 0x65, 0x61, 0x72, 0x46, 0x63, 0x6e, 0x12, 0x5b, 0x0a, - 0x19, 0x75, 0x6c, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, + 0x66, 0x69, 0x78, 0x55, 0x6c, 0x22, 0xa2, 0x02, 0x0a, 0x1d, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, + 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x7d, 0x0a, 0x24, 0x61, 0x64, 0x64, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x75, + 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, + 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x2e, 0x50, 0x61, 0x74, 0x74, 0x65, + 0x72, 0x6e, 0x73, 0x52, 0x21, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, + 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x50, 0x61, + 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x12, 0x40, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, + 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x64, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x16, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x43, 0x79, 0x63, 0x6c, + 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, + 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x44, 0x6c, 0x12, 0x40, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, + 0x69, 0x63, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x75, 0x6c, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x43, 0x79, + 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, + 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x55, 0x6c, 0x22, 0xfd, 0x01, 0x0a, 0x07, 0x46, + 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x6c, 0x65, 0x61, 0x72, 0x5f, + 0x66, 0x63, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x75, 0x6c, 0x65, 0x61, 0x72, + 0x46, 0x63, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x6c, 0x65, 0x61, 0x72, 0x5f, 0x66, 0x63, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6c, 0x65, 0x61, 0x72, 0x46, 0x63, 0x6e, + 0x12, 0x5b, 0x0a, 0x19, 0x75, 0x6c, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, + 0x69, 0x64, 0x74, 0x68, 0x52, 0x17, 0x75, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x5b, 0x0a, + 0x19, 0x64, 0x6c, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, - 0x68, 0x52, 0x17, 0x75, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x5b, 0x0a, 0x19, 0x64, 0x6c, - 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x61, - 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x52, 0x17, - 0x64, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, - 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0xf9, 0x01, 0x0a, 0x13, 0x53, 0x70, 0x65, 0x63, - 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x5e, 0x0a, 0x19, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x62, 0x66, 0x72, - 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x53, 0x70, - 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x2e, 0x50, 0x61, - 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x52, 0x17, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, - 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x12, - 0x40, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, - 0x5f, 0x64, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x69, 0x65, 0x73, 0x2e, 0x43, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, - 0x78, 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x44, - 0x6c, 0x12, 0x40, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x5f, 0x70, 0x72, 0x65, 0x66, - 0x69, 0x78, 0x5f, 0x75, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x43, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, - 0x66, 0x69, 0x78, 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, - 0x78, 0x55, 0x6c, 0x22, 0x84, 0x01, 0x0a, 0x0f, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, - 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x22, 0x71, 0x0a, 0x08, 0x50, 0x61, 0x74, 0x74, 0x65, - 0x72, 0x6e, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, - 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x30, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, - 0x50, 0x31, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x32, 0x10, 0x03, 0x12, 0x08, - 0x0a, 0x04, 0x53, 0x53, 0x50, 0x33, 0x10, 0x04, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x34, - 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x35, 0x10, 0x06, 0x12, 0x08, 0x0a, 0x04, - 0x53, 0x53, 0x50, 0x36, 0x10, 0x07, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x37, 0x10, 0x08, - 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x38, 0x10, 0x09, 0x22, 0x98, 0x01, 0x0a, 0x19, 0x41, - 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, - 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x22, 0x7b, 0x0a, 0x08, 0x50, 0x61, 0x74, 0x74, - 0x65, 0x72, 0x6e, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, - 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x30, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x53, - 0x53, 0x50, 0x31, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x32, 0x10, 0x03, 0x12, - 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x33, 0x10, 0x04, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, - 0x34, 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x35, 0x10, 0x06, 0x12, 0x08, 0x0a, - 0x04, 0x53, 0x53, 0x50, 0x36, 0x10, 0x07, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x37, 0x10, - 0x08, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x38, 0x10, 0x09, 0x12, 0x08, 0x0a, 0x04, 0x53, - 0x53, 0x50, 0x39, 0x10, 0x0a, 0x22, 0x48, 0x0a, 0x21, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, - 0x6d, 0x65, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x22, 0x23, 0x0a, 0x09, 0x45, 0x78, - 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, - 0x57, 0x4e, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x53, 0x50, 0x31, 0x30, 0x10, 0x01, 0x2a, - 0x6b, 0x0a, 0x19, 0x46, 0x72, 0x65, 0x71, 0x42, 0x61, 0x6e, 0x64, 0x49, 0x6e, 0x64, 0x69, 0x63, - 0x61, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x28, 0x0a, 0x24, - 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x46, 0x52, 0x45, 0x51, 0x5f, 0x42, 0x41, 0x4e, - 0x44, 0x5f, 0x49, 0x4e, 0x44, 0x49, 0x43, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x50, 0x52, 0x49, 0x4f, - 0x52, 0x49, 0x54, 0x59, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x4e, 0x4f, 0x54, 0x5f, 0x42, 0x52, - 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x42, - 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x45, 0x44, 0x10, 0x02, 0x2a, 0x45, 0x0a, 0x12, - 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x52, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64, - 0x53, 0x49, 0x12, 0x20, 0x0a, 0x1c, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x42, 0x41, - 0x4e, 0x44, 0x57, 0x49, 0x44, 0x54, 0x48, 0x5f, 0x52, 0x45, 0x44, 0x55, 0x43, 0x45, 0x44, 0x5f, - 0x53, 0x49, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x43, 0x48, 0x45, 0x44, 0x55, 0x4c, 0x45, - 0x44, 0x10, 0x01, 0x2a, 0x5d, 0x0a, 0x16, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, - 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, - 0x20, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x53, 0x55, 0x42, 0x46, 0x52, 0x41, 0x4d, - 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x59, 0x50, - 0x45, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x4f, 0x4e, 0x45, 0x5f, 0x46, 0x52, 0x41, 0x4d, 0x45, - 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x46, 0x4f, 0x55, 0x52, 0x5f, 0x46, 0x52, 0x41, 0x4d, 0x45, - 0x10, 0x02, 0x2a, 0x78, 0x0a, 0x1a, 0x52, 0x61, 0x64, 0x69, 0x6f, 0x66, 0x72, 0x61, 0x6d, 0x65, - 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, - 0x12, 0x28, 0x0a, 0x24, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x52, 0x41, 0x44, 0x49, - 0x4f, 0x46, 0x52, 0x41, 0x4d, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, - 0x4e, 0x5f, 0x50, 0x45, 0x52, 0x49, 0x4f, 0x44, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x31, - 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x32, 0x10, 0x02, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x34, - 0x10, 0x03, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x38, 0x10, 0x04, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x31, - 0x36, 0x10, 0x05, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x33, 0x32, 0x10, 0x06, 0x2a, 0x56, 0x0a, 0x14, - 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x41, 0x6e, 0x74, 0x65, 0x6e, 0x6e, 0x61, 0x50, - 0x6f, 0x72, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x1f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, - 0x4e, 0x55, 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x4f, 0x46, 0x5f, 0x41, 0x4e, 0x54, 0x45, 0x4e, 0x4e, - 0x41, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x53, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4e, 0x31, - 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4e, 0x32, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x41, - 0x4e, 0x34, 0x10, 0x03, 0x2a, 0xa6, 0x01, 0x0a, 0x07, 0x45, 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x14, 0x0a, 0x10, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x45, 0x4e, 0x42, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x4d, 0x41, 0x43, 0x52, 0x4f, 0x5f, - 0x45, 0x4e, 0x42, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x48, 0x4f, 0x4d, 0x45, 0x5f, 0x45, 0x4e, - 0x42, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x48, 0x4f, 0x52, 0x54, 0x5f, 0x4d, 0x41, 0x43, - 0x52, 0x4f, 0x5f, 0x45, 0x4e, 0x42, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x4f, 0x4e, 0x47, - 0x5f, 0x4d, 0x41, 0x43, 0x52, 0x4f, 0x5f, 0x45, 0x4e, 0x42, 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, - 0x4d, 0x41, 0x43, 0x52, 0x4f, 0x5f, 0x4e, 0x47, 0x5f, 0x45, 0x4e, 0x42, 0x10, 0x05, 0x12, 0x16, - 0x0a, 0x12, 0x53, 0x48, 0x4f, 0x52, 0x54, 0x5f, 0x4d, 0x41, 0x43, 0x52, 0x4f, 0x5f, 0x4e, 0x47, - 0x5f, 0x45, 0x4e, 0x42, 0x10, 0x06, 0x12, 0x15, 0x0a, 0x11, 0x4c, 0x4f, 0x4e, 0x47, 0x5f, 0x4d, - 0x41, 0x43, 0x52, 0x4f, 0x5f, 0x4e, 0x47, 0x5f, 0x45, 0x4e, 0x42, 0x10, 0x07, 0x2a, 0x74, 0x0a, - 0x12, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, - 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x1b, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x53, - 0x55, 0x42, 0x46, 0x52, 0x41, 0x4d, 0x45, 0x5f, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x4d, 0x45, - 0x4e, 0x54, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x41, 0x30, 0x10, 0x01, 0x12, 0x07, 0x0a, - 0x03, 0x53, 0x41, 0x31, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x41, 0x32, 0x10, 0x03, 0x12, - 0x07, 0x0a, 0x03, 0x53, 0x41, 0x33, 0x10, 0x04, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x41, 0x34, 0x10, - 0x05, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x41, 0x35, 0x10, 0x06, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x41, - 0x36, 0x10, 0x07, 0x2a, 0x43, 0x0a, 0x0c, 0x43, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, - 0x66, 0x69, 0x78, 0x12, 0x19, 0x0a, 0x15, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x43, - 0x59, 0x43, 0x4c, 0x49, 0x43, 0x5f, 0x50, 0x52, 0x45, 0x46, 0x49, 0x58, 0x10, 0x00, 0x12, 0x0a, - 0x0a, 0x06, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x45, 0x58, - 0x54, 0x45, 0x4e, 0x44, 0x45, 0x44, 0x10, 0x02, 0x2a, 0x80, 0x01, 0x0a, 0x15, 0x54, 0x72, 0x61, - 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, - 0x74, 0x68, 0x12, 0x22, 0x0a, 0x1e, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x54, 0x52, - 0x41, 0x4e, 0x53, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x42, 0x41, 0x4e, 0x44, 0x57, - 0x49, 0x44, 0x54, 0x48, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x42, 0x57, 0x36, 0x10, 0x01, 0x12, - 0x08, 0x0a, 0x04, 0x42, 0x57, 0x31, 0x35, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x57, 0x32, - 0x35, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x57, 0x35, 0x30, 0x10, 0x04, 0x12, 0x08, 0x0a, - 0x04, 0x42, 0x57, 0x37, 0x35, 0x10, 0x05, 0x12, 0x09, 0x0a, 0x05, 0x42, 0x57, 0x31, 0x30, 0x30, - 0x10, 0x06, 0x12, 0x07, 0x0a, 0x03, 0x42, 0x57, 0x31, 0x10, 0x07, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, + 0x68, 0x52, 0x17, 0x64, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0xf9, 0x01, 0x0a, 0x13, 0x53, + 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x5e, 0x0a, 0x19, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x75, + 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, + 0x2e, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, + 0x2e, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x52, 0x17, 0x73, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, + 0x6e, 0x73, 0x12, 0x40, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x5f, 0x70, 0x72, 0x65, + 0x66, 0x69, 0x78, 0x5f, 0x64, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x43, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, + 0x65, 0x66, 0x69, 0x78, 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, + 0x69, 0x78, 0x44, 0x6c, 0x12, 0x40, 0x0a, 0x10, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x5f, 0x70, + 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x75, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, + 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x43, 0x79, 0x63, 0x6c, 0x69, 0x63, + 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x0e, 0x63, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, + 0x65, 0x66, 0x69, 0x78, 0x55, 0x6c, 0x22, 0x84, 0x01, 0x0a, 0x0f, 0x53, 0x70, 0x65, 0x63, 0x69, + 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x22, 0x71, 0x0a, 0x08, 0x50, 0x61, + 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, + 0x4e, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x30, 0x10, 0x01, 0x12, 0x08, 0x0a, + 0x04, 0x53, 0x53, 0x50, 0x31, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x32, 0x10, + 0x03, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x33, 0x10, 0x04, 0x12, 0x08, 0x0a, 0x04, 0x53, + 0x53, 0x50, 0x34, 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x35, 0x10, 0x06, 0x12, + 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x36, 0x10, 0x07, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, + 0x37, 0x10, 0x08, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x38, 0x10, 0x09, 0x22, 0x98, 0x01, + 0x0a, 0x19, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, + 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x22, 0x7b, 0x0a, 0x08, 0x50, + 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, + 0x57, 0x4e, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x30, 0x10, 0x01, 0x12, 0x08, + 0x0a, 0x04, 0x53, 0x53, 0x50, 0x31, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x32, + 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x33, 0x10, 0x04, 0x12, 0x08, 0x0a, 0x04, + 0x53, 0x53, 0x50, 0x34, 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x35, 0x10, 0x06, + 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x36, 0x10, 0x07, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, + 0x50, 0x37, 0x10, 0x08, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x53, 0x50, 0x38, 0x10, 0x09, 0x12, 0x08, + 0x0a, 0x04, 0x53, 0x53, 0x50, 0x39, 0x10, 0x0a, 0x22, 0x48, 0x0a, 0x21, 0x41, 0x64, 0x64, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, + 0x66, 0x72, 0x61, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x73, 0x22, 0x23, 0x0a, + 0x09, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, + 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x53, 0x50, 0x31, 0x30, + 0x10, 0x01, 0x2a, 0x6b, 0x0a, 0x19, 0x46, 0x72, 0x65, 0x71, 0x42, 0x61, 0x6e, 0x64, 0x49, 0x6e, + 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, + 0x28, 0x0a, 0x24, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x46, 0x52, 0x45, 0x51, 0x5f, + 0x42, 0x41, 0x4e, 0x44, 0x5f, 0x49, 0x4e, 0x44, 0x49, 0x43, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x50, + 0x52, 0x49, 0x4f, 0x52, 0x49, 0x54, 0x59, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x4e, 0x4f, 0x54, + 0x5f, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0f, + 0x0a, 0x0b, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53, 0x54, 0x45, 0x44, 0x10, 0x02, 0x2a, + 0x45, 0x0a, 0x12, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x52, 0x65, 0x64, 0x75, + 0x63, 0x65, 0x64, 0x53, 0x49, 0x12, 0x20, 0x0a, 0x1c, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, + 0x5f, 0x42, 0x41, 0x4e, 0x44, 0x57, 0x49, 0x44, 0x54, 0x48, 0x5f, 0x52, 0x45, 0x44, 0x55, 0x43, + 0x45, 0x44, 0x5f, 0x53, 0x49, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x43, 0x48, 0x45, 0x44, + 0x55, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x2a, 0x5d, 0x0a, 0x16, 0x53, 0x75, 0x62, 0x66, 0x72, 0x61, + 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x24, 0x0a, 0x20, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x53, 0x55, 0x42, 0x46, + 0x52, 0x41, 0x4d, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x4f, 0x4e, 0x45, 0x5f, 0x46, 0x52, + 0x41, 0x4d, 0x45, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x46, 0x4f, 0x55, 0x52, 0x5f, 0x46, 0x52, + 0x41, 0x4d, 0x45, 0x10, 0x02, 0x2a, 0x78, 0x0a, 0x1a, 0x52, 0x61, 0x64, 0x69, 0x6f, 0x66, 0x72, + 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x12, 0x28, 0x0a, 0x24, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x52, + 0x41, 0x44, 0x49, 0x4f, 0x46, 0x52, 0x41, 0x4d, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x4f, 0x43, 0x41, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x45, 0x52, 0x49, 0x4f, 0x44, 0x10, 0x00, 0x12, 0x06, 0x0a, + 0x02, 0x4e, 0x31, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x32, 0x10, 0x02, 0x12, 0x06, 0x0a, + 0x02, 0x4e, 0x34, 0x10, 0x03, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x38, 0x10, 0x04, 0x12, 0x07, 0x0a, + 0x03, 0x4e, 0x31, 0x36, 0x10, 0x05, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x33, 0x32, 0x10, 0x06, 0x2a, + 0x56, 0x0a, 0x14, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4f, 0x66, 0x41, 0x6e, 0x74, 0x65, 0x6e, + 0x6e, 0x61, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x1f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, + 0x57, 0x4e, 0x5f, 0x4e, 0x55, 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x4f, 0x46, 0x5f, 0x41, 0x4e, 0x54, + 0x45, 0x4e, 0x4e, 0x41, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x53, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, + 0x41, 0x4e, 0x31, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4e, 0x32, 0x10, 0x02, 0x12, 0x07, + 0x0a, 0x03, 0x41, 0x4e, 0x34, 0x10, 0x03, 0x2a, 0x74, 0x0a, 0x12, 0x53, 0x75, 0x62, 0x66, 0x72, + 0x61, 0x6d, 0x65, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, + 0x1b, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x53, 0x55, 0x42, 0x46, 0x52, 0x41, 0x4d, + 0x45, 0x5f, 0x41, 0x53, 0x53, 0x49, 0x47, 0x4e, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x00, 0x12, 0x07, + 0x0a, 0x03, 0x53, 0x41, 0x30, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x41, 0x31, 0x10, 0x02, + 0x12, 0x07, 0x0a, 0x03, 0x53, 0x41, 0x32, 0x10, 0x03, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x41, 0x33, + 0x10, 0x04, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x41, 0x34, 0x10, 0x05, 0x12, 0x07, 0x0a, 0x03, 0x53, + 0x41, 0x35, 0x10, 0x06, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x41, 0x36, 0x10, 0x07, 0x2a, 0x43, 0x0a, + 0x0c, 0x43, 0x79, 0x63, 0x6c, 0x69, 0x63, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x19, 0x0a, + 0x15, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x43, 0x59, 0x43, 0x4c, 0x49, 0x43, 0x5f, + 0x50, 0x52, 0x45, 0x46, 0x49, 0x58, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x4f, 0x52, 0x4d, + 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x45, 0x58, 0x54, 0x45, 0x4e, 0x44, 0x45, 0x44, + 0x10, 0x02, 0x2a, 0x80, 0x01, 0x0a, 0x15, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x22, 0x0a, 0x1e, + 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x4d, 0x49, 0x53, + 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x42, 0x41, 0x4e, 0x44, 0x57, 0x49, 0x44, 0x54, 0x48, 0x10, 0x00, + 0x12, 0x07, 0x0a, 0x03, 0x42, 0x57, 0x36, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x57, 0x31, + 0x35, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x57, 0x32, 0x35, 0x10, 0x03, 0x12, 0x08, 0x0a, + 0x04, 0x42, 0x57, 0x35, 0x30, 0x10, 0x04, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x57, 0x37, 0x35, 0x10, + 0x05, 0x12, 0x09, 0x0a, 0x05, 0x42, 0x57, 0x31, 0x30, 0x30, 0x10, 0x06, 0x12, 0x07, 0x0a, 0x03, + 0x42, 0x57, 0x31, 0x10, 0x07, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2121,7 +2061,7 @@ func file_enb_proto_rawDescGZIP() []byte { return file_enb_proto_rawDescData } -var file_enb_proto_enumTypes = make([]protoimpl.EnumInfo, 13) +var file_enb_proto_enumTypes = make([]protoimpl.EnumInfo, 12) var file_enb_proto_msgTypes = make([]protoimpl.MessageInfo, 15) var file_enb_proto_goTypes = []interface{}{ (FreqBandIndicatorPriority)(0), // 0: entities.FreqBandIndicatorPriority @@ -2129,68 +2069,70 @@ var file_enb_proto_goTypes = []interface{}{ (SubframeAllocationType)(0), // 2: entities.SubframeAllocationType (RadioframeAllocationPeriod)(0), // 3: entities.RadioframeAllocationPeriod (NumberOfAntennaPorts)(0), // 4: entities.NumberOfAntennaPorts - (EnbType)(0), // 5: entities.EnbType - (SubframeAssignment)(0), // 6: entities.SubframeAssignment - (CyclicPrefix)(0), // 7: entities.CyclicPrefix - (TransmissionBandwidth)(0), // 8: entities.TransmissionBandwidth - (Eutra_Mode)(0), // 9: entities.Eutra.Mode - (SpecialSubframe_Patterns)(0), // 10: entities.SpecialSubframe.Patterns - (AdditionalSpecialSubframe_Patterns)(0), // 11: entities.AdditionalSpecialSubframe.Patterns - (AdditionalSpecialSubframePatterns_Extension)(0), // 12: entities.AdditionalSpecialSubframePatterns.Extension - (*Enb)(nil), // 13: entities.Enb - (*ServedCellInfo)(nil), // 14: entities.ServedCellInfo - (*ChoiceEUTRAMode)(nil), // 15: entities.ChoiceEUTRAMode - (*Eutra)(nil), // 16: entities.Eutra - (*NeighbourInformation)(nil), // 17: entities.NeighbourInformation - (*MbsfnSubframe)(nil), // 18: entities.MbsfnSubframe - (*PrachConfiguration)(nil), // 19: entities.PrachConfiguration - (*TddInfo)(nil), // 20: entities.TddInfo - (*AdditionalSpecialSubframeExtensionInfo)(nil), // 21: entities.AdditionalSpecialSubframeExtensionInfo - (*AdditionalSpecialSubframeInfo)(nil), // 22: entities.AdditionalSpecialSubframeInfo - (*FddInfo)(nil), // 23: entities.FddInfo - (*SpecialSubframeInfo)(nil), // 24: entities.SpecialSubframeInfo - (*SpecialSubframe)(nil), // 25: entities.SpecialSubframe - (*AdditionalSpecialSubframe)(nil), // 26: entities.AdditionalSpecialSubframe - (*AdditionalSpecialSubframePatterns)(nil), // 27: entities.AdditionalSpecialSubframePatterns - (*AdditionalCellInformation)(nil), // 28: entities.AdditionalCellInformation + (SubframeAssignment)(0), // 5: entities.SubframeAssignment + (CyclicPrefix)(0), // 6: entities.CyclicPrefix + (TransmissionBandwidth)(0), // 7: entities.TransmissionBandwidth + (Eutra_Mode)(0), // 8: entities.Eutra.Mode + (SpecialSubframe_Patterns)(0), // 9: entities.SpecialSubframe.Patterns + (AdditionalSpecialSubframe_Patterns)(0), // 10: entities.AdditionalSpecialSubframe.Patterns + (AdditionalSpecialSubframePatterns_Extension)(0), // 11: entities.AdditionalSpecialSubframePatterns.Extension + (*Enb)(nil), // 12: entities.Enb + (*ServedCellInfo)(nil), // 13: entities.ServedCellInfo + (*ChoiceEUTRAMode)(nil), // 14: entities.ChoiceEUTRAMode + (*Eutra)(nil), // 15: entities.Eutra + (*NeighbourInformation)(nil), // 16: entities.NeighbourInformation + (*MbsfnSubframe)(nil), // 17: entities.MbsfnSubframe + (*PrachConfiguration)(nil), // 18: entities.PrachConfiguration + (*TddInfo)(nil), // 19: entities.TddInfo + (*AdditionalSpecialSubframeExtensionInfo)(nil), // 20: entities.AdditionalSpecialSubframeExtensionInfo + (*AdditionalSpecialSubframeInfo)(nil), // 21: entities.AdditionalSpecialSubframeInfo + (*FddInfo)(nil), // 22: entities.FddInfo + (*SpecialSubframeInfo)(nil), // 23: entities.SpecialSubframeInfo + (*SpecialSubframe)(nil), // 24: entities.SpecialSubframe + (*AdditionalSpecialSubframe)(nil), // 25: entities.AdditionalSpecialSubframe + (*AdditionalSpecialSubframePatterns)(nil), // 26: entities.AdditionalSpecialSubframePatterns + (EnbType)(0), // 27: entities.EnbType + (*E2NodeComponentConfig)(nil), // 28: entities.E2nodeComponentConfig + (*AdditionalCellInformation)(nil), // 29: entities.AdditionalCellInformation } var file_enb_proto_depIdxs = []int32{ - 5, // 0: entities.Enb.enb_type:type_name -> entities.EnbType - 14, // 1: entities.Enb.served_cells:type_name -> entities.ServedCellInfo - 15, // 2: entities.ServedCellInfo.choice_eutra_mode:type_name -> entities.ChoiceEUTRAMode - 9, // 3: entities.ServedCellInfo.eutra_mode:type_name -> entities.Eutra.Mode - 4, // 4: entities.ServedCellInfo.number_of_antenna_ports:type_name -> entities.NumberOfAntennaPorts - 19, // 5: entities.ServedCellInfo.prach_configuration:type_name -> entities.PrachConfiguration - 18, // 6: entities.ServedCellInfo.mbsfn_subframe_infos:type_name -> entities.MbsfnSubframe - 0, // 7: entities.ServedCellInfo.freq_band_indicator_priority:type_name -> entities.FreqBandIndicatorPriority - 1, // 8: entities.ServedCellInfo.bandwidth_reduced_si:type_name -> entities.BandwidthReducedSI - 17, // 9: entities.ServedCellInfo.neighbour_infos:type_name -> entities.NeighbourInformation - 28, // 10: entities.ServedCellInfo.additional_cell_information:type_name -> entities.AdditionalCellInformation - 23, // 11: entities.ChoiceEUTRAMode.fdd:type_name -> entities.FddInfo - 20, // 12: entities.ChoiceEUTRAMode.tdd:type_name -> entities.TddInfo - 3, // 13: entities.MbsfnSubframe.radioframe_allocation_period:type_name -> entities.RadioframeAllocationPeriod - 2, // 14: entities.MbsfnSubframe.subframe_allocation_type:type_name -> entities.SubframeAllocationType - 8, // 15: entities.TddInfo.transmission_bandwidth:type_name -> entities.TransmissionBandwidth - 6, // 16: entities.TddInfo.subframe_assignment:type_name -> entities.SubframeAssignment - 24, // 17: entities.TddInfo.special_subframe_info:type_name -> entities.SpecialSubframeInfo - 22, // 18: entities.TddInfo.additional_special_subframe_info:type_name -> entities.AdditionalSpecialSubframeInfo - 21, // 19: entities.TddInfo.additional_special_subframe_extension_info:type_name -> entities.AdditionalSpecialSubframeExtensionInfo - 12, // 20: entities.AdditionalSpecialSubframeExtensionInfo.additional_special_subframe_patterns_extension:type_name -> entities.AdditionalSpecialSubframePatterns.Extension - 7, // 21: entities.AdditionalSpecialSubframeExtensionInfo.cyclic_prefix_dl:type_name -> entities.CyclicPrefix - 7, // 22: entities.AdditionalSpecialSubframeExtensionInfo.cyclic_prefix_ul:type_name -> entities.CyclicPrefix - 11, // 23: entities.AdditionalSpecialSubframeInfo.additional_special_subframe_patterns:type_name -> entities.AdditionalSpecialSubframe.Patterns - 7, // 24: entities.AdditionalSpecialSubframeInfo.cyclic_prefix_dl:type_name -> entities.CyclicPrefix - 7, // 25: entities.AdditionalSpecialSubframeInfo.cyclic_prefix_ul:type_name -> entities.CyclicPrefix - 8, // 26: entities.FddInfo.ul_transmission_bandwidth:type_name -> entities.TransmissionBandwidth - 8, // 27: entities.FddInfo.dl_transmission_bandwidth:type_name -> entities.TransmissionBandwidth - 10, // 28: entities.SpecialSubframeInfo.special_subframe_patterns:type_name -> entities.SpecialSubframe.Patterns - 7, // 29: entities.SpecialSubframeInfo.cyclic_prefix_dl:type_name -> entities.CyclicPrefix - 7, // 30: entities.SpecialSubframeInfo.cyclic_prefix_ul:type_name -> entities.CyclicPrefix - 31, // [31:31] is the sub-list for method output_type - 31, // [31:31] is the sub-list for method input_type - 31, // [31:31] is the sub-list for extension type_name - 31, // [31:31] is the sub-list for extension extendee - 0, // [0:31] is the sub-list for field type_name + 27, // 0: entities.Enb.enb_type:type_name -> entities.EnbType + 13, // 1: entities.Enb.served_cells:type_name -> entities.ServedCellInfo + 28, // 2: entities.Enb.node_configs:type_name -> entities.E2nodeComponentConfig + 14, // 3: entities.ServedCellInfo.choice_eutra_mode:type_name -> entities.ChoiceEUTRAMode + 8, // 4: entities.ServedCellInfo.eutra_mode:type_name -> entities.Eutra.Mode + 4, // 5: entities.ServedCellInfo.number_of_antenna_ports:type_name -> entities.NumberOfAntennaPorts + 18, // 6: entities.ServedCellInfo.prach_configuration:type_name -> entities.PrachConfiguration + 17, // 7: entities.ServedCellInfo.mbsfn_subframe_infos:type_name -> entities.MbsfnSubframe + 0, // 8: entities.ServedCellInfo.freq_band_indicator_priority:type_name -> entities.FreqBandIndicatorPriority + 1, // 9: entities.ServedCellInfo.bandwidth_reduced_si:type_name -> entities.BandwidthReducedSI + 16, // 10: entities.ServedCellInfo.neighbour_infos:type_name -> entities.NeighbourInformation + 29, // 11: entities.ServedCellInfo.additional_cell_information:type_name -> entities.AdditionalCellInformation + 22, // 12: entities.ChoiceEUTRAMode.fdd:type_name -> entities.FddInfo + 19, // 13: entities.ChoiceEUTRAMode.tdd:type_name -> entities.TddInfo + 3, // 14: entities.MbsfnSubframe.radioframe_allocation_period:type_name -> entities.RadioframeAllocationPeriod + 2, // 15: entities.MbsfnSubframe.subframe_allocation_type:type_name -> entities.SubframeAllocationType + 7, // 16: entities.TddInfo.transmission_bandwidth:type_name -> entities.TransmissionBandwidth + 5, // 17: entities.TddInfo.subframe_assignment:type_name -> entities.SubframeAssignment + 23, // 18: entities.TddInfo.special_subframe_info:type_name -> entities.SpecialSubframeInfo + 21, // 19: entities.TddInfo.additional_special_subframe_info:type_name -> entities.AdditionalSpecialSubframeInfo + 20, // 20: entities.TddInfo.additional_special_subframe_extension_info:type_name -> entities.AdditionalSpecialSubframeExtensionInfo + 11, // 21: entities.AdditionalSpecialSubframeExtensionInfo.additional_special_subframe_patterns_extension:type_name -> entities.AdditionalSpecialSubframePatterns.Extension + 6, // 22: entities.AdditionalSpecialSubframeExtensionInfo.cyclic_prefix_dl:type_name -> entities.CyclicPrefix + 6, // 23: entities.AdditionalSpecialSubframeExtensionInfo.cyclic_prefix_ul:type_name -> entities.CyclicPrefix + 10, // 24: entities.AdditionalSpecialSubframeInfo.additional_special_subframe_patterns:type_name -> entities.AdditionalSpecialSubframe.Patterns + 6, // 25: entities.AdditionalSpecialSubframeInfo.cyclic_prefix_dl:type_name -> entities.CyclicPrefix + 6, // 26: entities.AdditionalSpecialSubframeInfo.cyclic_prefix_ul:type_name -> entities.CyclicPrefix + 7, // 27: entities.FddInfo.ul_transmission_bandwidth:type_name -> entities.TransmissionBandwidth + 7, // 28: entities.FddInfo.dl_transmission_bandwidth:type_name -> entities.TransmissionBandwidth + 9, // 29: entities.SpecialSubframeInfo.special_subframe_patterns:type_name -> entities.SpecialSubframe.Patterns + 6, // 30: entities.SpecialSubframeInfo.cyclic_prefix_dl:type_name -> entities.CyclicPrefix + 6, // 31: entities.SpecialSubframeInfo.cyclic_prefix_ul:type_name -> entities.CyclicPrefix + 32, // [32:32] is the sub-list for method output_type + 32, // [32:32] is the sub-list for method input_type + 32, // [32:32] is the sub-list for extension type_name + 32, // [32:32] is the sub-list for extension extendee + 0, // [0:32] is the sub-list for field type_name } func init() { file_enb_proto_init() } @@ -2199,6 +2141,8 @@ func file_enb_proto_init() { return } file_additional_cell_information_proto_init() + file_e2node_component_config_proto_init() + file_nb_types_proto_init() if !protoimpl.UnsafeEnabled { file_enb_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Enb); i { @@ -2386,7 +2330,7 @@ func file_enb_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_enb_proto_rawDesc, - NumEnums: 13, + NumEnums: 12, NumMessages: 15, NumExtensions: 0, NumServices: 0, diff --git a/entities/enb.proto b/entities/enb.proto index 2ce0f0f..3b50a2e 100644 --- a/entities/enb.proto +++ b/entities/enb.proto @@ -25,11 +25,14 @@ syntax = "proto3"; package entities; import "additional_cell_information.proto"; +import "e2node_component_config.proto"; +import "nb_types.proto"; message Enb{ EnbType enb_type = 1; repeated ServedCellInfo served_cells = 2; repeated string gu_group_ids = 3; + repeated E2nodeComponentConfig node_configs = 4; } message ServedCellInfo{ @@ -153,17 +156,6 @@ message SpecialSubframeInfo{ CyclicPrefix cyclic_prefix_ul = 3; } -enum EnbType{ - UNKNOWN_ENB_TYPE = 0; - MACRO_ENB = 1; - HOME_ENB = 2; - SHORT_MACRO_ENB = 3; - LONG_MACRO_ENB = 4; - MACRO_NG_ENB = 5; - SHORT_MACRO_NG_ENB = 6; - LONG_MACRO_NG_ENB = 7; -} - enum SubframeAssignment{ UNKNOWN_SUBFRAME_ASSIGNMENT = 0; SA0 = 1; diff --git a/entities/gnb.pb.go b/entities/gnb.pb.go index 16105ac..bd4e83d 100644 --- a/entities/gnb.pb.go +++ b/entities/gnb.pb.go @@ -20,7 +20,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.25.0-devel +// protoc-gen-go v1.25.0 // protoc v3.6.1 // source: gnb.proto @@ -230,55 +230,6 @@ func (Ncnrb) EnumDescriptor() ([]byte, []int) { return file_gnb_proto_rawDescGZIP(), []int{1} } -type GnbType int32 - -const ( - GnbType_UNKNOWN_GNB_TYPE GnbType = 0 - GnbType_GNB GnbType = 1 - GnbType_EN_GNB GnbType = 2 -) - -// Enum value maps for GnbType. -var ( - GnbType_name = map[int32]string{ - 0: "UNKNOWN_GNB_TYPE", - 1: "GNB", - 2: "EN_GNB", - } - GnbType_value = map[string]int32{ - "UNKNOWN_GNB_TYPE": 0, - "GNB": 1, - "EN_GNB": 2, - } -) - -func (x GnbType) Enum() *GnbType { - p := new(GnbType) - *p = x - return p -} - -func (x GnbType) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (GnbType) Descriptor() protoreflect.EnumDescriptor { - return file_gnb_proto_enumTypes[2].Descriptor() -} - -func (GnbType) Type() protoreflect.EnumType { - return &file_gnb_proto_enumTypes[2] -} - -func (x GnbType) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use GnbType.Descriptor instead. -func (GnbType) EnumDescriptor() ([]byte, []int) { - return file_gnb_proto_rawDescGZIP(), []int{2} -} - type Nr_Mode int32 const ( @@ -312,11 +263,11 @@ func (x Nr_Mode) String() string { } func (Nr_Mode) Descriptor() protoreflect.EnumDescriptor { - return file_gnb_proto_enumTypes[3].Descriptor() + return file_gnb_proto_enumTypes[2].Descriptor() } func (Nr_Mode) Type() protoreflect.EnumType { - return &file_gnb_proto_enumTypes[3] + return &file_gnb_proto_enumTypes[2] } func (x Nr_Mode) Number() protoreflect.EnumNumber { @@ -333,9 +284,10 @@ type Gnb struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ServedNrCells []*ServedNRCell `protobuf:"bytes,1,rep,name=served_nr_cells,json=servedNrCells,proto3" json:"served_nr_cells,omitempty"` - RanFunctions []*RanFunction `protobuf:"bytes,2,rep,name=ran_functions,json=ranFunctions,proto3" json:"ran_functions,omitempty"` - GnbType GnbType `protobuf:"varint,3,opt,name=gnb_type,json=gnbType,proto3,enum=entities.GnbType" json:"gnb_type,omitempty"` + ServedNrCells []*ServedNRCell `protobuf:"bytes,1,rep,name=served_nr_cells,json=servedNrCells,proto3" json:"served_nr_cells,omitempty"` + RanFunctions []*RanFunction `protobuf:"bytes,2,rep,name=ran_functions,json=ranFunctions,proto3" json:"ran_functions,omitempty"` + GnbType GnbType `protobuf:"varint,3,opt,name=gnb_type,json=gnbType,proto3,enum=entities.GnbType" json:"gnb_type,omitempty"` + NodeConfigs []*E2NodeComponentConfig `protobuf:"bytes,4,rep,name=node_configs,json=nodeConfigs,proto3" json:"node_configs,omitempty"` } func (x *Gnb) Reset() { @@ -391,6 +343,13 @@ func (x *Gnb) GetGnbType() GnbType { return GnbType_UNKNOWN_GNB_TYPE } +func (x *Gnb) GetNodeConfigs() []*E2NodeComponentConfig { + if x != nil { + return x.NodeConfigs + } + return nil +} + type ServedNRCell struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1245,210 +1204,213 @@ var File_gnb_proto protoreflect.FileDescriptor var file_gnb_proto_rawDesc = []byte{ 0x0a, 0x09, 0x67, 0x6e, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, 0x12, 0x72, 0x61, 0x6e, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x61, 0x64, 0x64, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xaf, 0x01, 0x0a, - 0x03, 0x47, 0x6e, 0x62, 0x12, 0x3e, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x6e, - 0x72, 0x5f, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, - 0x52, 0x43, 0x65, 0x6c, 0x6c, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x72, 0x43, - 0x65, 0x6c, 0x6c, 0x73, 0x12, 0x3a, 0x0a, 0x0d, 0x72, 0x61, 0x6e, 0x5f, 0x66, 0x75, 0x6e, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x52, 0x61, 0x6e, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x0c, 0x72, 0x61, 0x6e, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x2c, 0x0a, 0x08, 0x67, 0x6e, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x47, 0x6e, - 0x62, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x67, 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, 0x22, 0xbe, - 0x01, 0x0a, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x52, 0x43, 0x65, 0x6c, 0x6c, 0x12, - 0x5e, 0x0a, 0x1a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x6e, 0x72, 0x5f, 0x63, 0x65, 0x6c, - 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x52, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x17, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x72, - 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x4e, 0x0a, 0x12, 0x6e, 0x72, 0x5f, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x5f, - 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, - 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x6e, - 0x72, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x22, - 0xa0, 0x08, 0x0a, 0x17, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x52, 0x43, 0x65, 0x6c, 0x6c, - 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, - 0x72, 0x5f, 0x70, 0x63, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6e, 0x72, 0x50, - 0x63, 0x69, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x65, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x74, 0x61, 0x63, 0x35, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x63, 0x35, 0x67, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, - 0x64, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x64, 0x53, 0x74, 0x61, 0x63, 0x12, 0x21, 0x0a, 0x0c, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x70, 0x6c, 0x6d, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x50, 0x6c, 0x6d, 0x6e, 0x73, 0x12, - 0x2a, 0x0a, 0x07, 0x6e, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x11, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x2e, 0x4d, - 0x6f, 0x64, 0x65, 0x52, 0x06, 0x6e, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x54, 0x0a, 0x0e, 0x63, - 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x52, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x52, 0x4d, - 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x72, 0x4d, 0x6f, 0x64, - 0x65, 0x12, 0x63, 0x0a, 0x1b, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, + 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x65, 0x32, 0x6e, 0x6f, 0x64, + 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0e, 0x6e, 0x62, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf3, 0x01, 0x0a, 0x03, + 0x47, 0x6e, 0x62, 0x12, 0x3e, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x6e, 0x72, + 0x5f, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x52, + 0x43, 0x65, 0x6c, 0x6c, 0x52, 0x0d, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x72, 0x43, 0x65, + 0x6c, 0x6c, 0x73, 0x12, 0x3a, 0x0a, 0x0d, 0x72, 0x61, 0x6e, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x65, 0x6e, 0x74, + 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x52, 0x61, 0x6e, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x0c, 0x72, 0x61, 0x6e, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x2c, 0x0a, 0x08, 0x67, 0x6e, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x11, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x47, 0x6e, 0x62, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x67, 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12, 0x42, 0x0a, + 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x45, + 0x32, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x73, 0x22, 0xbe, 0x01, 0x0a, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x52, 0x43, 0x65, + 0x6c, 0x6c, 0x12, 0x5e, 0x0a, 0x1a, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x6e, 0x72, 0x5f, 0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, - 0x73, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x65, 0x6c, 0x6c, - 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x19, 0x61, 0x64, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, - 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x89, 0x05, 0x0a, 0x0c, 0x43, 0x68, 0x6f, 0x69, 0x63, - 0x65, 0x4e, 0x52, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x48, 0x0a, 0x03, 0x66, 0x64, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x52, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, - 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x52, - 0x4d, 0x6f, 0x64, 0x65, 0x2e, 0x46, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x66, 0x64, - 0x64, 0x12, 0x48, 0x0a, 0x03, 0x74, 0x64, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, - 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, - 0x4e, 0x52, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x52, 0x4d, 0x6f, 0x64, 0x65, 0x2e, 0x54, - 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x74, 0x64, 0x64, 0x1a, 0xc1, 0x02, 0x0a, 0x07, - 0x46, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, 0x0a, 0x0c, 0x75, 0x6c, 0x5f, 0x66, 0x72, - 0x65, 0x71, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x52, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x17, 0x73, 0x65, 0x72, 0x76, 0x65, + 0x64, 0x4e, 0x72, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x4e, 0x0a, 0x12, 0x6e, 0x72, 0x5f, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, + 0x75, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, + 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x4e, 0x65, 0x69, 0x67, + 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x10, 0x6e, 0x72, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, + 0x6f, 0x73, 0x22, 0xa0, 0x08, 0x0a, 0x17, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x52, 0x43, + 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x15, + 0x0a, 0x06, 0x6e, 0x72, 0x5f, 0x70, 0x63, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, + 0x6e, 0x72, 0x50, 0x63, 0x69, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x65, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x74, 0x61, 0x63, 0x35, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x73, 0x74, 0x61, 0x63, 0x35, 0x67, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x64, 0x53, 0x74, 0x61, 0x63, 0x12, + 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x5f, 0x70, 0x6c, 0x6d, 0x6e, 0x73, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x50, 0x6c, 0x6d, + 0x6e, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x6e, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, + 0x72, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x6e, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x54, + 0x0a, 0x0e, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x52, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, + 0x4e, 0x52, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x0c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x72, + 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x63, 0x0a, 0x1b, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x5f, 0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x65, 0x6e, 0x74, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, + 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x19, + 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x89, 0x05, 0x0a, 0x0c, 0x43, 0x68, + 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x52, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x48, 0x0a, 0x03, 0x66, 0x64, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x64, 0x4e, 0x52, 0x43, 0x65, 0x6c, 0x6c, 0x49, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x4e, 0x52, 0x4d, 0x6f, 0x64, 0x65, 0x2e, 0x46, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x03, 0x66, 0x64, 0x64, 0x12, 0x48, 0x0a, 0x03, 0x74, 0x64, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x36, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x64, 0x4e, 0x52, 0x43, 0x65, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x52, 0x4d, 0x6f, 0x64, + 0x65, 0x2e, 0x54, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x74, 0x64, 0x64, 0x1a, 0xc1, + 0x02, 0x0a, 0x07, 0x46, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, 0x0a, 0x0c, 0x75, 0x6c, + 0x5f, 0x66, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x46, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x75, 0x6c, 0x46, + 0x72, 0x65, 0x71, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, 0x0a, 0x0c, 0x64, 0x6c, 0x5f, 0x66, 0x72, + 0x65, 0x71, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x6e, 0x63, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x75, 0x6c, 0x46, 0x72, 0x65, 0x71, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, 0x0a, 0x0c, 0x64, 0x6c, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x5f, - 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, + 0x65, 0x6e, 0x63, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x6c, 0x46, 0x72, 0x65, 0x71, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5d, 0x0a, 0x19, 0x75, 0x6c, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, + 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x52, 0x17, 0x75, 0x6c, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, + 0x64, 0x74, 0x68, 0x12, 0x5d, 0x0a, 0x19, 0x64, 0x6c, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x2e, 0x4e, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x52, 0x17, 0x64, 0x6c, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, + 0x74, 0x68, 0x1a, 0xa0, 0x01, 0x0a, 0x07, 0x54, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, + 0x0a, 0x0c, 0x6e, 0x72, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, + 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x0a, 0x6e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x58, 0x0a, 0x16, 0x74, + 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x61, 0x6e, 0x64, + 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6e, + 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x52, 0x15, + 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, + 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x2b, 0x0a, 0x02, 0x4e, 0x72, 0x22, 0x25, 0x0a, 0x04, 0x4d, + 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, + 0x12, 0x07, 0x0a, 0x03, 0x46, 0x44, 0x44, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x44, 0x44, + 0x10, 0x02, 0x22, 0xd7, 0x02, 0x0a, 0x0f, 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x09, 0x6e, 0x72, 0x5f, 0x61, 0x72, 0x5f, + 0x66, 0x63, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6e, 0x72, 0x41, 0x72, 0x46, + 0x63, 0x6e, 0x12, 0x50, 0x0a, 0x0e, 0x73, 0x75, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, - 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x64, 0x6c, 0x46, 0x72, 0x65, 0x71, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x5d, 0x0a, 0x19, 0x75, 0x6c, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, - 0x4e, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, - 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x52, 0x17, 0x75, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, - 0x12, 0x5d, 0x0a, 0x19, 0x64, 0x6c, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, - 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, - 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x52, 0x17, 0x64, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x1a, - 0xa0, 0x01, 0x0a, 0x07, 0x54, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, 0x0a, 0x0c, 0x6e, - 0x72, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x46, - 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x6e, 0x72, - 0x46, 0x72, 0x65, 0x71, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x58, 0x0a, 0x16, 0x74, 0x72, 0x61, 0x6e, - 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, - 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, - 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x52, 0x15, 0x74, 0x72, 0x61, + 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x53, 0x75, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x73, 0x75, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x44, 0x0a, 0x0f, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x79, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, + 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, + 0x63, 0x79, 0x42, 0x61, 0x6e, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0e, 0x66, 0x72, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x79, 0x42, 0x61, 0x6e, 0x64, 0x73, 0x1a, 0x8f, 0x01, 0x0a, 0x0e, 0x53, + 0x75, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, + 0x0a, 0x73, 0x75, 0x6c, 0x5f, 0x61, 0x72, 0x5f, 0x66, 0x63, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x08, 0x73, 0x75, 0x6c, 0x41, 0x72, 0x46, 0x63, 0x6e, 0x12, 0x5f, 0x0a, 0x1a, 0x73, + 0x75, 0x6c, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, + 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x21, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, - 0x74, 0x68, 0x22, 0x2b, 0x0a, 0x02, 0x4e, 0x72, 0x22, 0x25, 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, - 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, - 0x03, 0x46, 0x44, 0x44, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x44, 0x44, 0x10, 0x02, 0x22, - 0xd7, 0x02, 0x0a, 0x0f, 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x49, - 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x09, 0x6e, 0x72, 0x5f, 0x61, 0x72, 0x5f, 0x66, 0x63, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6e, 0x72, 0x41, 0x72, 0x46, 0x63, 0x6e, 0x12, - 0x50, 0x0a, 0x0e, 0x73, 0x75, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, - 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x49, 0x6e, - 0x66, 0x6f, 0x2e, 0x53, 0x75, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x0e, 0x73, 0x75, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x44, 0x0a, 0x0f, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x62, - 0x61, 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x42, - 0x61, 0x6e, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x0e, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, - 0x63, 0x79, 0x42, 0x61, 0x6e, 0x64, 0x73, 0x1a, 0x8f, 0x01, 0x0a, 0x0e, 0x53, 0x75, 0x6c, 0x49, - 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x0a, 0x73, 0x75, - 0x6c, 0x5f, 0x61, 0x72, 0x5f, 0x66, 0x63, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, - 0x73, 0x75, 0x6c, 0x41, 0x72, 0x46, 0x63, 0x6e, 0x12, 0x5f, 0x0a, 0x1a, 0x73, 0x75, 0x6c, 0x5f, - 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x61, 0x6e, - 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x52, - 0x18, 0x73, 0x75, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x6f, 0x0a, 0x11, 0x46, 0x72, 0x65, - 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x42, 0x61, 0x6e, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x2a, - 0x0a, 0x11, 0x6e, 0x72, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x62, - 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6e, 0x72, 0x46, 0x72, 0x65, - 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x42, 0x61, 0x6e, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x73, 0x75, - 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x75, 0x6c, 0x5f, 0x62, 0x61, 0x6e, 0x64, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x64, 0x53, 0x75, 0x6c, 0x42, 0x61, 0x6e, 0x64, 0x73, 0x22, 0x67, 0x0a, 0x17, 0x4e, 0x72, - 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, - 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x25, 0x0a, 0x05, 0x6e, 0x72, 0x73, 0x63, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, - 0x4e, 0x72, 0x73, 0x63, 0x73, 0x52, 0x05, 0x6e, 0x72, 0x73, 0x63, 0x73, 0x12, 0x25, 0x0a, 0x05, - 0x6e, 0x63, 0x6e, 0x72, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x63, 0x6e, 0x72, 0x62, 0x52, 0x05, 0x6e, 0x63, - 0x6e, 0x72, 0x62, 0x22, 0x9b, 0x05, 0x0a, 0x16, 0x4e, 0x72, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, - 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x15, - 0x0a, 0x06, 0x6e, 0x72, 0x5f, 0x70, 0x63, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, - 0x6e, 0x72, 0x50, 0x63, 0x69, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x72, 0x5f, 0x63, 0x67, 0x69, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x72, 0x43, 0x67, 0x69, 0x12, 0x2a, 0x0a, 0x07, - 0x6e, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x2e, 0x4d, 0x6f, 0x64, 0x65, - 0x52, 0x06, 0x6e, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x53, 0x0a, 0x0e, 0x63, 0x68, 0x6f, 0x69, - 0x63, 0x65, 0x5f, 0x6e, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x2d, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x4e, 0x65, - 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x52, 0x4d, 0x6f, 0x64, 0x65, 0x52, - 0x0c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x74, 0x61, 0x63, 0x35, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, - 0x74, 0x61, 0x63, 0x35, 0x67, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, - 0x72, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x64, 0x53, 0x74, 0x61, 0x63, 0x1a, 0x90, - 0x03, 0x0a, 0x0c, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x52, 0x4d, 0x6f, 0x64, 0x65, 0x12, - 0x47, 0x0a, 0x03, 0x66, 0x64, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, - 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, - 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x52, 0x4d, 0x6f, 0x64, 0x65, 0x2e, 0x46, 0x64, 0x64, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x66, 0x64, 0x64, 0x12, 0x47, 0x0a, 0x03, 0x74, 0x64, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, - 0x2e, 0x4e, 0x72, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, - 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x52, - 0x4d, 0x6f, 0x64, 0x65, 0x2e, 0x54, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x74, 0x64, - 0x64, 0x1a, 0x99, 0x01, 0x0a, 0x07, 0x46, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x46, 0x0a, - 0x12, 0x75, 0x6c, 0x61, 0x72, 0x5f, 0x66, 0x63, 0x6e, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x5f, 0x69, - 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, - 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x75, 0x6c, 0x61, 0x72, 0x46, 0x63, 0x6e, 0x46, 0x72, 0x65, - 0x71, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x46, 0x0a, 0x12, 0x64, 0x6c, 0x61, 0x72, 0x5f, 0x66, 0x63, - 0x6e, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x46, - 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x64, 0x6c, - 0x61, 0x72, 0x46, 0x63, 0x6e, 0x46, 0x72, 0x65, 0x71, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x52, 0x0a, - 0x07, 0x54, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x47, 0x0a, 0x13, 0x61, 0x72, 0x5f, 0x66, - 0x63, 0x6e, 0x5f, 0x6e, 0x72, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, - 0x2e, 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x0f, 0x61, 0x72, 0x46, 0x63, 0x6e, 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x49, 0x6e, 0x66, - 0x6f, 0x2a, 0x47, 0x0a, 0x05, 0x4e, 0x72, 0x73, 0x63, 0x73, 0x12, 0x11, 0x0a, 0x0d, 0x55, 0x4e, - 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x4e, 0x52, 0x53, 0x43, 0x53, 0x10, 0x00, 0x12, 0x09, 0x0a, - 0x05, 0x53, 0x43, 0x53, 0x31, 0x35, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x43, 0x53, 0x33, - 0x30, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x43, 0x53, 0x36, 0x30, 0x10, 0x03, 0x12, 0x0a, - 0x0a, 0x06, 0x53, 0x43, 0x53, 0x31, 0x32, 0x30, 0x10, 0x04, 0x2a, 0xe8, 0x02, 0x0a, 0x05, 0x4e, - 0x63, 0x6e, 0x72, 0x62, 0x12, 0x11, 0x0a, 0x0d, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, - 0x4e, 0x43, 0x4e, 0x52, 0x42, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x31, 0x31, - 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x31, 0x38, 0x10, 0x02, 0x12, 0x09, 0x0a, - 0x05, 0x4e, 0x52, 0x42, 0x32, 0x34, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x32, - 0x35, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x33, 0x31, 0x10, 0x05, 0x12, 0x09, - 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x33, 0x32, 0x10, 0x06, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, - 0x33, 0x38, 0x10, 0x07, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x35, 0x31, 0x10, 0x08, 0x12, - 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x35, 0x32, 0x10, 0x09, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, - 0x42, 0x36, 0x35, 0x10, 0x0a, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x36, 0x36, 0x10, 0x0b, - 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x37, 0x38, 0x10, 0x0c, 0x12, 0x09, 0x0a, 0x05, 0x4e, - 0x52, 0x42, 0x37, 0x39, 0x10, 0x0d, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x39, 0x33, 0x10, - 0x0e, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x31, 0x30, 0x36, 0x10, 0x0f, 0x12, 0x0a, 0x0a, - 0x06, 0x4e, 0x52, 0x42, 0x31, 0x30, 0x37, 0x10, 0x10, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, - 0x31, 0x32, 0x31, 0x10, 0x11, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x31, 0x33, 0x32, 0x10, - 0x12, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x31, 0x33, 0x33, 0x10, 0x13, 0x12, 0x0a, 0x0a, - 0x06, 0x4e, 0x52, 0x42, 0x31, 0x33, 0x35, 0x10, 0x14, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, - 0x31, 0x36, 0x30, 0x10, 0x15, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x31, 0x36, 0x32, 0x10, - 0x16, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x31, 0x38, 0x39, 0x10, 0x17, 0x12, 0x0a, 0x0a, - 0x06, 0x4e, 0x52, 0x42, 0x32, 0x31, 0x36, 0x10, 0x18, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, - 0x32, 0x31, 0x37, 0x10, 0x19, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x32, 0x34, 0x35, 0x10, - 0x1a, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x32, 0x36, 0x34, 0x10, 0x1b, 0x12, 0x0a, 0x0a, - 0x06, 0x4e, 0x52, 0x42, 0x32, 0x37, 0x30, 0x10, 0x1c, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, - 0x32, 0x37, 0x33, 0x10, 0x1d, 0x2a, 0x34, 0x0a, 0x07, 0x47, 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x14, 0x0a, 0x10, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x47, 0x4e, 0x42, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x47, 0x4e, 0x42, 0x10, 0x01, 0x12, - 0x0a, 0x0a, 0x06, 0x45, 0x4e, 0x5f, 0x47, 0x4e, 0x42, 0x10, 0x02, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, + 0x74, 0x68, 0x52, 0x18, 0x73, 0x75, 0x6c, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x6f, 0x0a, 0x11, + 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x42, 0x61, 0x6e, 0x64, 0x49, 0x74, 0x65, + 0x6d, 0x12, 0x2a, 0x0a, 0x11, 0x6e, 0x72, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x79, 0x5f, 0x62, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6e, 0x72, + 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x42, 0x61, 0x6e, 0x64, 0x12, 0x2e, 0x0a, + 0x13, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x75, 0x6c, 0x5f, 0x62, + 0x61, 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x11, 0x73, 0x75, 0x70, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x64, 0x53, 0x75, 0x6c, 0x42, 0x61, 0x6e, 0x64, 0x73, 0x22, 0x67, 0x0a, + 0x17, 0x4e, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, + 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x25, 0x0a, 0x05, 0x6e, 0x72, 0x73, 0x63, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x73, 0x63, 0x73, 0x52, 0x05, 0x6e, 0x72, 0x73, 0x63, 0x73, 0x12, + 0x25, 0x0a, 0x05, 0x6e, 0x63, 0x6e, 0x72, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, + 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x63, 0x6e, 0x72, 0x62, 0x52, + 0x05, 0x6e, 0x63, 0x6e, 0x72, 0x62, 0x22, 0x9b, 0x05, 0x0a, 0x16, 0x4e, 0x72, 0x4e, 0x65, 0x69, + 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x72, 0x5f, 0x70, 0x63, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x05, 0x6e, 0x72, 0x50, 0x63, 0x69, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x72, 0x5f, 0x63, + 0x67, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x72, 0x43, 0x67, 0x69, 0x12, + 0x2a, 0x0a, 0x07, 0x6e, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x11, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x2e, 0x4d, + 0x6f, 0x64, 0x65, 0x52, 0x06, 0x6e, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x53, 0x0a, 0x0e, 0x63, + 0x68, 0x6f, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, + 0x72, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x52, 0x4d, 0x6f, + 0x64, 0x65, 0x52, 0x0c, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x72, 0x4d, 0x6f, 0x64, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x63, 0x35, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x63, 0x35, 0x67, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x75, 0x72, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x64, 0x53, 0x74, 0x61, + 0x63, 0x1a, 0x90, 0x03, 0x0a, 0x0c, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x52, 0x4d, 0x6f, + 0x64, 0x65, 0x12, 0x47, 0x0a, 0x03, 0x66, 0x64, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x35, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x4e, 0x65, 0x69, + 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x4e, 0x52, 0x4d, 0x6f, 0x64, 0x65, 0x2e, 0x46, + 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x03, 0x66, 0x64, 0x64, 0x12, 0x47, 0x0a, 0x03, 0x74, + 0x64, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x49, + 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63, + 0x65, 0x4e, 0x52, 0x4d, 0x6f, 0x64, 0x65, 0x2e, 0x54, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x03, 0x74, 0x64, 0x64, 0x1a, 0x99, 0x01, 0x0a, 0x07, 0x46, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x46, 0x0a, 0x12, 0x75, 0x6c, 0x61, 0x72, 0x5f, 0x66, 0x63, 0x6e, 0x5f, 0x66, 0x72, 0x65, + 0x71, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, + 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, + 0x6e, 0x63, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x75, 0x6c, 0x61, 0x72, 0x46, 0x63, 0x6e, + 0x46, 0x72, 0x65, 0x71, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x46, 0x0a, 0x12, 0x64, 0x6c, 0x61, 0x72, + 0x5f, 0x66, 0x63, 0x6e, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, + 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x0f, 0x64, 0x6c, 0x61, 0x72, 0x46, 0x63, 0x6e, 0x46, 0x72, 0x65, 0x71, 0x49, 0x6e, 0x66, 0x6f, + 0x1a, 0x52, 0x0a, 0x07, 0x54, 0x64, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x47, 0x0a, 0x13, 0x61, + 0x72, 0x5f, 0x66, 0x63, 0x6e, 0x5f, 0x6e, 0x72, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x5f, 0x69, 0x6e, + 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x69, 0x65, 0x73, 0x2e, 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x61, 0x72, 0x46, 0x63, 0x6e, 0x4e, 0x72, 0x46, 0x72, 0x65, 0x71, + 0x49, 0x6e, 0x66, 0x6f, 0x2a, 0x47, 0x0a, 0x05, 0x4e, 0x72, 0x73, 0x63, 0x73, 0x12, 0x11, 0x0a, + 0x0d, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x4e, 0x52, 0x53, 0x43, 0x53, 0x10, 0x00, + 0x12, 0x09, 0x0a, 0x05, 0x53, 0x43, 0x53, 0x31, 0x35, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x53, + 0x43, 0x53, 0x33, 0x30, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x43, 0x53, 0x36, 0x30, 0x10, + 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x43, 0x53, 0x31, 0x32, 0x30, 0x10, 0x04, 0x2a, 0xe8, 0x02, + 0x0a, 0x05, 0x4e, 0x63, 0x6e, 0x72, 0x62, 0x12, 0x11, 0x0a, 0x0d, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, + 0x57, 0x4e, 0x5f, 0x4e, 0x43, 0x4e, 0x52, 0x42, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, + 0x42, 0x31, 0x31, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x31, 0x38, 0x10, 0x02, + 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x32, 0x34, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x4e, + 0x52, 0x42, 0x32, 0x35, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x33, 0x31, 0x10, + 0x05, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x33, 0x32, 0x10, 0x06, 0x12, 0x09, 0x0a, 0x05, + 0x4e, 0x52, 0x42, 0x33, 0x38, 0x10, 0x07, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x35, 0x31, + 0x10, 0x08, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x35, 0x32, 0x10, 0x09, 0x12, 0x09, 0x0a, + 0x05, 0x4e, 0x52, 0x42, 0x36, 0x35, 0x10, 0x0a, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x36, + 0x36, 0x10, 0x0b, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x37, 0x38, 0x10, 0x0c, 0x12, 0x09, + 0x0a, 0x05, 0x4e, 0x52, 0x42, 0x37, 0x39, 0x10, 0x0d, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x52, 0x42, + 0x39, 0x33, 0x10, 0x0e, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x31, 0x30, 0x36, 0x10, 0x0f, + 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x31, 0x30, 0x37, 0x10, 0x10, 0x12, 0x0a, 0x0a, 0x06, + 0x4e, 0x52, 0x42, 0x31, 0x32, 0x31, 0x10, 0x11, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x31, + 0x33, 0x32, 0x10, 0x12, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x31, 0x33, 0x33, 0x10, 0x13, + 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x31, 0x33, 0x35, 0x10, 0x14, 0x12, 0x0a, 0x0a, 0x06, + 0x4e, 0x52, 0x42, 0x31, 0x36, 0x30, 0x10, 0x15, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x31, + 0x36, 0x32, 0x10, 0x16, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x31, 0x38, 0x39, 0x10, 0x17, + 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x32, 0x31, 0x36, 0x10, 0x18, 0x12, 0x0a, 0x0a, 0x06, + 0x4e, 0x52, 0x42, 0x32, 0x31, 0x37, 0x10, 0x19, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x32, + 0x34, 0x35, 0x10, 0x1a, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x32, 0x36, 0x34, 0x10, 0x1b, + 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x52, 0x42, 0x32, 0x37, 0x30, 0x10, 0x1c, 0x12, 0x0a, 0x0a, 0x06, + 0x4e, 0x52, 0x42, 0x32, 0x37, 0x33, 0x10, 0x1d, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1463,65 +1425,67 @@ func file_gnb_proto_rawDescGZIP() []byte { return file_gnb_proto_rawDescData } -var file_gnb_proto_enumTypes = make([]protoimpl.EnumInfo, 4) +var file_gnb_proto_enumTypes = make([]protoimpl.EnumInfo, 3) var file_gnb_proto_msgTypes = make([]protoimpl.MessageInfo, 15) var file_gnb_proto_goTypes = []interface{}{ (Nrscs)(0), // 0: entities.Nrscs (Ncnrb)(0), // 1: entities.Ncnrb - (GnbType)(0), // 2: entities.GnbType - (Nr_Mode)(0), // 3: entities.Nr.Mode - (*Gnb)(nil), // 4: entities.Gnb - (*ServedNRCell)(nil), // 5: entities.ServedNRCell - (*ServedNRCellInformation)(nil), // 6: entities.ServedNRCellInformation - (*Nr)(nil), // 7: entities.Nr - (*NrFrequencyInfo)(nil), // 8: entities.NrFrequencyInfo - (*FrequencyBandItem)(nil), // 9: entities.FrequencyBandItem - (*NrTransmissionBandwidth)(nil), // 10: entities.NrTransmissionBandwidth - (*NrNeighbourInformation)(nil), // 11: entities.NrNeighbourInformation - (*ServedNRCellInformation_ChoiceNRMode)(nil), // 12: entities.ServedNRCellInformation.ChoiceNRMode - (*ServedNRCellInformation_ChoiceNRMode_FddInfo)(nil), // 13: entities.ServedNRCellInformation.ChoiceNRMode.FddInfo - (*ServedNRCellInformation_ChoiceNRMode_TddInfo)(nil), // 14: entities.ServedNRCellInformation.ChoiceNRMode.TddInfo - (*NrFrequencyInfo_SulInformation)(nil), // 15: entities.NrFrequencyInfo.SulInformation - (*NrNeighbourInformation_ChoiceNRMode)(nil), // 16: entities.NrNeighbourInformation.ChoiceNRMode - (*NrNeighbourInformation_ChoiceNRMode_FddInfo)(nil), // 17: entities.NrNeighbourInformation.ChoiceNRMode.FddInfo - (*NrNeighbourInformation_ChoiceNRMode_TddInfo)(nil), // 18: entities.NrNeighbourInformation.ChoiceNRMode.TddInfo - (*RanFunction)(nil), // 19: entities.RanFunction - (*AdditionalCellInformation)(nil), // 20: entities.AdditionalCellInformation + (Nr_Mode)(0), // 2: entities.Nr.Mode + (*Gnb)(nil), // 3: entities.Gnb + (*ServedNRCell)(nil), // 4: entities.ServedNRCell + (*ServedNRCellInformation)(nil), // 5: entities.ServedNRCellInformation + (*Nr)(nil), // 6: entities.Nr + (*NrFrequencyInfo)(nil), // 7: entities.NrFrequencyInfo + (*FrequencyBandItem)(nil), // 8: entities.FrequencyBandItem + (*NrTransmissionBandwidth)(nil), // 9: entities.NrTransmissionBandwidth + (*NrNeighbourInformation)(nil), // 10: entities.NrNeighbourInformation + (*ServedNRCellInformation_ChoiceNRMode)(nil), // 11: entities.ServedNRCellInformation.ChoiceNRMode + (*ServedNRCellInformation_ChoiceNRMode_FddInfo)(nil), // 12: entities.ServedNRCellInformation.ChoiceNRMode.FddInfo + (*ServedNRCellInformation_ChoiceNRMode_TddInfo)(nil), // 13: entities.ServedNRCellInformation.ChoiceNRMode.TddInfo + (*NrFrequencyInfo_SulInformation)(nil), // 14: entities.NrFrequencyInfo.SulInformation + (*NrNeighbourInformation_ChoiceNRMode)(nil), // 15: entities.NrNeighbourInformation.ChoiceNRMode + (*NrNeighbourInformation_ChoiceNRMode_FddInfo)(nil), // 16: entities.NrNeighbourInformation.ChoiceNRMode.FddInfo + (*NrNeighbourInformation_ChoiceNRMode_TddInfo)(nil), // 17: entities.NrNeighbourInformation.ChoiceNRMode.TddInfo + (*RanFunction)(nil), // 18: entities.RanFunction + (GnbType)(0), // 19: entities.GnbType + (*E2NodeComponentConfig)(nil), // 20: entities.E2nodeComponentConfig + (*AdditionalCellInformation)(nil), // 21: entities.AdditionalCellInformation } var file_gnb_proto_depIdxs = []int32{ - 5, // 0: entities.Gnb.served_nr_cells:type_name -> entities.ServedNRCell - 19, // 1: entities.Gnb.ran_functions:type_name -> entities.RanFunction - 2, // 2: entities.Gnb.gnb_type:type_name -> entities.GnbType - 6, // 3: entities.ServedNRCell.served_nr_cell_information:type_name -> entities.ServedNRCellInformation - 11, // 4: entities.ServedNRCell.nr_neighbour_infos:type_name -> entities.NrNeighbourInformation - 3, // 5: entities.ServedNRCellInformation.nr_mode:type_name -> entities.Nr.Mode - 12, // 6: entities.ServedNRCellInformation.choice_nr_mode:type_name -> entities.ServedNRCellInformation.ChoiceNRMode - 20, // 7: entities.ServedNRCellInformation.additional_cell_information:type_name -> entities.AdditionalCellInformation - 15, // 8: entities.NrFrequencyInfo.sulInformation:type_name -> entities.NrFrequencyInfo.SulInformation - 9, // 9: entities.NrFrequencyInfo.frequency_bands:type_name -> entities.FrequencyBandItem - 0, // 10: entities.NrTransmissionBandwidth.nrscs:type_name -> entities.Nrscs - 1, // 11: entities.NrTransmissionBandwidth.ncnrb:type_name -> entities.Ncnrb - 3, // 12: entities.NrNeighbourInformation.nr_mode:type_name -> entities.Nr.Mode - 16, // 13: entities.NrNeighbourInformation.choice_nr_mode:type_name -> entities.NrNeighbourInformation.ChoiceNRMode - 13, // 14: entities.ServedNRCellInformation.ChoiceNRMode.fdd:type_name -> entities.ServedNRCellInformation.ChoiceNRMode.FddInfo - 14, // 15: entities.ServedNRCellInformation.ChoiceNRMode.tdd:type_name -> entities.ServedNRCellInformation.ChoiceNRMode.TddInfo - 8, // 16: entities.ServedNRCellInformation.ChoiceNRMode.FddInfo.ul_freq_info:type_name -> entities.NrFrequencyInfo - 8, // 17: entities.ServedNRCellInformation.ChoiceNRMode.FddInfo.dl_freq_info:type_name -> entities.NrFrequencyInfo - 10, // 18: entities.ServedNRCellInformation.ChoiceNRMode.FddInfo.ul_transmission_bandwidth:type_name -> entities.NrTransmissionBandwidth - 10, // 19: entities.ServedNRCellInformation.ChoiceNRMode.FddInfo.dl_transmission_bandwidth:type_name -> entities.NrTransmissionBandwidth - 8, // 20: entities.ServedNRCellInformation.ChoiceNRMode.TddInfo.nr_freq_info:type_name -> entities.NrFrequencyInfo - 10, // 21: entities.ServedNRCellInformation.ChoiceNRMode.TddInfo.transmission_bandwidth:type_name -> entities.NrTransmissionBandwidth - 10, // 22: entities.NrFrequencyInfo.SulInformation.sul_transmission_bandwidth:type_name -> entities.NrTransmissionBandwidth - 17, // 23: entities.NrNeighbourInformation.ChoiceNRMode.fdd:type_name -> entities.NrNeighbourInformation.ChoiceNRMode.FddInfo - 18, // 24: entities.NrNeighbourInformation.ChoiceNRMode.tdd:type_name -> entities.NrNeighbourInformation.ChoiceNRMode.TddInfo - 8, // 25: entities.NrNeighbourInformation.ChoiceNRMode.FddInfo.ular_fcn_freq_info:type_name -> entities.NrFrequencyInfo - 8, // 26: entities.NrNeighbourInformation.ChoiceNRMode.FddInfo.dlar_fcn_freq_info:type_name -> entities.NrFrequencyInfo - 8, // 27: entities.NrNeighbourInformation.ChoiceNRMode.TddInfo.ar_fcn_nr_freq_info:type_name -> entities.NrFrequencyInfo - 28, // [28:28] is the sub-list for method output_type - 28, // [28:28] is the sub-list for method input_type - 28, // [28:28] is the sub-list for extension type_name - 28, // [28:28] is the sub-list for extension extendee - 0, // [0:28] is the sub-list for field type_name + 4, // 0: entities.Gnb.served_nr_cells:type_name -> entities.ServedNRCell + 18, // 1: entities.Gnb.ran_functions:type_name -> entities.RanFunction + 19, // 2: entities.Gnb.gnb_type:type_name -> entities.GnbType + 20, // 3: entities.Gnb.node_configs:type_name -> entities.E2nodeComponentConfig + 5, // 4: entities.ServedNRCell.served_nr_cell_information:type_name -> entities.ServedNRCellInformation + 10, // 5: entities.ServedNRCell.nr_neighbour_infos:type_name -> entities.NrNeighbourInformation + 2, // 6: entities.ServedNRCellInformation.nr_mode:type_name -> entities.Nr.Mode + 11, // 7: entities.ServedNRCellInformation.choice_nr_mode:type_name -> entities.ServedNRCellInformation.ChoiceNRMode + 21, // 8: entities.ServedNRCellInformation.additional_cell_information:type_name -> entities.AdditionalCellInformation + 14, // 9: entities.NrFrequencyInfo.sulInformation:type_name -> entities.NrFrequencyInfo.SulInformation + 8, // 10: entities.NrFrequencyInfo.frequency_bands:type_name -> entities.FrequencyBandItem + 0, // 11: entities.NrTransmissionBandwidth.nrscs:type_name -> entities.Nrscs + 1, // 12: entities.NrTransmissionBandwidth.ncnrb:type_name -> entities.Ncnrb + 2, // 13: entities.NrNeighbourInformation.nr_mode:type_name -> entities.Nr.Mode + 15, // 14: entities.NrNeighbourInformation.choice_nr_mode:type_name -> entities.NrNeighbourInformation.ChoiceNRMode + 12, // 15: entities.ServedNRCellInformation.ChoiceNRMode.fdd:type_name -> entities.ServedNRCellInformation.ChoiceNRMode.FddInfo + 13, // 16: entities.ServedNRCellInformation.ChoiceNRMode.tdd:type_name -> entities.ServedNRCellInformation.ChoiceNRMode.TddInfo + 7, // 17: entities.ServedNRCellInformation.ChoiceNRMode.FddInfo.ul_freq_info:type_name -> entities.NrFrequencyInfo + 7, // 18: entities.ServedNRCellInformation.ChoiceNRMode.FddInfo.dl_freq_info:type_name -> entities.NrFrequencyInfo + 9, // 19: entities.ServedNRCellInformation.ChoiceNRMode.FddInfo.ul_transmission_bandwidth:type_name -> entities.NrTransmissionBandwidth + 9, // 20: entities.ServedNRCellInformation.ChoiceNRMode.FddInfo.dl_transmission_bandwidth:type_name -> entities.NrTransmissionBandwidth + 7, // 21: entities.ServedNRCellInformation.ChoiceNRMode.TddInfo.nr_freq_info:type_name -> entities.NrFrequencyInfo + 9, // 22: entities.ServedNRCellInformation.ChoiceNRMode.TddInfo.transmission_bandwidth:type_name -> entities.NrTransmissionBandwidth + 9, // 23: entities.NrFrequencyInfo.SulInformation.sul_transmission_bandwidth:type_name -> entities.NrTransmissionBandwidth + 16, // 24: entities.NrNeighbourInformation.ChoiceNRMode.fdd:type_name -> entities.NrNeighbourInformation.ChoiceNRMode.FddInfo + 17, // 25: entities.NrNeighbourInformation.ChoiceNRMode.tdd:type_name -> entities.NrNeighbourInformation.ChoiceNRMode.TddInfo + 7, // 26: entities.NrNeighbourInformation.ChoiceNRMode.FddInfo.ular_fcn_freq_info:type_name -> entities.NrFrequencyInfo + 7, // 27: entities.NrNeighbourInformation.ChoiceNRMode.FddInfo.dlar_fcn_freq_info:type_name -> entities.NrFrequencyInfo + 7, // 28: entities.NrNeighbourInformation.ChoiceNRMode.TddInfo.ar_fcn_nr_freq_info:type_name -> entities.NrFrequencyInfo + 29, // [29:29] is the sub-list for method output_type + 29, // [29:29] is the sub-list for method input_type + 29, // [29:29] is the sub-list for extension type_name + 29, // [29:29] is the sub-list for extension extendee + 0, // [0:29] is the sub-list for field type_name } func init() { file_gnb_proto_init() } @@ -1530,7 +1494,9 @@ func file_gnb_proto_init() { return } file_ran_function_proto_init() + file_e2node_component_config_proto_init() file_additional_cell_information_proto_init() + file_nb_types_proto_init() if !protoimpl.UnsafeEnabled { file_gnb_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Gnb); i { @@ -1718,7 +1684,7 @@ func file_gnb_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_gnb_proto_rawDesc, - NumEnums: 4, + NumEnums: 3, NumMessages: 15, NumExtensions: 0, NumServices: 0, diff --git a/entities/gnb.proto b/entities/gnb.proto index 5f174f9..03aa702 100644 --- a/entities/gnb.proto +++ b/entities/gnb.proto @@ -24,13 +24,16 @@ syntax = "proto3"; package entities; import "ran_function.proto"; +import "e2node_component_config.proto"; import "additional_cell_information.proto"; +import "nb_types.proto"; message Gnb{ repeated ServedNRCell served_nr_cells = 1; repeated RanFunction ran_functions = 2; GnbType gnb_type = 3; + repeated E2nodeComponentConfig node_configs = 4; } message ServedNRCell{ @@ -150,10 +153,4 @@ message NrNeighbourInformation{ ChoiceNRMode choice_nr_mode = 4; string stac5g = 5; string configured_stac = 6; -} - -enum GnbType{ - UNKNOWN_GNB_TYPE = 0; - GNB = 1; - EN_GNB = 2; } \ No newline at end of file diff --git a/entities/nb_identity.pb.go b/entities/nb_identity.pb.go index 49d7737..5dd19dc 100644 --- a/entities/nb_identity.pb.go +++ b/entities/nb_identity.pb.go @@ -20,7 +20,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.25.0-devel +// protoc-gen-go v1.25.0 // protoc v3.6.1 // source: nb_identity.proto diff --git a/entities/nb_types.pb.go b/entities/nb_types.pb.go new file mode 100644 index 0000000..9d3dd2b --- /dev/null +++ b/entities/nb_types.pb.go @@ -0,0 +1,231 @@ +// +// Copyright 2019 AT&T Intellectual Property +// Copyright 2019 Nokia +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// +// This source code is part of the near-RT RIC (RAN Intelligent Controller) +// platform project (RICP). + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.25.0 +// protoc v3.6.1 +// source: nb_types.proto + +package entities + +import ( + proto "github.com/golang/protobuf/proto" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// This is a compile-time assertion that a sufficiently up-to-date version +// of the legacy proto package is being used. +const _ = proto.ProtoPackageIsVersion4 + +type EnbType int32 + +const ( + EnbType_UNKNOWN_ENB_TYPE EnbType = 0 + EnbType_MACRO_ENB EnbType = 1 + EnbType_HOME_ENB EnbType = 2 + EnbType_SHORT_MACRO_ENB EnbType = 3 + EnbType_LONG_MACRO_ENB EnbType = 4 + EnbType_MACRO_NG_ENB EnbType = 5 + EnbType_SHORT_MACRO_NG_ENB EnbType = 6 + EnbType_LONG_MACRO_NG_ENB EnbType = 7 +) + +// Enum value maps for EnbType. +var ( + EnbType_name = map[int32]string{ + 0: "UNKNOWN_ENB_TYPE", + 1: "MACRO_ENB", + 2: "HOME_ENB", + 3: "SHORT_MACRO_ENB", + 4: "LONG_MACRO_ENB", + 5: "MACRO_NG_ENB", + 6: "SHORT_MACRO_NG_ENB", + 7: "LONG_MACRO_NG_ENB", + } + EnbType_value = map[string]int32{ + "UNKNOWN_ENB_TYPE": 0, + "MACRO_ENB": 1, + "HOME_ENB": 2, + "SHORT_MACRO_ENB": 3, + "LONG_MACRO_ENB": 4, + "MACRO_NG_ENB": 5, + "SHORT_MACRO_NG_ENB": 6, + "LONG_MACRO_NG_ENB": 7, + } +) + +func (x EnbType) Enum() *EnbType { + p := new(EnbType) + *p = x + return p +} + +func (x EnbType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (EnbType) Descriptor() protoreflect.EnumDescriptor { + return file_nb_types_proto_enumTypes[0].Descriptor() +} + +func (EnbType) Type() protoreflect.EnumType { + return &file_nb_types_proto_enumTypes[0] +} + +func (x EnbType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use EnbType.Descriptor instead. +func (EnbType) EnumDescriptor() ([]byte, []int) { + return file_nb_types_proto_rawDescGZIP(), []int{0} +} + +type GnbType int32 + +const ( + GnbType_UNKNOWN_GNB_TYPE GnbType = 0 + GnbType_GNB GnbType = 1 + GnbType_EN_GNB GnbType = 2 +) + +// Enum value maps for GnbType. +var ( + GnbType_name = map[int32]string{ + 0: "UNKNOWN_GNB_TYPE", + 1: "GNB", + 2: "EN_GNB", + } + GnbType_value = map[string]int32{ + "UNKNOWN_GNB_TYPE": 0, + "GNB": 1, + "EN_GNB": 2, + } +) + +func (x GnbType) Enum() *GnbType { + p := new(GnbType) + *p = x + return p +} + +func (x GnbType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (GnbType) Descriptor() protoreflect.EnumDescriptor { + return file_nb_types_proto_enumTypes[1].Descriptor() +} + +func (GnbType) Type() protoreflect.EnumType { + return &file_nb_types_proto_enumTypes[1] +} + +func (x GnbType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use GnbType.Descriptor instead. +func (GnbType) EnumDescriptor() ([]byte, []int) { + return file_nb_types_proto_rawDescGZIP(), []int{1} +} + +var File_nb_types_proto protoreflect.FileDescriptor + +var file_nb_types_proto_rawDesc = []byte{ + 0x0a, 0x0e, 0x6e, 0x62, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x12, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2a, 0xa6, 0x01, 0x0a, 0x07, 0x45, + 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, + 0x4e, 0x5f, 0x45, 0x4e, 0x42, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, + 0x4d, 0x41, 0x43, 0x52, 0x4f, 0x5f, 0x45, 0x4e, 0x42, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x48, + 0x4f, 0x4d, 0x45, 0x5f, 0x45, 0x4e, 0x42, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x53, 0x48, 0x4f, + 0x52, 0x54, 0x5f, 0x4d, 0x41, 0x43, 0x52, 0x4f, 0x5f, 0x45, 0x4e, 0x42, 0x10, 0x03, 0x12, 0x12, + 0x0a, 0x0e, 0x4c, 0x4f, 0x4e, 0x47, 0x5f, 0x4d, 0x41, 0x43, 0x52, 0x4f, 0x5f, 0x45, 0x4e, 0x42, + 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x41, 0x43, 0x52, 0x4f, 0x5f, 0x4e, 0x47, 0x5f, 0x45, + 0x4e, 0x42, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x48, 0x4f, 0x52, 0x54, 0x5f, 0x4d, 0x41, + 0x43, 0x52, 0x4f, 0x5f, 0x4e, 0x47, 0x5f, 0x45, 0x4e, 0x42, 0x10, 0x06, 0x12, 0x15, 0x0a, 0x11, + 0x4c, 0x4f, 0x4e, 0x47, 0x5f, 0x4d, 0x41, 0x43, 0x52, 0x4f, 0x5f, 0x4e, 0x47, 0x5f, 0x45, 0x4e, + 0x42, 0x10, 0x07, 0x2a, 0x34, 0x0a, 0x07, 0x47, 0x6e, 0x62, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, + 0x0a, 0x10, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x47, 0x4e, 0x42, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x47, 0x4e, 0x42, 0x10, 0x01, 0x12, 0x0a, 0x0a, + 0x06, 0x45, 0x4e, 0x5f, 0x47, 0x4e, 0x42, 0x10, 0x02, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, +} + +var ( + file_nb_types_proto_rawDescOnce sync.Once + file_nb_types_proto_rawDescData = file_nb_types_proto_rawDesc +) + +func file_nb_types_proto_rawDescGZIP() []byte { + file_nb_types_proto_rawDescOnce.Do(func() { + file_nb_types_proto_rawDescData = protoimpl.X.CompressGZIP(file_nb_types_proto_rawDescData) + }) + return file_nb_types_proto_rawDescData +} + +var file_nb_types_proto_enumTypes = make([]protoimpl.EnumInfo, 2) +var file_nb_types_proto_goTypes = []interface{}{ + (EnbType)(0), // 0: entities.EnbType + (GnbType)(0), // 1: entities.GnbType +} +var file_nb_types_proto_depIdxs = []int32{ + 0, // [0:0] is the sub-list for method output_type + 0, // [0:0] is the sub-list for method input_type + 0, // [0:0] is the sub-list for extension type_name + 0, // [0:0] is the sub-list for extension extendee + 0, // [0:0] is the sub-list for field type_name +} + +func init() { file_nb_types_proto_init() } +func file_nb_types_proto_init() { + if File_nb_types_proto != nil { + return + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_nb_types_proto_rawDesc, + NumEnums: 2, + NumMessages: 0, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_nb_types_proto_goTypes, + DependencyIndexes: file_nb_types_proto_depIdxs, + EnumInfos: file_nb_types_proto_enumTypes, + }.Build() + File_nb_types_proto = out.File + file_nb_types_proto_rawDesc = nil + file_nb_types_proto_goTypes = nil + file_nb_types_proto_depIdxs = nil +} diff --git a/entities/nb_types.proto b/entities/nb_types.proto new file mode 100644 index 0000000..7414f45 --- /dev/null +++ b/entities/nb_types.proto @@ -0,0 +1,43 @@ +/* + * Copyright 2019 AT&T Intellectual Property + * Copyright 2019 Nokia + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* + * This source code is part of the near-RT RIC (RAN Intelligent Controller) + * platform project (RICP). + */ + + +syntax = "proto3"; +package entities; + +enum EnbType{ + UNKNOWN_ENB_TYPE = 0; + MACRO_ENB = 1; + HOME_ENB = 2; + SHORT_MACRO_ENB = 3; + LONG_MACRO_ENB = 4; + MACRO_NG_ENB = 5; + SHORT_MACRO_NG_ENB = 6; + LONG_MACRO_NG_ENB = 7; +} + +enum GnbType{ + UNKNOWN_GNB_TYPE = 0; + GNB = 1; + EN_GNB = 2; +} + diff --git a/entities/nodeb_info.pb.go b/entities/nodeb_info.pb.go index 501763c..9aadc61 100644 --- a/entities/nodeb_info.pb.go +++ b/entities/nodeb_info.pb.go @@ -20,7 +20,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.25.0-devel +// protoc-gen-go v1.25.0 // protoc v3.6.1 // source: nodeb_info.proto diff --git a/entities/ran_function.pb.go b/entities/ran_function.pb.go index 2330991..6046750 100644 --- a/entities/ran_function.pb.go +++ b/entities/ran_function.pb.go @@ -20,13 +20,14 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.26.0 +// protoc-gen-go v1.25.0 // protoc v3.6.1 // source: ran_function.proto package entities import ( + proto "github.com/golang/protobuf/proto" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" @@ -40,6 +41,10 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) +// This is a compile-time assertion that a sufficiently up-to-date version +// of the legacy proto package is being used. +const _ = proto.ProtoPackageIsVersion4 + type RanFunction struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -128,8 +133,8 @@ var file_ran_function_proto_rawDesc = []byte{ 0x61, 0x6e, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x61, 0x6e, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x61, - 0x6e, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x69, 0x64, 0x42, 0x04, 0x5a, 0x02, - 0x2e, 0x2f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6e, 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x69, 0x64, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/entities/ran_function.proto b/entities/ran_function.proto index 763f4d6..3a4c435 100644 --- a/entities/ran_function.proto +++ b/entities/ran_function.proto @@ -23,7 +23,6 @@ syntax = "proto3"; package entities; -option go_package = "./"; message RanFunction { uint32 ran_function_id = 1; string ran_function_definition = 2; diff --git a/entities/ran_load_information.pb.go b/entities/ran_load_information.pb.go index afbe659..925997e 100644 --- a/entities/ran_load_information.pb.go +++ b/entities/ran_load_information.pb.go @@ -20,7 +20,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.25.0-devel +// protoc-gen-go v1.25.0 // protoc v3.6.1 // source: ran_load_information.proto diff --git a/entities/x2_setup_failure_response.pb.go b/entities/x2_setup_failure_response.pb.go index c240538..b7d30da 100644 --- a/entities/x2_setup_failure_response.pb.go +++ b/entities/x2_setup_failure_response.pb.go @@ -20,7 +20,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.25.0-devel +// protoc-gen-go v1.25.0 // protoc v3.6.1 // source: x2_setup_failure_response.proto