RIC:1060: Change in PTL
[ric-plt/nodeb-rnib.git] / entities / enb.pb.go
index 1e191d9..41fad75 100644 (file)
 // 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).
+//
+// 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.26.0
+//     protoc        v3.15.8
 // source: enb.proto
 
 package entities
 
 import (
-       fmt "fmt"
-       proto "github.com/golang/protobuf/proto"
-       math "math"
+       protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+       protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+       reflect "reflect"
+       sync "sync"
 )
 
-// Reference imports to suppress errors if they are not otherwise used.
-var _ = proto.Marshal
-var _ = fmt.Errorf
-var _ = math.Inf
-
-// This is a compile-time assertion to ensure that this generated file
-// is compatible with the proto package it is being compiled against.
-// A compilation error at this line likely means your copy of the
-// proto package needs to be updated.
-const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
+const (
+       // Verify that this generated code is sufficiently up-to-date.
+       _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+       // Verify that runtime/protoimpl is sufficiently up-to-date.
+       _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
 
 type FreqBandIndicatorPriority int32
 
@@ -47,24 +48,45 @@ const (
        FreqBandIndicatorPriority_BROADCASTED                          FreqBandIndicatorPriority = 2
 )
 
-var FreqBandIndicatorPriority_name = map[int32]string{
-       0: "UNKNOWN_FREQ_BAND_INDICATOR_PRIORITY",
-       1: "NOT_BROADCASTED",
-       2: "BROADCASTED",
-}
+// Enum value maps for FreqBandIndicatorPriority.
+var (
+       FreqBandIndicatorPriority_name = map[int32]string{
+               0: "UNKNOWN_FREQ_BAND_INDICATOR_PRIORITY",
+               1: "NOT_BROADCASTED",
+               2: "BROADCASTED",
+       }
+       FreqBandIndicatorPriority_value = map[string]int32{
+               "UNKNOWN_FREQ_BAND_INDICATOR_PRIORITY": 0,
+               "NOT_BROADCASTED":                      1,
+               "BROADCASTED":                          2,
+       }
+)
 
-var FreqBandIndicatorPriority_value = map[string]int32{
-       "UNKNOWN_FREQ_BAND_INDICATOR_PRIORITY": 0,
-       "NOT_BROADCASTED":                      1,
-       "BROADCASTED":                          2,
+func (x FreqBandIndicatorPriority) Enum() *FreqBandIndicatorPriority {
+       p := new(FreqBandIndicatorPriority)
+       *p = x
+       return p
 }
 
 func (x FreqBandIndicatorPriority) String() string {
-       return proto.EnumName(FreqBandIndicatorPriority_name, int32(x))
+       return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (FreqBandIndicatorPriority) Descriptor() protoreflect.EnumDescriptor {
+       return file_enb_proto_enumTypes[0].Descriptor()
+}
+
+func (FreqBandIndicatorPriority) Type() protoreflect.EnumType {
+       return &file_enb_proto_enumTypes[0]
+}
+
+func (x FreqBandIndicatorPriority) Number() protoreflect.EnumNumber {
+       return protoreflect.EnumNumber(x)
 }
 
+// Deprecated: Use FreqBandIndicatorPriority.Descriptor instead.
 func (FreqBandIndicatorPriority) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{0}
+       return file_enb_proto_rawDescGZIP(), []int{0}
 }
 
 type BandwidthReducedSI int32
@@ -74,22 +96,43 @@ const (
        BandwidthReducedSI_SCHEDULED                    BandwidthReducedSI = 1
 )
 
-var BandwidthReducedSI_name = map[int32]string{
-       0: "UNKNOWN_BANDWIDTH_REDUCED_SI",
-       1: "SCHEDULED",
-}
+// Enum value maps for BandwidthReducedSI.
+var (
+       BandwidthReducedSI_name = map[int32]string{
+               0: "UNKNOWN_BANDWIDTH_REDUCED_SI",
+               1: "SCHEDULED",
+       }
+       BandwidthReducedSI_value = map[string]int32{
+               "UNKNOWN_BANDWIDTH_REDUCED_SI": 0,
+               "SCHEDULED":                    1,
+       }
+)
 
-var BandwidthReducedSI_value = map[string]int32{
-       "UNKNOWN_BANDWIDTH_REDUCED_SI": 0,
-       "SCHEDULED":                    1,
+func (x BandwidthReducedSI) Enum() *BandwidthReducedSI {
+       p := new(BandwidthReducedSI)
+       *p = x
+       return p
 }
 
 func (x BandwidthReducedSI) String() string {
-       return proto.EnumName(BandwidthReducedSI_name, int32(x))
+       return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
 }
 
+func (BandwidthReducedSI) Descriptor() protoreflect.EnumDescriptor {
+       return file_enb_proto_enumTypes[1].Descriptor()
+}
+
+func (BandwidthReducedSI) Type() protoreflect.EnumType {
+       return &file_enb_proto_enumTypes[1]
+}
+
+func (x BandwidthReducedSI) Number() protoreflect.EnumNumber {
+       return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use BandwidthReducedSI.Descriptor instead.
 func (BandwidthReducedSI) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{1}
+       return file_enb_proto_rawDescGZIP(), []int{1}
 }
 
 type SubframeAllocationType int32
@@ -100,24 +143,45 @@ const (
        SubframeAllocationType_FOUR_FRAME                       SubframeAllocationType = 2
 )
 
-var SubframeAllocationType_name = map[int32]string{
-       0: "UNKNOWN_SUBFRAME_ALLOCATION_TYPE",
-       1: "ONE_FRAME",
-       2: "FOUR_FRAME",
-}
+// Enum value maps for SubframeAllocationType.
+var (
+       SubframeAllocationType_name = map[int32]string{
+               0: "UNKNOWN_SUBFRAME_ALLOCATION_TYPE",
+               1: "ONE_FRAME",
+               2: "FOUR_FRAME",
+       }
+       SubframeAllocationType_value = map[string]int32{
+               "UNKNOWN_SUBFRAME_ALLOCATION_TYPE": 0,
+               "ONE_FRAME":                        1,
+               "FOUR_FRAME":                       2,
+       }
+)
 
-var SubframeAllocationType_value = map[string]int32{
-       "UNKNOWN_SUBFRAME_ALLOCATION_TYPE": 0,
-       "ONE_FRAME":                        1,
-       "FOUR_FRAME":                       2,
+func (x SubframeAllocationType) Enum() *SubframeAllocationType {
+       p := new(SubframeAllocationType)
+       *p = x
+       return p
 }
 
 func (x SubframeAllocationType) String() string {
-       return proto.EnumName(SubframeAllocationType_name, int32(x))
+       return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (SubframeAllocationType) Descriptor() protoreflect.EnumDescriptor {
+       return file_enb_proto_enumTypes[2].Descriptor()
+}
+
+func (SubframeAllocationType) Type() protoreflect.EnumType {
+       return &file_enb_proto_enumTypes[2]
 }
 
+func (x SubframeAllocationType) Number() protoreflect.EnumNumber {
+       return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use SubframeAllocationType.Descriptor instead.
 func (SubframeAllocationType) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{2}
+       return file_enb_proto_rawDescGZIP(), []int{2}
 }
 
 type RadioframeAllocationPeriod int32
@@ -132,32 +196,53 @@ const (
        RadioframeAllocationPeriod_N32                                  RadioframeAllocationPeriod = 6
 )
 
-var RadioframeAllocationPeriod_name = map[int32]string{
-       0: "UNKNOWN_RADIOFRAME_ALLOCATION_PERIOD",
-       1: "N1",
-       2: "N2",
-       3: "N4",
-       4: "N8",
-       5: "N16",
-       6: "N32",
-}
+// Enum value maps for RadioframeAllocationPeriod.
+var (
+       RadioframeAllocationPeriod_name = map[int32]string{
+               0: "UNKNOWN_RADIOFRAME_ALLOCATION_PERIOD",
+               1: "N1",
+               2: "N2",
+               3: "N4",
+               4: "N8",
+               5: "N16",
+               6: "N32",
+       }
+       RadioframeAllocationPeriod_value = map[string]int32{
+               "UNKNOWN_RADIOFRAME_ALLOCATION_PERIOD": 0,
+               "N1":                                   1,
+               "N2":                                   2,
+               "N4":                                   3,
+               "N8":                                   4,
+               "N16":                                  5,
+               "N32":                                  6,
+       }
+)
 
-var RadioframeAllocationPeriod_value = map[string]int32{
-       "UNKNOWN_RADIOFRAME_ALLOCATION_PERIOD": 0,
-       "N1":                                   1,
-       "N2":                                   2,
-       "N4":                                   3,
-       "N8":                                   4,
-       "N16":                                  5,
-       "N32":                                  6,
+func (x RadioframeAllocationPeriod) Enum() *RadioframeAllocationPeriod {
+       p := new(RadioframeAllocationPeriod)
+       *p = x
+       return p
 }
 
 func (x RadioframeAllocationPeriod) String() string {
-       return proto.EnumName(RadioframeAllocationPeriod_name, int32(x))
+       return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
 }
 
+func (RadioframeAllocationPeriod) Descriptor() protoreflect.EnumDescriptor {
+       return file_enb_proto_enumTypes[3].Descriptor()
+}
+
+func (RadioframeAllocationPeriod) Type() protoreflect.EnumType {
+       return &file_enb_proto_enumTypes[3]
+}
+
+func (x RadioframeAllocationPeriod) Number() protoreflect.EnumNumber {
+       return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use RadioframeAllocationPeriod.Descriptor instead.
 func (RadioframeAllocationPeriod) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{3}
+       return file_enb_proto_rawDescGZIP(), []int{3}
 }
 
 type NumberOfAntennaPorts int32
@@ -169,60 +254,47 @@ const (
        NumberOfAntennaPorts_AN4                             NumberOfAntennaPorts = 3
 )
 
-var NumberOfAntennaPorts_name = map[int32]string{
-       0: "UNKNOWN_NUMBER_OF_ANTENNA_PORTS",
-       1: "AN1",
-       2: "AN2",
-       3: "AN4",
-}
+// Enum value maps for NumberOfAntennaPorts.
+var (
+       NumberOfAntennaPorts_name = map[int32]string{
+               0: "UNKNOWN_NUMBER_OF_ANTENNA_PORTS",
+               1: "AN1",
+               2: "AN2",
+               3: "AN4",
+       }
+       NumberOfAntennaPorts_value = map[string]int32{
+               "UNKNOWN_NUMBER_OF_ANTENNA_PORTS": 0,
+               "AN1":                             1,
+               "AN2":                             2,
+               "AN4":                             3,
+       }
+)
 
-var NumberOfAntennaPorts_value = map[string]int32{
-       "UNKNOWN_NUMBER_OF_ANTENNA_PORTS": 0,
-       "AN1":                             1,
-       "AN2":                             2,
-       "AN4":                             3,
+func (x NumberOfAntennaPorts) Enum() *NumberOfAntennaPorts {
+       p := new(NumberOfAntennaPorts)
+       *p = x
+       return p
 }
 
 func (x NumberOfAntennaPorts) String() string {
-       return proto.EnumName(NumberOfAntennaPorts_name, int32(x))
+       return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
 }
 
-func (NumberOfAntennaPorts) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []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
-)
-
-var EnbType_name = map[int32]string{
-       0: "UNKNOWN_ENB_TYPE",
-       1: "MACRO_ENB",
-       2: "HOME_ENB",
-       3: "SHORT_MACRO_ENB",
-       4: "LONG_MACRO_ENB",
+func (NumberOfAntennaPorts) Descriptor() protoreflect.EnumDescriptor {
+       return file_enb_proto_enumTypes[4].Descriptor()
 }
 
-var EnbType_value = map[string]int32{
-       "UNKNOWN_ENB_TYPE": 0,
-       "MACRO_ENB":        1,
-       "HOME_ENB":         2,
-       "SHORT_MACRO_ENB":  3,
-       "LONG_MACRO_ENB":   4,
+func (NumberOfAntennaPorts) Type() protoreflect.EnumType {
+       return &file_enb_proto_enumTypes[4]
 }
 
-func (x EnbType) String() string {
-       return proto.EnumName(EnbType_name, int32(x))
+func (x NumberOfAntennaPorts) Number() protoreflect.EnumNumber {
+       return protoreflect.EnumNumber(x)
 }
 
-func (EnbType) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{5}
+// Deprecated: Use NumberOfAntennaPorts.Descriptor instead.
+func (NumberOfAntennaPorts) EnumDescriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{4}
 }
 
 type SubframeAssignment int32
@@ -238,34 +310,55 @@ const (
        SubframeAssignment_SA6                         SubframeAssignment = 7
 )
 
-var SubframeAssignment_name = map[int32]string{
-       0: "UNKNOWN_SUBFRAME_ASSIGNMENT",
-       1: "SA0",
-       2: "SA1",
-       3: "SA2",
-       4: "SA3",
-       5: "SA4",
-       6: "SA5",
-       7: "SA6",
-}
+// Enum value maps for SubframeAssignment.
+var (
+       SubframeAssignment_name = map[int32]string{
+               0: "UNKNOWN_SUBFRAME_ASSIGNMENT",
+               1: "SA0",
+               2: "SA1",
+               3: "SA2",
+               4: "SA3",
+               5: "SA4",
+               6: "SA5",
+               7: "SA6",
+       }
+       SubframeAssignment_value = map[string]int32{
+               "UNKNOWN_SUBFRAME_ASSIGNMENT": 0,
+               "SA0":                         1,
+               "SA1":                         2,
+               "SA2":                         3,
+               "SA3":                         4,
+               "SA4":                         5,
+               "SA5":                         6,
+               "SA6":                         7,
+       }
+)
 
-var SubframeAssignment_value = map[string]int32{
-       "UNKNOWN_SUBFRAME_ASSIGNMENT": 0,
-       "SA0":                         1,
-       "SA1":                         2,
-       "SA2":                         3,
-       "SA3":                         4,
-       "SA4":                         5,
-       "SA5":                         6,
-       "SA6":                         7,
+func (x SubframeAssignment) Enum() *SubframeAssignment {
+       p := new(SubframeAssignment)
+       *p = x
+       return p
 }
 
 func (x SubframeAssignment) String() string {
-       return proto.EnumName(SubframeAssignment_name, int32(x))
+       return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (SubframeAssignment) Descriptor() protoreflect.EnumDescriptor {
+       return file_enb_proto_enumTypes[5].Descriptor()
+}
+
+func (SubframeAssignment) Type() protoreflect.EnumType {
+       return &file_enb_proto_enumTypes[5]
+}
+
+func (x SubframeAssignment) Number() protoreflect.EnumNumber {
+       return protoreflect.EnumNumber(x)
 }
 
+// Deprecated: Use SubframeAssignment.Descriptor instead.
 func (SubframeAssignment) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{6}
+       return file_enb_proto_rawDescGZIP(), []int{5}
 }
 
 type CyclicPrefix int32
@@ -276,24 +369,45 @@ const (
        CyclicPrefix_EXTENDED              CyclicPrefix = 2
 )
 
-var CyclicPrefix_name = map[int32]string{
-       0: "UNKNOWN_CYCLIC_PREFIX",
-       1: "NORMAL",
-       2: "EXTENDED",
-}
+// Enum value maps for CyclicPrefix.
+var (
+       CyclicPrefix_name = map[int32]string{
+               0: "UNKNOWN_CYCLIC_PREFIX",
+               1: "NORMAL",
+               2: "EXTENDED",
+       }
+       CyclicPrefix_value = map[string]int32{
+               "UNKNOWN_CYCLIC_PREFIX": 0,
+               "NORMAL":                1,
+               "EXTENDED":              2,
+       }
+)
 
-var CyclicPrefix_value = map[string]int32{
-       "UNKNOWN_CYCLIC_PREFIX": 0,
-       "NORMAL":                1,
-       "EXTENDED":              2,
+func (x CyclicPrefix) Enum() *CyclicPrefix {
+       p := new(CyclicPrefix)
+       *p = x
+       return p
 }
 
 func (x CyclicPrefix) String() string {
-       return proto.EnumName(CyclicPrefix_name, int32(x))
+       return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (CyclicPrefix) Descriptor() protoreflect.EnumDescriptor {
+       return file_enb_proto_enumTypes[6].Descriptor()
 }
 
+func (CyclicPrefix) Type() protoreflect.EnumType {
+       return &file_enb_proto_enumTypes[6]
+}
+
+func (x CyclicPrefix) Number() protoreflect.EnumNumber {
+       return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use CyclicPrefix.Descriptor instead.
 func (CyclicPrefix) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{7}
+       return file_enb_proto_rawDescGZIP(), []int{6}
 }
 
 type TransmissionBandwidth int32
@@ -309,34 +423,55 @@ const (
        TransmissionBandwidth_BW1                            TransmissionBandwidth = 7
 )
 
-var TransmissionBandwidth_name = map[int32]string{
-       0: "UNKNOWN_TRANSMISSION_BANDWIDTH",
-       1: "BW6",
-       2: "BW15",
-       3: "BW25",
-       4: "BW50",
-       5: "BW75",
-       6: "BW100",
-       7: "BW1",
-}
+// Enum value maps for TransmissionBandwidth.
+var (
+       TransmissionBandwidth_name = map[int32]string{
+               0: "UNKNOWN_TRANSMISSION_BANDWIDTH",
+               1: "BW6",
+               2: "BW15",
+               3: "BW25",
+               4: "BW50",
+               5: "BW75",
+               6: "BW100",
+               7: "BW1",
+       }
+       TransmissionBandwidth_value = map[string]int32{
+               "UNKNOWN_TRANSMISSION_BANDWIDTH": 0,
+               "BW6":                            1,
+               "BW15":                           2,
+               "BW25":                           3,
+               "BW50":                           4,
+               "BW75":                           5,
+               "BW100":                          6,
+               "BW1":                            7,
+       }
+)
 
-var TransmissionBandwidth_value = map[string]int32{
-       "UNKNOWN_TRANSMISSION_BANDWIDTH": 0,
-       "BW6":                            1,
-       "BW15":                           2,
-       "BW25":                           3,
-       "BW50":                           4,
-       "BW75":                           5,
-       "BW100":                          6,
-       "BW1":                            7,
+func (x TransmissionBandwidth) Enum() *TransmissionBandwidth {
+       p := new(TransmissionBandwidth)
+       *p = x
+       return p
 }
 
 func (x TransmissionBandwidth) String() string {
-       return proto.EnumName(TransmissionBandwidth_name, int32(x))
+       return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (TransmissionBandwidth) Descriptor() protoreflect.EnumDescriptor {
+       return file_enb_proto_enumTypes[7].Descriptor()
+}
+
+func (TransmissionBandwidth) Type() protoreflect.EnumType {
+       return &file_enb_proto_enumTypes[7]
+}
+
+func (x TransmissionBandwidth) Number() protoreflect.EnumNumber {
+       return protoreflect.EnumNumber(x)
 }
 
+// Deprecated: Use TransmissionBandwidth.Descriptor instead.
 func (TransmissionBandwidth) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{8}
+       return file_enb_proto_rawDescGZIP(), []int{7}
 }
 
 type Eutra_Mode int32
@@ -347,24 +482,45 @@ const (
        Eutra_TDD     Eutra_Mode = 2
 )
 
-var Eutra_Mode_name = map[int32]string{
-       0: "UNKNOWN",
-       1: "FDD",
-       2: "TDD",
-}
+// Enum value maps for Eutra_Mode.
+var (
+       Eutra_Mode_name = map[int32]string{
+               0: "UNKNOWN",
+               1: "FDD",
+               2: "TDD",
+       }
+       Eutra_Mode_value = map[string]int32{
+               "UNKNOWN": 0,
+               "FDD":     1,
+               "TDD":     2,
+       }
+)
 
-var Eutra_Mode_value = map[string]int32{
-       "UNKNOWN": 0,
-       "FDD":     1,
-       "TDD":     2,
+func (x Eutra_Mode) Enum() *Eutra_Mode {
+       p := new(Eutra_Mode)
+       *p = x
+       return p
 }
 
 func (x Eutra_Mode) String() string {
-       return proto.EnumName(Eutra_Mode_name, int32(x))
+       return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
 }
 
+func (Eutra_Mode) Descriptor() protoreflect.EnumDescriptor {
+       return file_enb_proto_enumTypes[8].Descriptor()
+}
+
+func (Eutra_Mode) Type() protoreflect.EnumType {
+       return &file_enb_proto_enumTypes[8]
+}
+
+func (x Eutra_Mode) Number() protoreflect.EnumNumber {
+       return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Eutra_Mode.Descriptor instead.
 func (Eutra_Mode) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{3, 0}
+       return file_enb_proto_rawDescGZIP(), []int{3, 0}
 }
 
 type SpecialSubframe_Patterns int32
@@ -382,38 +538,59 @@ const (
        SpecialSubframe_SSP8    SpecialSubframe_Patterns = 9
 )
 
-var SpecialSubframe_Patterns_name = map[int32]string{
-       0: "UNKNOWN",
-       1: "SSP0",
-       2: "SSP1",
-       3: "SSP2",
-       4: "SSP3",
-       5: "SSP4",
-       6: "SSP5",
-       7: "SSP6",
-       8: "SSP7",
-       9: "SSP8",
-}
-
-var SpecialSubframe_Patterns_value = map[string]int32{
-       "UNKNOWN": 0,
-       "SSP0":    1,
-       "SSP1":    2,
-       "SSP2":    3,
-       "SSP3":    4,
-       "SSP4":    5,
-       "SSP5":    6,
-       "SSP6":    7,
-       "SSP7":    8,
-       "SSP8":    9,
+// Enum value maps for SpecialSubframe_Patterns.
+var (
+       SpecialSubframe_Patterns_name = map[int32]string{
+               0: "UNKNOWN",
+               1: "SSP0",
+               2: "SSP1",
+               3: "SSP2",
+               4: "SSP3",
+               5: "SSP4",
+               6: "SSP5",
+               7: "SSP6",
+               8: "SSP7",
+               9: "SSP8",
+       }
+       SpecialSubframe_Patterns_value = map[string]int32{
+               "UNKNOWN": 0,
+               "SSP0":    1,
+               "SSP1":    2,
+               "SSP2":    3,
+               "SSP3":    4,
+               "SSP4":    5,
+               "SSP5":    6,
+               "SSP6":    7,
+               "SSP7":    8,
+               "SSP8":    9,
+       }
+)
+
+func (x SpecialSubframe_Patterns) Enum() *SpecialSubframe_Patterns {
+       p := new(SpecialSubframe_Patterns)
+       *p = x
+       return p
 }
 
 func (x SpecialSubframe_Patterns) String() string {
-       return proto.EnumName(SpecialSubframe_Patterns_name, int32(x))
+       return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (SpecialSubframe_Patterns) Descriptor() protoreflect.EnumDescriptor {
+       return file_enb_proto_enumTypes[9].Descriptor()
+}
+
+func (SpecialSubframe_Patterns) Type() protoreflect.EnumType {
+       return &file_enb_proto_enumTypes[9]
 }
 
+func (x SpecialSubframe_Patterns) Number() protoreflect.EnumNumber {
+       return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use SpecialSubframe_Patterns.Descriptor instead.
 func (SpecialSubframe_Patterns) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{12, 0}
+       return file_enb_proto_rawDescGZIP(), []int{12, 0}
 }
 
 type AdditionalSpecialSubframe_Patterns int32
@@ -432,40 +609,61 @@ const (
        AdditionalSpecialSubframe_SSP9    AdditionalSpecialSubframe_Patterns = 10
 )
 
-var AdditionalSpecialSubframe_Patterns_name = map[int32]string{
-       0:  "UNKNOWN",
-       1:  "SSP0",
-       2:  "SSP1",
-       3:  "SSP2",
-       4:  "SSP3",
-       5:  "SSP4",
-       6:  "SSP5",
-       7:  "SSP6",
-       8:  "SSP7",
-       9:  "SSP8",
-       10: "SSP9",
-}
-
-var AdditionalSpecialSubframe_Patterns_value = map[string]int32{
-       "UNKNOWN": 0,
-       "SSP0":    1,
-       "SSP1":    2,
-       "SSP2":    3,
-       "SSP3":    4,
-       "SSP4":    5,
-       "SSP5":    6,
-       "SSP6":    7,
-       "SSP7":    8,
-       "SSP8":    9,
-       "SSP9":    10,
+// Enum value maps for AdditionalSpecialSubframe_Patterns.
+var (
+       AdditionalSpecialSubframe_Patterns_name = map[int32]string{
+               0:  "UNKNOWN",
+               1:  "SSP0",
+               2:  "SSP1",
+               3:  "SSP2",
+               4:  "SSP3",
+               5:  "SSP4",
+               6:  "SSP5",
+               7:  "SSP6",
+               8:  "SSP7",
+               9:  "SSP8",
+               10: "SSP9",
+       }
+       AdditionalSpecialSubframe_Patterns_value = map[string]int32{
+               "UNKNOWN": 0,
+               "SSP0":    1,
+               "SSP1":    2,
+               "SSP2":    3,
+               "SSP3":    4,
+               "SSP4":    5,
+               "SSP5":    6,
+               "SSP6":    7,
+               "SSP7":    8,
+               "SSP8":    9,
+               "SSP9":    10,
+       }
+)
+
+func (x AdditionalSpecialSubframe_Patterns) Enum() *AdditionalSpecialSubframe_Patterns {
+       p := new(AdditionalSpecialSubframe_Patterns)
+       *p = x
+       return p
 }
 
 func (x AdditionalSpecialSubframe_Patterns) String() string {
-       return proto.EnumName(AdditionalSpecialSubframe_Patterns_name, int32(x))
+       return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
 }
 
+func (AdditionalSpecialSubframe_Patterns) Descriptor() protoreflect.EnumDescriptor {
+       return file_enb_proto_enumTypes[10].Descriptor()
+}
+
+func (AdditionalSpecialSubframe_Patterns) Type() protoreflect.EnumType {
+       return &file_enb_proto_enumTypes[10]
+}
+
+func (x AdditionalSpecialSubframe_Patterns) Number() protoreflect.EnumNumber {
+       return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use AdditionalSpecialSubframe_Patterns.Descriptor instead.
 func (AdditionalSpecialSubframe_Patterns) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{13, 0}
+       return file_enb_proto_rawDescGZIP(), []int{13, 0}
 }
 
 type AdditionalSpecialSubframePatterns_Extension int32
@@ -475,1057 +673,1674 @@ const (
        AdditionalSpecialSubframePatterns_SSP10   AdditionalSpecialSubframePatterns_Extension = 1
 )
 
-var AdditionalSpecialSubframePatterns_Extension_name = map[int32]string{
-       0: "UNKNOWN",
-       1: "SSP10",
-}
+// Enum value maps for AdditionalSpecialSubframePatterns_Extension.
+var (
+       AdditionalSpecialSubframePatterns_Extension_name = map[int32]string{
+               0: "UNKNOWN",
+               1: "SSP10",
+       }
+       AdditionalSpecialSubframePatterns_Extension_value = map[string]int32{
+               "UNKNOWN": 0,
+               "SSP10":   1,
+       }
+)
 
-var AdditionalSpecialSubframePatterns_Extension_value = map[string]int32{
-       "UNKNOWN": 0,
-       "SSP10":   1,
+func (x AdditionalSpecialSubframePatterns_Extension) Enum() *AdditionalSpecialSubframePatterns_Extension {
+       p := new(AdditionalSpecialSubframePatterns_Extension)
+       *p = x
+       return p
 }
 
 func (x AdditionalSpecialSubframePatterns_Extension) String() string {
-       return proto.EnumName(AdditionalSpecialSubframePatterns_Extension_name, int32(x))
+       return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
 }
 
-func (AdditionalSpecialSubframePatterns_Extension) EnumDescriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{14, 0}
+func (AdditionalSpecialSubframePatterns_Extension) Descriptor() protoreflect.EnumDescriptor {
+       return file_enb_proto_enumTypes[11].Descriptor()
 }
 
-type Enb struct {
-       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"`
-       XXX_NoUnkeyedLiteral struct{}          `json:"-"`
-       XXX_unrecognized     []byte            `json:"-"`
-       XXX_sizecache        int32             `json:"-"`
+func (AdditionalSpecialSubframePatterns_Extension) Type() protoreflect.EnumType {
+       return &file_enb_proto_enumTypes[11]
 }
 
-func (m *Enb) Reset()         { *m = Enb{} }
-func (m *Enb) String() string { return proto.CompactTextString(m) }
-func (*Enb) ProtoMessage()    {}
-func (*Enb) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{0}
+func (x AdditionalSpecialSubframePatterns_Extension) Number() protoreflect.EnumNumber {
+       return protoreflect.EnumNumber(x)
 }
 
-func (m *Enb) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_Enb.Unmarshal(m, b)
-}
-func (m *Enb) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_Enb.Marshal(b, m, deterministic)
+// Deprecated: Use AdditionalSpecialSubframePatterns_Extension.Descriptor instead.
+func (AdditionalSpecialSubframePatterns_Extension) EnumDescriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{14, 0}
 }
-func (m *Enb) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_Enb.Merge(m, src)
+
+type Enb struct {
+       state         protoimpl.MessageState
+       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"`
+       NodeConfigs []*E2NodeComponentConfig `protobuf:"bytes,4,rep,name=node_configs,json=nodeConfigs,proto3" json:"node_configs,omitempty"`
+}
+
+func (x *Enb) Reset() {
+       *x = Enb{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[0]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
-func (m *Enb) XXX_Size() int {
-       return xxx_messageInfo_Enb.Size(m)
+
+func (x *Enb) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
-func (m *Enb) XXX_DiscardUnknown() {
-       xxx_messageInfo_Enb.DiscardUnknown(m)
+
+func (*Enb) ProtoMessage() {}
+
+func (x *Enb) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_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)
 }
 
-var xxx_messageInfo_Enb proto.InternalMessageInfo
+// Deprecated: Use Enb.ProtoReflect.Descriptor instead.
+func (*Enb) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{0}
+}
 
-func (m *Enb) GetEnbType() EnbType {
-       if m != nil {
-               return m.EnbType
+func (x *Enb) GetEnbType() EnbType {
+       if x != nil {
+               return x.EnbType
        }
        return EnbType_UNKNOWN_ENB_TYPE
 }
 
-func (m *Enb) GetServedCells() []*ServedCellInfo {
-       if m != nil {
-               return m.ServedCells
+func (x *Enb) GetServedCells() []*ServedCellInfo {
+       if x != nil {
+               return x.ServedCells
        }
        return nil
 }
 
-func (m *Enb) GetGuGroupIds() []string {
-       if m != nil {
-               return m.GuGroupIds
+func (x *Enb) GetGuGroupIds() []string {
+       if x != nil {
+               return x.GuGroupIds
        }
        return nil
 }
 
-type ServedCellInfo struct {
-       Pci                       uint32                    `protobuf:"varint,1,opt,name=pci,proto3" json:"pci,omitempty"`
-       CellId                    string                    `protobuf:"bytes,2,opt,name=cell_id,json=cellId,proto3" json:"cell_id,omitempty"`
-       Tac                       string                    `protobuf:"bytes,3,opt,name=tac,proto3" json:"tac,omitempty"`
-       BroadcastPlmns            []string                  `protobuf:"bytes,4,rep,name=broadcast_plmns,json=broadcastPlmns,proto3" json:"broadcast_plmns,omitempty"`
-       ChoiceEutraMode           *ChoiceEUTRAMode          `protobuf:"bytes,5,opt,name=choice_eutra_mode,json=choiceEutraMode,proto3" json:"choice_eutra_mode,omitempty"`
-       EutraMode                 Eutra_Mode                `protobuf:"varint,6,opt,name=eutra_mode,json=eutraMode,proto3,enum=entities.Eutra_Mode" json:"eutra_mode,omitempty"`
-       NumberOfAntennaPorts      NumberOfAntennaPorts      `protobuf:"varint,7,opt,name=number_of_antenna_ports,json=numberOfAntennaPorts,proto3,enum=entities.NumberOfAntennaPorts" json:"number_of_antenna_ports,omitempty"`
-       PrachConfiguration        *PrachConfiguration       `protobuf:"bytes,8,opt,name=prach_configuration,json=prachConfiguration,proto3" json:"prach_configuration,omitempty"`
-       MbsfnSubframeInfos        []*MbsfnSubframe          `protobuf:"bytes,9,rep,name=mbsfn_subframe_infos,json=mbsfnSubframeInfos,proto3" json:"mbsfn_subframe_infos,omitempty"`
-       CsgId                     string                    `protobuf:"bytes,10,opt,name=csg_id,json=csgId,proto3" json:"csg_id,omitempty"`
-       MbmsServiceAreaIdentities []string                  `protobuf:"bytes,11,rep,name=mbms_service_area_identities,json=mbmsServiceAreaIdentities,proto3" json:"mbms_service_area_identities,omitempty"`
-       MultibandInfos            []uint32                  `protobuf:"varint,12,rep,packed,name=multiband_infos,json=multibandInfos,proto3" json:"multiband_infos,omitempty"`
-       FreqBandIndicatorPriority FreqBandIndicatorPriority `protobuf:"varint,13,opt,name=freq_band_indicator_priority,json=freqBandIndicatorPriority,proto3,enum=entities.FreqBandIndicatorPriority" json:"freq_band_indicator_priority,omitempty"`
-       BandwidthReducedSi        BandwidthReducedSI        `protobuf:"varint,14,opt,name=bandwidth_reduced_si,json=bandwidthReducedSi,proto3,enum=entities.BandwidthReducedSI" json:"bandwidth_reduced_si,omitempty"`
-       NeighbourInfos            []*NeighbourInformation   `protobuf:"bytes,15,rep,name=neighbour_infos,json=neighbourInfos,proto3" json:"neighbour_infos,omitempty"`
-       XXX_NoUnkeyedLiteral      struct{}                  `json:"-"`
-       XXX_unrecognized          []byte                    `json:"-"`
-       XXX_sizecache             int32                     `json:"-"`
-}
-
-func (m *ServedCellInfo) Reset()         { *m = ServedCellInfo{} }
-func (m *ServedCellInfo) String() string { return proto.CompactTextString(m) }
-func (*ServedCellInfo) ProtoMessage()    {}
-func (*ServedCellInfo) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{1}
+func (x *Enb) GetNodeConfigs() []*E2NodeComponentConfig {
+       if x != nil {
+               return x.NodeConfigs
+       }
+       return nil
 }
 
-func (m *ServedCellInfo) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_ServedCellInfo.Unmarshal(m, b)
-}
-func (m *ServedCellInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_ServedCellInfo.Marshal(b, m, deterministic)
-}
-func (m *ServedCellInfo) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_ServedCellInfo.Merge(m, src)
+type ServedCellInfo struct {
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
+
+       Pci                       uint32                     `protobuf:"varint,1,opt,name=pci,proto3" json:"pci,omitempty"`
+       CellId                    string                     `protobuf:"bytes,2,opt,name=cell_id,json=cellId,proto3" json:"cell_id,omitempty"`
+       Tac                       string                     `protobuf:"bytes,3,opt,name=tac,proto3" json:"tac,omitempty"`
+       BroadcastPlmns            []string                   `protobuf:"bytes,4,rep,name=broadcast_plmns,json=broadcastPlmns,proto3" json:"broadcast_plmns,omitempty"`
+       ChoiceEutraMode           *ChoiceEUTRAMode           `protobuf:"bytes,5,opt,name=choice_eutra_mode,json=choiceEutraMode,proto3" json:"choice_eutra_mode,omitempty"`
+       EutraMode                 Eutra_Mode                 `protobuf:"varint,6,opt,name=eutra_mode,json=eutraMode,proto3,enum=entities.Eutra_Mode" json:"eutra_mode,omitempty"`
+       NumberOfAntennaPorts      NumberOfAntennaPorts       `protobuf:"varint,7,opt,name=number_of_antenna_ports,json=numberOfAntennaPorts,proto3,enum=entities.NumberOfAntennaPorts" json:"number_of_antenna_ports,omitempty"`
+       PrachConfiguration        *PrachConfiguration        `protobuf:"bytes,8,opt,name=prach_configuration,json=prachConfiguration,proto3" json:"prach_configuration,omitempty"`
+       MbsfnSubframeInfos        []*MbsfnSubframe           `protobuf:"bytes,9,rep,name=mbsfn_subframe_infos,json=mbsfnSubframeInfos,proto3" json:"mbsfn_subframe_infos,omitempty"`
+       CsgId                     string                     `protobuf:"bytes,10,opt,name=csg_id,json=csgId,proto3" json:"csg_id,omitempty"`
+       MbmsServiceAreaIdentities []string                   `protobuf:"bytes,11,rep,name=mbms_service_area_identities,json=mbmsServiceAreaIdentities,proto3" json:"mbms_service_area_identities,omitempty"`
+       MultibandInfos            []uint32                   `protobuf:"varint,12,rep,packed,name=multiband_infos,json=multibandInfos,proto3" json:"multiband_infos,omitempty"`
+       FreqBandIndicatorPriority FreqBandIndicatorPriority  `protobuf:"varint,13,opt,name=freq_band_indicator_priority,json=freqBandIndicatorPriority,proto3,enum=entities.FreqBandIndicatorPriority" json:"freq_band_indicator_priority,omitempty"`
+       BandwidthReducedSi        BandwidthReducedSI         `protobuf:"varint,14,opt,name=bandwidth_reduced_si,json=bandwidthReducedSi,proto3,enum=entities.BandwidthReducedSI" json:"bandwidth_reduced_si,omitempty"`
+       NeighbourInfos            []*NeighbourInformation    `protobuf:"bytes,15,rep,name=neighbour_infos,json=neighbourInfos,proto3" json:"neighbour_infos,omitempty"`
+       AdditionalCellInformation *AdditionalCellInformation `protobuf:"bytes,16,opt,name=additional_cell_information,json=additionalCellInformation,proto3" json:"additional_cell_information,omitempty"`
+}
+
+func (x *ServedCellInfo) Reset() {
+       *x = ServedCellInfo{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[1]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
-func (m *ServedCellInfo) XXX_Size() int {
-       return xxx_messageInfo_ServedCellInfo.Size(m)
+
+func (x *ServedCellInfo) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
-func (m *ServedCellInfo) XXX_DiscardUnknown() {
-       xxx_messageInfo_ServedCellInfo.DiscardUnknown(m)
+
+func (*ServedCellInfo) ProtoMessage() {}
+
+func (x *ServedCellInfo) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_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)
 }
 
-var xxx_messageInfo_ServedCellInfo proto.InternalMessageInfo
+// Deprecated: Use ServedCellInfo.ProtoReflect.Descriptor instead.
+func (*ServedCellInfo) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{1}
+}
 
-func (m *ServedCellInfo) GetPci() uint32 {
-       if m != nil {
-               return m.Pci
+func (x *ServedCellInfo) GetPci() uint32 {
+       if x != nil {
+               return x.Pci
        }
        return 0
 }
 
-func (m *ServedCellInfo) GetCellId() string {
-       if m != nil {
-               return m.CellId
+func (x *ServedCellInfo) GetCellId() string {
+       if x != nil {
+               return x.CellId
        }
        return ""
 }
 
-func (m *ServedCellInfo) GetTac() string {
-       if m != nil {
-               return m.Tac
+func (x *ServedCellInfo) GetTac() string {
+       if x != nil {
+               return x.Tac
        }
        return ""
 }
 
-func (m *ServedCellInfo) GetBroadcastPlmns() []string {
-       if m != nil {
-               return m.BroadcastPlmns
+func (x *ServedCellInfo) GetBroadcastPlmns() []string {
+       if x != nil {
+               return x.BroadcastPlmns
        }
        return nil
 }
 
-func (m *ServedCellInfo) GetChoiceEutraMode() *ChoiceEUTRAMode {
-       if m != nil {
-               return m.ChoiceEutraMode
+func (x *ServedCellInfo) GetChoiceEutraMode() *ChoiceEUTRAMode {
+       if x != nil {
+               return x.ChoiceEutraMode
        }
        return nil
 }
 
-func (m *ServedCellInfo) GetEutraMode() Eutra_Mode {
-       if m != nil {
-               return m.EutraMode
+func (x *ServedCellInfo) GetEutraMode() Eutra_Mode {
+       if x != nil {
+               return x.EutraMode
        }
        return Eutra_UNKNOWN
 }
 
-func (m *ServedCellInfo) GetNumberOfAntennaPorts() NumberOfAntennaPorts {
-       if m != nil {
-               return m.NumberOfAntennaPorts
+func (x *ServedCellInfo) GetNumberOfAntennaPorts() NumberOfAntennaPorts {
+       if x != nil {
+               return x.NumberOfAntennaPorts
        }
        return NumberOfAntennaPorts_UNKNOWN_NUMBER_OF_ANTENNA_PORTS
 }
 
-func (m *ServedCellInfo) GetPrachConfiguration() *PrachConfiguration {
-       if m != nil {
-               return m.PrachConfiguration
+func (x *ServedCellInfo) GetPrachConfiguration() *PrachConfiguration {
+       if x != nil {
+               return x.PrachConfiguration
        }
        return nil
 }
 
-func (m *ServedCellInfo) GetMbsfnSubframeInfos() []*MbsfnSubframe {
-       if m != nil {
-               return m.MbsfnSubframeInfos
+func (x *ServedCellInfo) GetMbsfnSubframeInfos() []*MbsfnSubframe {
+       if x != nil {
+               return x.MbsfnSubframeInfos
        }
        return nil
 }
 
-func (m *ServedCellInfo) GetCsgId() string {
-       if m != nil {
-               return m.CsgId
+func (x *ServedCellInfo) GetCsgId() string {
+       if x != nil {
+               return x.CsgId
        }
        return ""
 }
 
-func (m *ServedCellInfo) GetMbmsServiceAreaIdentities() []string {
-       if m != nil {
-               return m.MbmsServiceAreaIdentities
+func (x *ServedCellInfo) GetMbmsServiceAreaIdentities() []string {
+       if x != nil {
+               return x.MbmsServiceAreaIdentities
        }
        return nil
 }
 
-func (m *ServedCellInfo) GetMultibandInfos() []uint32 {
-       if m != nil {
-               return m.MultibandInfos
+func (x *ServedCellInfo) GetMultibandInfos() []uint32 {
+       if x != nil {
+               return x.MultibandInfos
        }
        return nil
 }
 
-func (m *ServedCellInfo) GetFreqBandIndicatorPriority() FreqBandIndicatorPriority {
-       if m != nil {
-               return m.FreqBandIndicatorPriority
+func (x *ServedCellInfo) GetFreqBandIndicatorPriority() FreqBandIndicatorPriority {
+       if x != nil {
+               return x.FreqBandIndicatorPriority
        }
        return FreqBandIndicatorPriority_UNKNOWN_FREQ_BAND_INDICATOR_PRIORITY
 }
 
-func (m *ServedCellInfo) GetBandwidthReducedSi() BandwidthReducedSI {
-       if m != nil {
-               return m.BandwidthReducedSi
+func (x *ServedCellInfo) GetBandwidthReducedSi() BandwidthReducedSI {
+       if x != nil {
+               return x.BandwidthReducedSi
        }
        return BandwidthReducedSI_UNKNOWN_BANDWIDTH_REDUCED_SI
 }
 
-func (m *ServedCellInfo) GetNeighbourInfos() []*NeighbourInformation {
-       if m != nil {
-               return m.NeighbourInfos
+func (x *ServedCellInfo) GetNeighbourInfos() []*NeighbourInformation {
+       if x != nil {
+               return x.NeighbourInfos
        }
        return nil
 }
 
-type ChoiceEUTRAMode struct {
-       Fdd                  *FddInfo `protobuf:"bytes,1,opt,name=fdd,proto3" json:"fdd,omitempty"`
-       Tdd                  *TddInfo `protobuf:"bytes,2,opt,name=tdd,proto3" json:"tdd,omitempty"`
-       XXX_NoUnkeyedLiteral struct{} `json:"-"`
-       XXX_unrecognized     []byte   `json:"-"`
-       XXX_sizecache        int32    `json:"-"`
+func (x *ServedCellInfo) GetAdditionalCellInformation() *AdditionalCellInformation {
+       if x != nil {
+               return x.AdditionalCellInformation
+       }
+       return nil
 }
 
-func (m *ChoiceEUTRAMode) Reset()         { *m = ChoiceEUTRAMode{} }
-func (m *ChoiceEUTRAMode) String() string { return proto.CompactTextString(m) }
-func (*ChoiceEUTRAMode) ProtoMessage()    {}
-func (*ChoiceEUTRAMode) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{2}
-}
+type ChoiceEUTRAMode struct {
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
 
-func (m *ChoiceEUTRAMode) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_ChoiceEUTRAMode.Unmarshal(m, b)
-}
-func (m *ChoiceEUTRAMode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_ChoiceEUTRAMode.Marshal(b, m, deterministic)
+       Fdd *FddInfo `protobuf:"bytes,1,opt,name=fdd,proto3" json:"fdd,omitempty"`
+       Tdd *TddInfo `protobuf:"bytes,2,opt,name=tdd,proto3" json:"tdd,omitempty"`
 }
-func (m *ChoiceEUTRAMode) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_ChoiceEUTRAMode.Merge(m, src)
+
+func (x *ChoiceEUTRAMode) Reset() {
+       *x = ChoiceEUTRAMode{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[2]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
-func (m *ChoiceEUTRAMode) XXX_Size() int {
-       return xxx_messageInfo_ChoiceEUTRAMode.Size(m)
+
+func (x *ChoiceEUTRAMode) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
-func (m *ChoiceEUTRAMode) XXX_DiscardUnknown() {
-       xxx_messageInfo_ChoiceEUTRAMode.DiscardUnknown(m)
+
+func (*ChoiceEUTRAMode) ProtoMessage() {}
+
+func (x *ChoiceEUTRAMode) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_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)
 }
 
-var xxx_messageInfo_ChoiceEUTRAMode proto.InternalMessageInfo
+// Deprecated: Use ChoiceEUTRAMode.ProtoReflect.Descriptor instead.
+func (*ChoiceEUTRAMode) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{2}
+}
 
-func (m *ChoiceEUTRAMode) GetFdd() *FddInfo {
-       if m != nil {
-               return m.Fdd
+func (x *ChoiceEUTRAMode) GetFdd() *FddInfo {
+       if x != nil {
+               return x.Fdd
        }
        return nil
 }
 
-func (m *ChoiceEUTRAMode) GetTdd() *TddInfo {
-       if m != nil {
-               return m.Tdd
+func (x *ChoiceEUTRAMode) GetTdd() *TddInfo {
+       if x != nil {
+               return x.Tdd
        }
        return nil
 }
 
 type Eutra struct {
-       XXX_NoUnkeyedLiteral struct{} `json:"-"`
-       XXX_unrecognized     []byte   `json:"-"`
-       XXX_sizecache        int32    `json:"-"`
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
 }
 
-func (m *Eutra) Reset()         { *m = Eutra{} }
-func (m *Eutra) String() string { return proto.CompactTextString(m) }
-func (*Eutra) ProtoMessage()    {}
-func (*Eutra) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{3}
+func (x *Eutra) Reset() {
+       *x = Eutra{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[3]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
 
-func (m *Eutra) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_Eutra.Unmarshal(m, b)
-}
-func (m *Eutra) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_Eutra.Marshal(b, m, deterministic)
-}
-func (m *Eutra) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_Eutra.Merge(m, src)
-}
-func (m *Eutra) XXX_Size() int {
-       return xxx_messageInfo_Eutra.Size(m)
-}
-func (m *Eutra) XXX_DiscardUnknown() {
-       xxx_messageInfo_Eutra.DiscardUnknown(m)
+func (x *Eutra) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
 
-var xxx_messageInfo_Eutra proto.InternalMessageInfo
+func (*Eutra) ProtoMessage() {}
 
-type NeighbourInformation struct {
-       Ecgi                 string   `protobuf:"bytes,1,opt,name=ecgi,proto3" json:"ecgi,omitempty"`
-       Pci                  uint32   `protobuf:"varint,2,opt,name=pci,proto3" json:"pci,omitempty"`
-       EarFcn               uint32   `protobuf:"varint,3,opt,name=ear_fcn,json=earFcn,proto3" json:"ear_fcn,omitempty"`
-       Tac                  string   `protobuf:"bytes,4,opt,name=tac,proto3" json:"tac,omitempty"`
-       XXX_NoUnkeyedLiteral struct{} `json:"-"`
-       XXX_unrecognized     []byte   `json:"-"`
-       XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *NeighbourInformation) Reset()         { *m = NeighbourInformation{} }
-func (m *NeighbourInformation) String() string { return proto.CompactTextString(m) }
-func (*NeighbourInformation) ProtoMessage()    {}
-func (*NeighbourInformation) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{4}
+func (x *Eutra) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_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)
 }
 
-func (m *NeighbourInformation) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_NeighbourInformation.Unmarshal(m, b)
-}
-func (m *NeighbourInformation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_NeighbourInformation.Marshal(b, m, deterministic)
+// Deprecated: Use Eutra.ProtoReflect.Descriptor instead.
+func (*Eutra) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{3}
 }
-func (m *NeighbourInformation) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_NeighbourInformation.Merge(m, src)
+
+type NeighbourInformation struct {
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
+
+       Ecgi   string `protobuf:"bytes,1,opt,name=ecgi,proto3" json:"ecgi,omitempty"`
+       Pci    uint32 `protobuf:"varint,2,opt,name=pci,proto3" json:"pci,omitempty"`
+       EarFcn uint32 `protobuf:"varint,3,opt,name=ear_fcn,json=earFcn,proto3" json:"ear_fcn,omitempty"`
+       Tac    string `protobuf:"bytes,4,opt,name=tac,proto3" json:"tac,omitempty"`
+}
+
+func (x *NeighbourInformation) Reset() {
+       *x = NeighbourInformation{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[4]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
-func (m *NeighbourInformation) XXX_Size() int {
-       return xxx_messageInfo_NeighbourInformation.Size(m)
+
+func (x *NeighbourInformation) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
-func (m *NeighbourInformation) XXX_DiscardUnknown() {
-       xxx_messageInfo_NeighbourInformation.DiscardUnknown(m)
+
+func (*NeighbourInformation) ProtoMessage() {}
+
+func (x *NeighbourInformation) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_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)
 }
 
-var xxx_messageInfo_NeighbourInformation proto.InternalMessageInfo
+// Deprecated: Use NeighbourInformation.ProtoReflect.Descriptor instead.
+func (*NeighbourInformation) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{4}
+}
 
-func (m *NeighbourInformation) GetEcgi() string {
-       if m != nil {
-               return m.Ecgi
+func (x *NeighbourInformation) GetEcgi() string {
+       if x != nil {
+               return x.Ecgi
        }
        return ""
 }
 
-func (m *NeighbourInformation) GetPci() uint32 {
-       if m != nil {
-               return m.Pci
+func (x *NeighbourInformation) GetPci() uint32 {
+       if x != nil {
+               return x.Pci
        }
        return 0
 }
 
-func (m *NeighbourInformation) GetEarFcn() uint32 {
-       if m != nil {
-               return m.EarFcn
+func (x *NeighbourInformation) GetEarFcn() uint32 {
+       if x != nil {
+               return x.EarFcn
        }
        return 0
 }
 
-func (m *NeighbourInformation) GetTac() string {
-       if m != nil {
-               return m.Tac
+func (x *NeighbourInformation) GetTac() string {
+       if x != nil {
+               return x.Tac
        }
        return ""
 }
 
 type MbsfnSubframe struct {
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
+
        RadioframeAllocationPeriod RadioframeAllocationPeriod `protobuf:"varint,1,opt,name=radioframe_allocation_period,json=radioframeAllocationPeriod,proto3,enum=entities.RadioframeAllocationPeriod" json:"radioframe_allocation_period,omitempty"`
        RadioframeAllocationOffset uint32                     `protobuf:"varint,2,opt,name=radioframe_allocation_offset,json=radioframeAllocationOffset,proto3" json:"radioframe_allocation_offset,omitempty"`
        SubframeAllocation         string                     `protobuf:"bytes,3,opt,name=subframe_allocation,json=subframeAllocation,proto3" json:"subframe_allocation,omitempty"`
        SubframeAllocationType     SubframeAllocationType     `protobuf:"varint,4,opt,name=subframe_allocation_type,json=subframeAllocationType,proto3,enum=entities.SubframeAllocationType" json:"subframe_allocation_type,omitempty"`
-       XXX_NoUnkeyedLiteral       struct{}                   `json:"-"`
-       XXX_unrecognized           []byte                     `json:"-"`
-       XXX_sizecache              int32                      `json:"-"`
 }
 
-func (m *MbsfnSubframe) Reset()         { *m = MbsfnSubframe{} }
-func (m *MbsfnSubframe) String() string { return proto.CompactTextString(m) }
-func (*MbsfnSubframe) ProtoMessage()    {}
-func (*MbsfnSubframe) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{5}
+func (x *MbsfnSubframe) Reset() {
+       *x = MbsfnSubframe{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[5]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
 
-func (m *MbsfnSubframe) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_MbsfnSubframe.Unmarshal(m, b)
-}
-func (m *MbsfnSubframe) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_MbsfnSubframe.Marshal(b, m, deterministic)
-}
-func (m *MbsfnSubframe) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_MbsfnSubframe.Merge(m, src)
-}
-func (m *MbsfnSubframe) XXX_Size() int {
-       return xxx_messageInfo_MbsfnSubframe.Size(m)
+func (x *MbsfnSubframe) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
-func (m *MbsfnSubframe) XXX_DiscardUnknown() {
-       xxx_messageInfo_MbsfnSubframe.DiscardUnknown(m)
+
+func (*MbsfnSubframe) ProtoMessage() {}
+
+func (x *MbsfnSubframe) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_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)
 }
 
-var xxx_messageInfo_MbsfnSubframe proto.InternalMessageInfo
+// Deprecated: Use MbsfnSubframe.ProtoReflect.Descriptor instead.
+func (*MbsfnSubframe) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{5}
+}
 
-func (m *MbsfnSubframe) GetRadioframeAllocationPeriod() RadioframeAllocationPeriod {
-       if m != nil {
-               return m.RadioframeAllocationPeriod
+func (x *MbsfnSubframe) GetRadioframeAllocationPeriod() RadioframeAllocationPeriod {
+       if x != nil {
+               return x.RadioframeAllocationPeriod
        }
        return RadioframeAllocationPeriod_UNKNOWN_RADIOFRAME_ALLOCATION_PERIOD
 }
 
-func (m *MbsfnSubframe) GetRadioframeAllocationOffset() uint32 {
-       if m != nil {
-               return m.RadioframeAllocationOffset
+func (x *MbsfnSubframe) GetRadioframeAllocationOffset() uint32 {
+       if x != nil {
+               return x.RadioframeAllocationOffset
        }
        return 0
 }
 
-func (m *MbsfnSubframe) GetSubframeAllocation() string {
-       if m != nil {
-               return m.SubframeAllocation
+func (x *MbsfnSubframe) GetSubframeAllocation() string {
+       if x != nil {
+               return x.SubframeAllocation
        }
        return ""
 }
 
-func (m *MbsfnSubframe) GetSubframeAllocationType() SubframeAllocationType {
-       if m != nil {
-               return m.SubframeAllocationType
+func (x *MbsfnSubframe) GetSubframeAllocationType() SubframeAllocationType {
+       if x != nil {
+               return x.SubframeAllocationType
        }
        return SubframeAllocationType_UNKNOWN_SUBFRAME_ALLOCATION_TYPE
 }
 
 type PrachConfiguration struct {
-       RootSequenceIndex                uint32   `protobuf:"varint,1,opt,name=root_sequence_index,json=rootSequenceIndex,proto3" json:"root_sequence_index,omitempty"`
-       ZeroCorrelationZoneConfiguration uint32   `protobuf:"varint,2,opt,name=zero_correlation_zone_configuration,json=zeroCorrelationZoneConfiguration,proto3" json:"zero_correlation_zone_configuration,omitempty"`
-       HighSpeedFlag                    bool     `protobuf:"varint,3,opt,name=high_speed_flag,json=highSpeedFlag,proto3" json:"high_speed_flag,omitempty"`
-       PrachFrequencyOffset             uint32   `protobuf:"varint,4,opt,name=prach_frequency_offset,json=prachFrequencyOffset,proto3" json:"prach_frequency_offset,omitempty"`
-       PrachConfigurationIndex          uint32   `protobuf:"varint,5,opt,name=prach_configuration_index,json=prachConfigurationIndex,proto3" json:"prach_configuration_index,omitempty"`
-       XXX_NoUnkeyedLiteral             struct{} `json:"-"`
-       XXX_unrecognized                 []byte   `json:"-"`
-       XXX_sizecache                    int32    `json:"-"`
-}
-
-func (m *PrachConfiguration) Reset()         { *m = PrachConfiguration{} }
-func (m *PrachConfiguration) String() string { return proto.CompactTextString(m) }
-func (*PrachConfiguration) ProtoMessage()    {}
-func (*PrachConfiguration) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{6}
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
+
+       RootSequenceIndex                uint32 `protobuf:"varint,1,opt,name=root_sequence_index,json=rootSequenceIndex,proto3" json:"root_sequence_index,omitempty"`
+       ZeroCorrelationZoneConfiguration uint32 `protobuf:"varint,2,opt,name=zero_correlation_zone_configuration,json=zeroCorrelationZoneConfiguration,proto3" json:"zero_correlation_zone_configuration,omitempty"`
+       HighSpeedFlag                    bool   `protobuf:"varint,3,opt,name=high_speed_flag,json=highSpeedFlag,proto3" json:"high_speed_flag,omitempty"`
+       PrachFrequencyOffset             uint32 `protobuf:"varint,4,opt,name=prach_frequency_offset,json=prachFrequencyOffset,proto3" json:"prach_frequency_offset,omitempty"`
+       PrachConfigurationIndex          uint32 `protobuf:"varint,5,opt,name=prach_configuration_index,json=prachConfigurationIndex,proto3" json:"prach_configuration_index,omitempty"`
+}
+
+func (x *PrachConfiguration) Reset() {
+       *x = PrachConfiguration{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[6]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
 
-func (m *PrachConfiguration) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_PrachConfiguration.Unmarshal(m, b)
-}
-func (m *PrachConfiguration) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_PrachConfiguration.Marshal(b, m, deterministic)
-}
-func (m *PrachConfiguration) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_PrachConfiguration.Merge(m, src)
+func (x *PrachConfiguration) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
-func (m *PrachConfiguration) XXX_Size() int {
-       return xxx_messageInfo_PrachConfiguration.Size(m)
-}
-func (m *PrachConfiguration) XXX_DiscardUnknown() {
-       xxx_messageInfo_PrachConfiguration.DiscardUnknown(m)
+
+func (*PrachConfiguration) ProtoMessage() {}
+
+func (x *PrachConfiguration) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_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)
 }
 
-var xxx_messageInfo_PrachConfiguration proto.InternalMessageInfo
+// Deprecated: Use PrachConfiguration.ProtoReflect.Descriptor instead.
+func (*PrachConfiguration) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{6}
+}
 
-func (m *PrachConfiguration) GetRootSequenceIndex() uint32 {
-       if m != nil {
-               return m.RootSequenceIndex
+func (x *PrachConfiguration) GetRootSequenceIndex() uint32 {
+       if x != nil {
+               return x.RootSequenceIndex
        }
        return 0
 }
 
-func (m *PrachConfiguration) GetZeroCorrelationZoneConfiguration() uint32 {
-       if m != nil {
-               return m.ZeroCorrelationZoneConfiguration
+func (x *PrachConfiguration) GetZeroCorrelationZoneConfiguration() uint32 {
+       if x != nil {
+               return x.ZeroCorrelationZoneConfiguration
        }
        return 0
 }
 
-func (m *PrachConfiguration) GetHighSpeedFlag() bool {
-       if m != nil {
-               return m.HighSpeedFlag
+func (x *PrachConfiguration) GetHighSpeedFlag() bool {
+       if x != nil {
+               return x.HighSpeedFlag
        }
        return false
 }
 
-func (m *PrachConfiguration) GetPrachFrequencyOffset() uint32 {
-       if m != nil {
-               return m.PrachFrequencyOffset
+func (x *PrachConfiguration) GetPrachFrequencyOffset() uint32 {
+       if x != nil {
+               return x.PrachFrequencyOffset
        }
        return 0
 }
 
-func (m *PrachConfiguration) GetPrachConfigurationIndex() uint32 {
-       if m != nil {
-               return m.PrachConfigurationIndex
+func (x *PrachConfiguration) GetPrachConfigurationIndex() uint32 {
+       if x != nil {
+               return x.PrachConfigurationIndex
        }
        return 0
 }
 
 type TddInfo struct {
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
+
        EarFcn                                 uint32                                  `protobuf:"varint,1,opt,name=ear_fcn,json=earFcn,proto3" json:"ear_fcn,omitempty"`
        TransmissionBandwidth                  TransmissionBandwidth                   `protobuf:"varint,2,opt,name=transmission_bandwidth,json=transmissionBandwidth,proto3,enum=entities.TransmissionBandwidth" json:"transmission_bandwidth,omitempty"`
        SubframeAssignment                     SubframeAssignment                      `protobuf:"varint,3,opt,name=subframe_assignment,json=subframeAssignment,proto3,enum=entities.SubframeAssignment" json:"subframe_assignment,omitempty"`
        SpecialSubframeInfo                    *SpecialSubframeInfo                    `protobuf:"bytes,4,opt,name=special_subframe_info,json=specialSubframeInfo,proto3" json:"special_subframe_info,omitempty"`
        AdditionalSpecialSubframeInfo          *AdditionalSpecialSubframeInfo          `protobuf:"bytes,5,opt,name=additional_special_subframe_info,json=additionalSpecialSubframeInfo,proto3" json:"additional_special_subframe_info,omitempty"`
        AdditionalSpecialSubframeExtensionInfo *AdditionalSpecialSubframeExtensionInfo `protobuf:"bytes,6,opt,name=additional_special_subframe_extension_info,json=additionalSpecialSubframeExtensionInfo,proto3" json:"additional_special_subframe_extension_info,omitempty"`
-       XXX_NoUnkeyedLiteral                   struct{}                                `json:"-"`
-       XXX_unrecognized                       []byte                                  `json:"-"`
-       XXX_sizecache                          int32                                   `json:"-"`
 }
 
-func (m *TddInfo) Reset()         { *m = TddInfo{} }
-func (m *TddInfo) String() string { return proto.CompactTextString(m) }
-func (*TddInfo) ProtoMessage()    {}
-func (*TddInfo) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{7}
+func (x *TddInfo) Reset() {
+       *x = TddInfo{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[7]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
 
-func (m *TddInfo) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_TddInfo.Unmarshal(m, b)
+func (x *TddInfo) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
-func (m *TddInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_TddInfo.Marshal(b, m, deterministic)
-}
-func (m *TddInfo) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_TddInfo.Merge(m, src)
-}
-func (m *TddInfo) XXX_Size() int {
-       return xxx_messageInfo_TddInfo.Size(m)
-}
-func (m *TddInfo) XXX_DiscardUnknown() {
-       xxx_messageInfo_TddInfo.DiscardUnknown(m)
+
+func (*TddInfo) ProtoMessage() {}
+
+func (x *TddInfo) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_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)
 }
 
-var xxx_messageInfo_TddInfo proto.InternalMessageInfo
+// Deprecated: Use TddInfo.ProtoReflect.Descriptor instead.
+func (*TddInfo) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{7}
+}
 
-func (m *TddInfo) GetEarFcn() uint32 {
-       if m != nil {
-               return m.EarFcn
+func (x *TddInfo) GetEarFcn() uint32 {
+       if x != nil {
+               return x.EarFcn
        }
        return 0
 }
 
-func (m *TddInfo) GetTransmissionBandwidth() TransmissionBandwidth {
-       if m != nil {
-               return m.TransmissionBandwidth
+func (x *TddInfo) GetTransmissionBandwidth() TransmissionBandwidth {
+       if x != nil {
+               return x.TransmissionBandwidth
        }
        return TransmissionBandwidth_UNKNOWN_TRANSMISSION_BANDWIDTH
 }
 
-func (m *TddInfo) GetSubframeAssignment() SubframeAssignment {
-       if m != nil {
-               return m.SubframeAssignment
+func (x *TddInfo) GetSubframeAssignment() SubframeAssignment {
+       if x != nil {
+               return x.SubframeAssignment
        }
        return SubframeAssignment_UNKNOWN_SUBFRAME_ASSIGNMENT
 }
 
-func (m *TddInfo) GetSpecialSubframeInfo() *SpecialSubframeInfo {
-       if m != nil {
-               return m.SpecialSubframeInfo
+func (x *TddInfo) GetSpecialSubframeInfo() *SpecialSubframeInfo {
+       if x != nil {
+               return x.SpecialSubframeInfo
        }
        return nil
 }
 
-func (m *TddInfo) GetAdditionalSpecialSubframeInfo() *AdditionalSpecialSubframeInfo {
-       if m != nil {
-               return m.AdditionalSpecialSubframeInfo
+func (x *TddInfo) GetAdditionalSpecialSubframeInfo() *AdditionalSpecialSubframeInfo {
+       if x != nil {
+               return x.AdditionalSpecialSubframeInfo
        }
        return nil
 }
 
-func (m *TddInfo) GetAdditionalSpecialSubframeExtensionInfo() *AdditionalSpecialSubframeExtensionInfo {
-       if m != nil {
-               return m.AdditionalSpecialSubframeExtensionInfo
+func (x *TddInfo) GetAdditionalSpecialSubframeExtensionInfo() *AdditionalSpecialSubframeExtensionInfo {
+       if x != nil {
+               return x.AdditionalSpecialSubframeExtensionInfo
        }
        return nil
 }
 
 type AdditionalSpecialSubframeExtensionInfo struct {
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
+
        AdditionalSpecialSubframePatternsExtension AdditionalSpecialSubframePatterns_Extension `protobuf:"varint,1,opt,name=additional_special_subframe_patterns_extension,json=additionalSpecialSubframePatternsExtension,proto3,enum=entities.AdditionalSpecialSubframePatterns_Extension" json:"additional_special_subframe_patterns_extension,omitempty"`
        CyclicPrefixDl                             CyclicPrefix                                `protobuf:"varint,2,opt,name=cyclic_prefix_dl,json=cyclicPrefixDl,proto3,enum=entities.CyclicPrefix" json:"cyclic_prefix_dl,omitempty"`
        CyclicPrefixUl                             CyclicPrefix                                `protobuf:"varint,3,opt,name=cyclic_prefix_ul,json=cyclicPrefixUl,proto3,enum=entities.CyclicPrefix" json:"cyclic_prefix_ul,omitempty"`
-       XXX_NoUnkeyedLiteral                       struct{}                                    `json:"-"`
-       XXX_unrecognized                           []byte                                      `json:"-"`
-       XXX_sizecache                              int32                                       `json:"-"`
 }
 
-func (m *AdditionalSpecialSubframeExtensionInfo) Reset() {
-       *m = AdditionalSpecialSubframeExtensionInfo{}
-}
-func (m *AdditionalSpecialSubframeExtensionInfo) String() string { return proto.CompactTextString(m) }
-func (*AdditionalSpecialSubframeExtensionInfo) ProtoMessage()    {}
-func (*AdditionalSpecialSubframeExtensionInfo) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{8}
+func (x *AdditionalSpecialSubframeExtensionInfo) Reset() {
+       *x = AdditionalSpecialSubframeExtensionInfo{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[8]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
 
-func (m *AdditionalSpecialSubframeExtensionInfo) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_AdditionalSpecialSubframeExtensionInfo.Unmarshal(m, b)
-}
-func (m *AdditionalSpecialSubframeExtensionInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_AdditionalSpecialSubframeExtensionInfo.Marshal(b, m, deterministic)
-}
-func (m *AdditionalSpecialSubframeExtensionInfo) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_AdditionalSpecialSubframeExtensionInfo.Merge(m, src)
+func (x *AdditionalSpecialSubframeExtensionInfo) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
-func (m *AdditionalSpecialSubframeExtensionInfo) XXX_Size() int {
-       return xxx_messageInfo_AdditionalSpecialSubframeExtensionInfo.Size(m)
-}
-func (m *AdditionalSpecialSubframeExtensionInfo) XXX_DiscardUnknown() {
-       xxx_messageInfo_AdditionalSpecialSubframeExtensionInfo.DiscardUnknown(m)
+
+func (*AdditionalSpecialSubframeExtensionInfo) ProtoMessage() {}
+
+func (x *AdditionalSpecialSubframeExtensionInfo) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_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)
 }
 
-var xxx_messageInfo_AdditionalSpecialSubframeExtensionInfo proto.InternalMessageInfo
+// Deprecated: Use AdditionalSpecialSubframeExtensionInfo.ProtoReflect.Descriptor instead.
+func (*AdditionalSpecialSubframeExtensionInfo) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{8}
+}
 
-func (m *AdditionalSpecialSubframeExtensionInfo) GetAdditionalSpecialSubframePatternsExtension() AdditionalSpecialSubframePatterns_Extension {
-       if m != nil {
-               return m.AdditionalSpecialSubframePatternsExtension
+func (x *AdditionalSpecialSubframeExtensionInfo) GetAdditionalSpecialSubframePatternsExtension() AdditionalSpecialSubframePatterns_Extension {
+       if x != nil {
+               return x.AdditionalSpecialSubframePatternsExtension
        }
        return AdditionalSpecialSubframePatterns_UNKNOWN
 }
 
-func (m *AdditionalSpecialSubframeExtensionInfo) GetCyclicPrefixDl() CyclicPrefix {
-       if m != nil {
-               return m.CyclicPrefixDl
+func (x *AdditionalSpecialSubframeExtensionInfo) GetCyclicPrefixDl() CyclicPrefix {
+       if x != nil {
+               return x.CyclicPrefixDl
        }
        return CyclicPrefix_UNKNOWN_CYCLIC_PREFIX
 }
 
-func (m *AdditionalSpecialSubframeExtensionInfo) GetCyclicPrefixUl() CyclicPrefix {
-       if m != nil {
-               return m.CyclicPrefixUl
+func (x *AdditionalSpecialSubframeExtensionInfo) GetCyclicPrefixUl() CyclicPrefix {
+       if x != nil {
+               return x.CyclicPrefixUl
        }
        return CyclicPrefix_UNKNOWN_CYCLIC_PREFIX
 }
 
 type AdditionalSpecialSubframeInfo struct {
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
+
        AdditionalSpecialSubframePatterns AdditionalSpecialSubframe_Patterns `protobuf:"varint,1,opt,name=additional_special_subframe_patterns,json=additionalSpecialSubframePatterns,proto3,enum=entities.AdditionalSpecialSubframe_Patterns" json:"additional_special_subframe_patterns,omitempty"`
        CyclicPrefixDl                    CyclicPrefix                       `protobuf:"varint,2,opt,name=cyclic_prefix_dl,json=cyclicPrefixDl,proto3,enum=entities.CyclicPrefix" json:"cyclic_prefix_dl,omitempty"`
        CyclicPrefixUl                    CyclicPrefix                       `protobuf:"varint,3,opt,name=cyclic_prefix_ul,json=cyclicPrefixUl,proto3,enum=entities.CyclicPrefix" json:"cyclic_prefix_ul,omitempty"`
-       XXX_NoUnkeyedLiteral              struct{}                           `json:"-"`
-       XXX_unrecognized                  []byte                             `json:"-"`
-       XXX_sizecache                     int32                              `json:"-"`
 }
 
-func (m *AdditionalSpecialSubframeInfo) Reset()         { *m = AdditionalSpecialSubframeInfo{} }
-func (m *AdditionalSpecialSubframeInfo) String() string { return proto.CompactTextString(m) }
-func (*AdditionalSpecialSubframeInfo) ProtoMessage()    {}
-func (*AdditionalSpecialSubframeInfo) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{9}
+func (x *AdditionalSpecialSubframeInfo) Reset() {
+       *x = AdditionalSpecialSubframeInfo{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[9]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
 
-func (m *AdditionalSpecialSubframeInfo) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_AdditionalSpecialSubframeInfo.Unmarshal(m, b)
+func (x *AdditionalSpecialSubframeInfo) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
-func (m *AdditionalSpecialSubframeInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_AdditionalSpecialSubframeInfo.Marshal(b, m, deterministic)
-}
-func (m *AdditionalSpecialSubframeInfo) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_AdditionalSpecialSubframeInfo.Merge(m, src)
-}
-func (m *AdditionalSpecialSubframeInfo) XXX_Size() int {
-       return xxx_messageInfo_AdditionalSpecialSubframeInfo.Size(m)
-}
-func (m *AdditionalSpecialSubframeInfo) XXX_DiscardUnknown() {
-       xxx_messageInfo_AdditionalSpecialSubframeInfo.DiscardUnknown(m)
+
+func (*AdditionalSpecialSubframeInfo) ProtoMessage() {}
+
+func (x *AdditionalSpecialSubframeInfo) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_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)
 }
 
-var xxx_messageInfo_AdditionalSpecialSubframeInfo proto.InternalMessageInfo
+// Deprecated: Use AdditionalSpecialSubframeInfo.ProtoReflect.Descriptor instead.
+func (*AdditionalSpecialSubframeInfo) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{9}
+}
 
-func (m *AdditionalSpecialSubframeInfo) GetAdditionalSpecialSubframePatterns() AdditionalSpecialSubframe_Patterns {
-       if m != nil {
-               return m.AdditionalSpecialSubframePatterns
+func (x *AdditionalSpecialSubframeInfo) GetAdditionalSpecialSubframePatterns() AdditionalSpecialSubframe_Patterns {
+       if x != nil {
+               return x.AdditionalSpecialSubframePatterns
        }
        return AdditionalSpecialSubframe_UNKNOWN
 }
 
-func (m *AdditionalSpecialSubframeInfo) GetCyclicPrefixDl() CyclicPrefix {
-       if m != nil {
-               return m.CyclicPrefixDl
+func (x *AdditionalSpecialSubframeInfo) GetCyclicPrefixDl() CyclicPrefix {
+       if x != nil {
+               return x.CyclicPrefixDl
        }
        return CyclicPrefix_UNKNOWN_CYCLIC_PREFIX
 }
 
-func (m *AdditionalSpecialSubframeInfo) GetCyclicPrefixUl() CyclicPrefix {
-       if m != nil {
-               return m.CyclicPrefixUl
+func (x *AdditionalSpecialSubframeInfo) GetCyclicPrefixUl() CyclicPrefix {
+       if x != nil {
+               return x.CyclicPrefixUl
        }
        return CyclicPrefix_UNKNOWN_CYCLIC_PREFIX
 }
 
 type FddInfo struct {
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
+
        UlearFcn                uint32                `protobuf:"varint,1,opt,name=ulear_fcn,json=ulearFcn,proto3" json:"ulear_fcn,omitempty"`
        DlearFcn                uint32                `protobuf:"varint,2,opt,name=dlear_fcn,json=dlearFcn,proto3" json:"dlear_fcn,omitempty"`
        UlTransmissionBandwidth TransmissionBandwidth `protobuf:"varint,3,opt,name=ul_transmission_bandwidth,json=ulTransmissionBandwidth,proto3,enum=entities.TransmissionBandwidth" json:"ul_transmission_bandwidth,omitempty"`
        DlTransmissionBandwidth TransmissionBandwidth `protobuf:"varint,4,opt,name=dl_transmission_bandwidth,json=dlTransmissionBandwidth,proto3,enum=entities.TransmissionBandwidth" json:"dl_transmission_bandwidth,omitempty"`
-       XXX_NoUnkeyedLiteral    struct{}              `json:"-"`
-       XXX_unrecognized        []byte                `json:"-"`
-       XXX_sizecache           int32                 `json:"-"`
 }
 
-func (m *FddInfo) Reset()         { *m = FddInfo{} }
-func (m *FddInfo) String() string { return proto.CompactTextString(m) }
-func (*FddInfo) ProtoMessage()    {}
-func (*FddInfo) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{10}
+func (x *FddInfo) Reset() {
+       *x = FddInfo{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[10]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
 
-func (m *FddInfo) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_FddInfo.Unmarshal(m, b)
-}
-func (m *FddInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_FddInfo.Marshal(b, m, deterministic)
-}
-func (m *FddInfo) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_FddInfo.Merge(m, src)
+func (x *FddInfo) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
-func (m *FddInfo) XXX_Size() int {
-       return xxx_messageInfo_FddInfo.Size(m)
-}
-func (m *FddInfo) XXX_DiscardUnknown() {
-       xxx_messageInfo_FddInfo.DiscardUnknown(m)
+
+func (*FddInfo) ProtoMessage() {}
+
+func (x *FddInfo) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_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)
 }
 
-var xxx_messageInfo_FddInfo proto.InternalMessageInfo
+// Deprecated: Use FddInfo.ProtoReflect.Descriptor instead.
+func (*FddInfo) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{10}
+}
 
-func (m *FddInfo) GetUlearFcn() uint32 {
-       if m != nil {
-               return m.UlearFcn
+func (x *FddInfo) GetUlearFcn() uint32 {
+       if x != nil {
+               return x.UlearFcn
        }
        return 0
 }
 
-func (m *FddInfo) GetDlearFcn() uint32 {
-       if m != nil {
-               return m.DlearFcn
+func (x *FddInfo) GetDlearFcn() uint32 {
+       if x != nil {
+               return x.DlearFcn
        }
        return 0
 }
 
-func (m *FddInfo) GetUlTransmissionBandwidth() TransmissionBandwidth {
-       if m != nil {
-               return m.UlTransmissionBandwidth
+func (x *FddInfo) GetUlTransmissionBandwidth() TransmissionBandwidth {
+       if x != nil {
+               return x.UlTransmissionBandwidth
        }
        return TransmissionBandwidth_UNKNOWN_TRANSMISSION_BANDWIDTH
 }
 
-func (m *FddInfo) GetDlTransmissionBandwidth() TransmissionBandwidth {
-       if m != nil {
-               return m.DlTransmissionBandwidth
+func (x *FddInfo) GetDlTransmissionBandwidth() TransmissionBandwidth {
+       if x != nil {
+               return x.DlTransmissionBandwidth
        }
        return TransmissionBandwidth_UNKNOWN_TRANSMISSION_BANDWIDTH
 }
 
 type SpecialSubframeInfo struct {
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
+
        SpecialSubframePatterns SpecialSubframe_Patterns `protobuf:"varint,1,opt,name=special_subframe_patterns,json=specialSubframePatterns,proto3,enum=entities.SpecialSubframe_Patterns" json:"special_subframe_patterns,omitempty"`
        CyclicPrefixDl          CyclicPrefix             `protobuf:"varint,2,opt,name=cyclic_prefix_dl,json=cyclicPrefixDl,proto3,enum=entities.CyclicPrefix" json:"cyclic_prefix_dl,omitempty"`
        CyclicPrefixUl          CyclicPrefix             `protobuf:"varint,3,opt,name=cyclic_prefix_ul,json=cyclicPrefixUl,proto3,enum=entities.CyclicPrefix" json:"cyclic_prefix_ul,omitempty"`
-       XXX_NoUnkeyedLiteral    struct{}                 `json:"-"`
-       XXX_unrecognized        []byte                   `json:"-"`
-       XXX_sizecache           int32                    `json:"-"`
 }
 
-func (m *SpecialSubframeInfo) Reset()         { *m = SpecialSubframeInfo{} }
-func (m *SpecialSubframeInfo) String() string { return proto.CompactTextString(m) }
-func (*SpecialSubframeInfo) ProtoMessage()    {}
-func (*SpecialSubframeInfo) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{11}
+func (x *SpecialSubframeInfo) Reset() {
+       *x = SpecialSubframeInfo{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[11]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
 
-func (m *SpecialSubframeInfo) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_SpecialSubframeInfo.Unmarshal(m, b)
+func (x *SpecialSubframeInfo) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
-func (m *SpecialSubframeInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_SpecialSubframeInfo.Marshal(b, m, deterministic)
-}
-func (m *SpecialSubframeInfo) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_SpecialSubframeInfo.Merge(m, src)
-}
-func (m *SpecialSubframeInfo) XXX_Size() int {
-       return xxx_messageInfo_SpecialSubframeInfo.Size(m)
-}
-func (m *SpecialSubframeInfo) XXX_DiscardUnknown() {
-       xxx_messageInfo_SpecialSubframeInfo.DiscardUnknown(m)
+
+func (*SpecialSubframeInfo) ProtoMessage() {}
+
+func (x *SpecialSubframeInfo) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_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)
 }
 
-var xxx_messageInfo_SpecialSubframeInfo proto.InternalMessageInfo
+// Deprecated: Use SpecialSubframeInfo.ProtoReflect.Descriptor instead.
+func (*SpecialSubframeInfo) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{11}
+}
 
-func (m *SpecialSubframeInfo) GetSpecialSubframePatterns() SpecialSubframe_Patterns {
-       if m != nil {
-               return m.SpecialSubframePatterns
+func (x *SpecialSubframeInfo) GetSpecialSubframePatterns() SpecialSubframe_Patterns {
+       if x != nil {
+               return x.SpecialSubframePatterns
        }
        return SpecialSubframe_UNKNOWN
 }
 
-func (m *SpecialSubframeInfo) GetCyclicPrefixDl() CyclicPrefix {
-       if m != nil {
-               return m.CyclicPrefixDl
+func (x *SpecialSubframeInfo) GetCyclicPrefixDl() CyclicPrefix {
+       if x != nil {
+               return x.CyclicPrefixDl
        }
        return CyclicPrefix_UNKNOWN_CYCLIC_PREFIX
 }
 
-func (m *SpecialSubframeInfo) GetCyclicPrefixUl() CyclicPrefix {
-       if m != nil {
-               return m.CyclicPrefixUl
+func (x *SpecialSubframeInfo) GetCyclicPrefixUl() CyclicPrefix {
+       if x != nil {
+               return x.CyclicPrefixUl
        }
        return CyclicPrefix_UNKNOWN_CYCLIC_PREFIX
 }
 
 type SpecialSubframe struct {
-       XXX_NoUnkeyedLiteral struct{} `json:"-"`
-       XXX_unrecognized     []byte   `json:"-"`
-       XXX_sizecache        int32    `json:"-"`
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
 }
 
-func (m *SpecialSubframe) Reset()         { *m = SpecialSubframe{} }
-func (m *SpecialSubframe) String() string { return proto.CompactTextString(m) }
-func (*SpecialSubframe) ProtoMessage()    {}
-func (*SpecialSubframe) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{12}
+func (x *SpecialSubframe) Reset() {
+       *x = SpecialSubframe{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[12]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
 
-func (m *SpecialSubframe) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_SpecialSubframe.Unmarshal(m, b)
+func (x *SpecialSubframe) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
-func (m *SpecialSubframe) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_SpecialSubframe.Marshal(b, m, deterministic)
+
+func (*SpecialSubframe) ProtoMessage() {}
+
+func (x *SpecialSubframe) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_proto_msgTypes[12]
+       if protoimpl.UnsafeEnabled && x != nil {
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               if ms.LoadMessageInfo() == nil {
+                       ms.StoreMessageInfo(mi)
+               }
+               return ms
+       }
+       return mi.MessageOf(x)
 }
-func (m *SpecialSubframe) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_SpecialSubframe.Merge(m, src)
+
+// Deprecated: Use SpecialSubframe.ProtoReflect.Descriptor instead.
+func (*SpecialSubframe) Descriptor() ([]byte, []int) {
+       return file_enb_proto_rawDescGZIP(), []int{12}
 }
-func (m *SpecialSubframe) XXX_Size() int {
-       return xxx_messageInfo_SpecialSubframe.Size(m)
+
+type AdditionalSpecialSubframe struct {
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
 }
-func (m *SpecialSubframe) XXX_DiscardUnknown() {
-       xxx_messageInfo_SpecialSubframe.DiscardUnknown(m)
+
+func (x *AdditionalSpecialSubframe) Reset() {
+       *x = AdditionalSpecialSubframe{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[13]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
 
-var xxx_messageInfo_SpecialSubframe proto.InternalMessageInfo
+func (x *AdditionalSpecialSubframe) String() string {
+       return protoimpl.X.MessageStringOf(x)
+}
 
-type AdditionalSpecialSubframe struct {
-       XXX_NoUnkeyedLiteral struct{} `json:"-"`
-       XXX_unrecognized     []byte   `json:"-"`
-       XXX_sizecache        int32    `json:"-"`
+func (*AdditionalSpecialSubframe) ProtoMessage() {}
+
+func (x *AdditionalSpecialSubframe) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_proto_msgTypes[13]
+       if protoimpl.UnsafeEnabled && x != nil {
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               if ms.LoadMessageInfo() == nil {
+                       ms.StoreMessageInfo(mi)
+               }
+               return ms
+       }
+       return mi.MessageOf(x)
 }
 
-func (m *AdditionalSpecialSubframe) Reset()         { *m = AdditionalSpecialSubframe{} }
-func (m *AdditionalSpecialSubframe) String() string { return proto.CompactTextString(m) }
-func (*AdditionalSpecialSubframe) ProtoMessage()    {}
+// Deprecated: Use AdditionalSpecialSubframe.ProtoReflect.Descriptor instead.
 func (*AdditionalSpecialSubframe) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{13}
+       return file_enb_proto_rawDescGZIP(), []int{13}
 }
 
-func (m *AdditionalSpecialSubframe) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_AdditionalSpecialSubframe.Unmarshal(m, b)
-}
-func (m *AdditionalSpecialSubframe) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_AdditionalSpecialSubframe.Marshal(b, m, deterministic)
-}
-func (m *AdditionalSpecialSubframe) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_AdditionalSpecialSubframe.Merge(m, src)
+type AdditionalSpecialSubframePatterns struct {
+       state         protoimpl.MessageState
+       sizeCache     protoimpl.SizeCache
+       unknownFields protoimpl.UnknownFields
 }
-func (m *AdditionalSpecialSubframe) XXX_Size() int {
-       return xxx_messageInfo_AdditionalSpecialSubframe.Size(m)
+
+func (x *AdditionalSpecialSubframePatterns) Reset() {
+       *x = AdditionalSpecialSubframePatterns{}
+       if protoimpl.UnsafeEnabled {
+               mi := &file_enb_proto_msgTypes[14]
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               ms.StoreMessageInfo(mi)
+       }
 }
-func (m *AdditionalSpecialSubframe) XXX_DiscardUnknown() {
-       xxx_messageInfo_AdditionalSpecialSubframe.DiscardUnknown(m)
+
+func (x *AdditionalSpecialSubframePatterns) String() string {
+       return protoimpl.X.MessageStringOf(x)
 }
 
-var xxx_messageInfo_AdditionalSpecialSubframe proto.InternalMessageInfo
+func (*AdditionalSpecialSubframePatterns) ProtoMessage() {}
 
-type AdditionalSpecialSubframePatterns struct {
-       XXX_NoUnkeyedLiteral struct{} `json:"-"`
-       XXX_unrecognized     []byte   `json:"-"`
-       XXX_sizecache        int32    `json:"-"`
+func (x *AdditionalSpecialSubframePatterns) ProtoReflect() protoreflect.Message {
+       mi := &file_enb_proto_msgTypes[14]
+       if protoimpl.UnsafeEnabled && x != nil {
+               ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+               if ms.LoadMessageInfo() == nil {
+                       ms.StoreMessageInfo(mi)
+               }
+               return ms
+       }
+       return mi.MessageOf(x)
 }
 
-func (m *AdditionalSpecialSubframePatterns) Reset()         { *m = AdditionalSpecialSubframePatterns{} }
-func (m *AdditionalSpecialSubframePatterns) String() string { return proto.CompactTextString(m) }
-func (*AdditionalSpecialSubframePatterns) ProtoMessage()    {}
+// Deprecated: Use AdditionalSpecialSubframePatterns.ProtoReflect.Descriptor instead.
 func (*AdditionalSpecialSubframePatterns) Descriptor() ([]byte, []int) {
-       return fileDescriptor_4640cfb595a9e9c8, []int{14}
-}
-
-func (m *AdditionalSpecialSubframePatterns) XXX_Unmarshal(b []byte) error {
-       return xxx_messageInfo_AdditionalSpecialSubframePatterns.Unmarshal(m, b)
-}
-func (m *AdditionalSpecialSubframePatterns) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-       return xxx_messageInfo_AdditionalSpecialSubframePatterns.Marshal(b, m, deterministic)
-}
-func (m *AdditionalSpecialSubframePatterns) XXX_Merge(src proto.Message) {
-       xxx_messageInfo_AdditionalSpecialSubframePatterns.Merge(m, src)
-}
-func (m *AdditionalSpecialSubframePatterns) XXX_Size() int {
-       return xxx_messageInfo_AdditionalSpecialSubframePatterns.Size(m)
-}
-func (m *AdditionalSpecialSubframePatterns) XXX_DiscardUnknown() {
-       xxx_messageInfo_AdditionalSpecialSubframePatterns.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_AdditionalSpecialSubframePatterns proto.InternalMessageInfo
-
-func init() {
-       proto.RegisterEnum("entities.FreqBandIndicatorPriority", FreqBandIndicatorPriority_name, FreqBandIndicatorPriority_value)
-       proto.RegisterEnum("entities.BandwidthReducedSI", BandwidthReducedSI_name, BandwidthReducedSI_value)
-       proto.RegisterEnum("entities.SubframeAllocationType", SubframeAllocationType_name, SubframeAllocationType_value)
-       proto.RegisterEnum("entities.RadioframeAllocationPeriod", RadioframeAllocationPeriod_name, RadioframeAllocationPeriod_value)
-       proto.RegisterEnum("entities.NumberOfAntennaPorts", NumberOfAntennaPorts_name, NumberOfAntennaPorts_value)
-       proto.RegisterEnum("entities.EnbType", EnbType_name, EnbType_value)
-       proto.RegisterEnum("entities.SubframeAssignment", SubframeAssignment_name, SubframeAssignment_value)
-       proto.RegisterEnum("entities.CyclicPrefix", CyclicPrefix_name, CyclicPrefix_value)
-       proto.RegisterEnum("entities.TransmissionBandwidth", TransmissionBandwidth_name, TransmissionBandwidth_value)
-       proto.RegisterEnum("entities.Eutra_Mode", Eutra_Mode_name, Eutra_Mode_value)
-       proto.RegisterEnum("entities.SpecialSubframe_Patterns", SpecialSubframe_Patterns_name, SpecialSubframe_Patterns_value)
-       proto.RegisterEnum("entities.AdditionalSpecialSubframe_Patterns", AdditionalSpecialSubframe_Patterns_name, AdditionalSpecialSubframe_Patterns_value)
-       proto.RegisterEnum("entities.AdditionalSpecialSubframePatterns_Extension", AdditionalSpecialSubframePatterns_Extension_name, AdditionalSpecialSubframePatterns_Extension_value)
-       proto.RegisterType((*Enb)(nil), "entities.Enb")
-       proto.RegisterType((*ServedCellInfo)(nil), "entities.ServedCellInfo")
-       proto.RegisterType((*ChoiceEUTRAMode)(nil), "entities.ChoiceEUTRAMode")
-       proto.RegisterType((*Eutra)(nil), "entities.Eutra")
-       proto.RegisterType((*NeighbourInformation)(nil), "entities.NeighbourInformation")
-       proto.RegisterType((*MbsfnSubframe)(nil), "entities.MbsfnSubframe")
-       proto.RegisterType((*PrachConfiguration)(nil), "entities.PrachConfiguration")
-       proto.RegisterType((*TddInfo)(nil), "entities.TddInfo")
-       proto.RegisterType((*AdditionalSpecialSubframeExtensionInfo)(nil), "entities.AdditionalSpecialSubframeExtensionInfo")
-       proto.RegisterType((*AdditionalSpecialSubframeInfo)(nil), "entities.AdditionalSpecialSubframeInfo")
-       proto.RegisterType((*FddInfo)(nil), "entities.FddInfo")
-       proto.RegisterType((*SpecialSubframeInfo)(nil), "entities.SpecialSubframeInfo")
-       proto.RegisterType((*SpecialSubframe)(nil), "entities.SpecialSubframe")
-       proto.RegisterType((*AdditionalSpecialSubframe)(nil), "entities.AdditionalSpecialSubframe")
-       proto.RegisterType((*AdditionalSpecialSubframePatterns)(nil), "entities.AdditionalSpecialSubframePatterns")
-}
-
-func init() { proto.RegisterFile("enb.proto", fileDescriptor_4640cfb595a9e9c8) }
-
-var fileDescriptor_4640cfb595a9e9c8 = []byte{
-       // 1869 bytes of a gzipped FileDescriptorProto
-       0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x58, 0x4b, 0x73, 0xdb, 0xc8,
-       0x11, 0x36, 0x1f, 0xe2, 0xa3, 0x65, 0x51, 0xf0, 0x48, 0x96, 0xa8, 0xb5, 0xbc, 0xe6, 0x52, 0x8e,
-       0x57, 0xc5, 0xda, 0x52, 0x24, 0x4a, 0xf2, 0x6e, 0x92, 0x43, 0x16, 0x24, 0x41, 0x0b, 0x15, 0x11,
-       0xe0, 0x0e, 0xa8, 0xd5, 0x7a, 0xb7, 0x92, 0x29, 0x10, 0x18, 0x52, 0xa8, 0x80, 0x00, 0x0d, 0x80,
-       0x89, 0xb5, 0xa9, 0x54, 0xe5, 0x90, 0x63, 0x4e, 0x39, 0x25, 0x87, 0x5c, 0x72, 0xcf, 0xdf, 0x48,
-       0xe5, 0x7f, 0xe4, 0x57, 0xe4, 0x90, 0xaa, 0xd4, 0x0c, 0x1e, 0x04, 0x4d, 0xca, 0xd6, 0x29, 0xb5,
-       0x27, 0x35, 0xba, 0xbf, 0x7e, 0x4c, 0x4f, 0xf7, 0x47, 0x40, 0x50, 0xa6, 0xce, 0xf0, 0x68, 0xea,
-       0xb9, 0x81, 0x8b, 0x4a, 0xd4, 0x09, 0xac, 0xc0, 0xa2, 0x7e, 0xfd, 0xcf, 0x19, 0xc8, 0x49, 0xce,
-       0x10, 0x7d, 0x06, 0x25, 0xea, 0x0c, 0x49, 0x70, 0x3b, 0xa5, 0xd5, 0x4c, 0x2d, 0x73, 0x58, 0x69,
-       0x3e, 0x3a, 0x8a, 0x41, 0x47, 0x92, 0x33, 0x1c, 0xdc, 0x4e, 0x29, 0x2e, 0xd2, 0x50, 0x40, 0x3f,
-       0x83, 0x87, 0x3e, 0xf5, 0x7e, 0x43, 0x4d, 0x62, 0x50, 0xdb, 0xf6, 0xab, 0xd9, 0x5a, 0xee, 0x70,
-       0xbd, 0x59, 0x9d, 0x7b, 0x68, 0xdc, 0xda, 0xa6, 0xb6, 0x2d, 0x3b, 0x23, 0x17, 0xaf, 0xfb, 0xc9,
-       0xb3, 0x8f, 0x6a, 0xf0, 0x70, 0x3c, 0x23, 0x63, 0xcf, 0x9d, 0x4d, 0x89, 0x65, 0xfa, 0xd5, 0x5c,
-       0x2d, 0x77, 0x58, 0xc6, 0x30, 0x9e, 0xbd, 0x62, 0x2a, 0xd9, 0xf4, 0xeb, 0xff, 0x2e, 0x40, 0x65,
-       0x31, 0x02, 0x12, 0x20, 0x37, 0x35, 0x2c, 0x5e, 0xda, 0x06, 0x66, 0x22, 0xda, 0x85, 0x22, 0x4b,
-       0x4e, 0x2c, 0xb3, 0x9a, 0xad, 0x65, 0x0e, 0xcb, 0xb8, 0xc0, 0x1e, 0x65, 0x93, 0x41, 0x03, 0xdd,
-       0xa8, 0xe6, 0xb8, 0x92, 0x89, 0xe8, 0x53, 0xd8, 0x1c, 0x7a, 0xae, 0x6e, 0x1a, 0xba, 0x1f, 0x90,
-       0xa9, 0x3d, 0x71, 0xfc, 0x6a, 0x9e, 0x27, 0xad, 0x24, 0xea, 0x3e, 0xd3, 0x22, 0x09, 0x1e, 0x19,
-       0x37, 0xae, 0x65, 0x50, 0x42, 0x67, 0x81, 0xa7, 0x93, 0x89, 0x6b, 0xd2, 0xea, 0x5a, 0x2d, 0x73,
-       0xb8, 0xde, 0xdc, 0x9b, 0x1f, 0xae, 0xcd, 0x21, 0xd2, 0xd5, 0x00, 0x8b, 0x3d, 0xd7, 0xa4, 0x78,
-       0x33, 0xf4, 0x91, 0x98, 0x0b, 0x53, 0xa0, 0x53, 0x80, 0x94, 0x7f, 0x81, 0xb7, 0x73, 0x3b, 0xd5,
-       0x4e, 0x66, 0x3b, 0xe2, 0xae, 0x65, 0x9a, 0x38, 0x5d, 0xc1, 0xae, 0x33, 0x9b, 0x0c, 0xa9, 0x47,
-       0xdc, 0x11, 0xd1, 0x9d, 0x80, 0x3a, 0x8e, 0x4e, 0xa6, 0xae, 0x17, 0xf8, 0xd5, 0x22, 0x8f, 0xf0,
-       0xf1, 0x3c, 0x82, 0xc2, 0x81, 0xea, 0x48, 0x0c, 0x61, 0x7d, 0x86, 0xc2, 0xdb, 0xce, 0x0a, 0x2d,
-       0xea, 0xc1, 0xd6, 0xd4, 0xd3, 0x8d, 0x1b, 0x62, 0xb8, 0xce, 0xc8, 0x1a, 0xcf, 0x3c, 0x3d, 0xb0,
-       0x5c, 0xa7, 0x5a, 0xe2, 0x87, 0xda, 0x9f, 0x87, 0xec, 0x33, 0x50, 0x3b, 0x8d, 0xc1, 0x68, 0xba,
-       0xa4, 0x43, 0x32, 0x6c, 0x4f, 0x86, 0xfe, 0xc8, 0x21, 0xfe, 0x6c, 0x38, 0xf2, 0xf4, 0x09, 0x25,
-       0x96, 0x33, 0x72, 0xfd, 0x6a, 0x99, 0x4f, 0xc0, 0xee, 0x3c, 0x5e, 0x8f, 0xa1, 0xb4, 0x08, 0x84,
-       0xd1, 0x24, 0xfd, 0xc8, 0x6e, 0xd4, 0x47, 0x8f, 0xa1, 0x60, 0xf8, 0x63, 0x76, 0x7f, 0xc0, 0xaf,
-       0x6a, 0xcd, 0xf0, 0xc7, 0xb2, 0x89, 0x7e, 0x0e, 0xfb, 0x93, 0xe1, 0xc4, 0x27, 0x6c, 0x64, 0xd8,
-       0x4d, 0xe8, 0x1e, 0xd5, 0x89, 0x65, 0xc6, 0x81, 0xab, 0xeb, 0xfc, 0xe6, 0xf6, 0x18, 0x46, 0x0b,
-       0x21, 0xa2, 0x47, 0x75, 0x39, 0x01, 0xb0, 0xdb, 0x9e, 0xcc, 0xec, 0xc0, 0x1a, 0xea, 0x8e, 0x19,
-       0x55, 0xf7, 0xb0, 0x96, 0x3b, 0xdc, 0xc0, 0x95, 0x44, 0x1d, 0x16, 0x60, 0xc2, 0xfe, 0xc8, 0xa3,
-       0x6f, 0x48, 0x04, 0x34, 0x2d, 0x43, 0x0f, 0x5c, 0x8f, 0x4c, 0x3d, 0xcb, 0xf5, 0xac, 0xe0, 0xb6,
-       0xba, 0xc1, 0xdb, 0x7e, 0x30, 0x3f, 0x53, 0xd7, 0xa3, 0x6f, 0x5a, 0xdc, 0x3d, 0xc2, 0xf6, 0x23,
-       0x28, 0xde, 0x1b, 0xdd, 0x65, 0x42, 0x0a, 0x6c, 0xb3, 0x04, 0xbf, 0xb5, 0xcc, 0xe0, 0x86, 0x78,
-       0xd4, 0x9c, 0x19, 0xd4, 0x24, 0xbe, 0x55, 0xad, 0xf0, 0xe8, 0xa9, 0x1b, 0x68, 0xc5, 0x28, 0x1c,
-       0x82, 0x34, 0x19, 0xa3, 0xe1, 0xbb, 0x3a, 0x0b, 0xbd, 0x82, 0x4d, 0x87, 0x5a, 0xe3, 0x9b, 0xa1,
-       0x3b, 0xf3, 0xa2, 0xe3, 0x6d, 0xf2, 0xe6, 0xa7, 0xe7, 0x23, 0x06, 0xb0, 0x83, 0x7a, 0x93, 0xf0,
-       0x3a, 0x2b, 0x4e, 0x5a, 0xeb, 0xd7, 0xbf, 0x83, 0xcd, 0x77, 0x26, 0x19, 0x1d, 0x40, 0x6e, 0x64,
-       0x9a, 0x7c, 0xcb, 0xd6, 0xd3, 0x04, 0xd0, 0x35, 0x79, 0xcb, 0x30, 0xb3, 0x32, 0x50, 0x60, 0x86,
-       0x4b, 0xb7, 0x00, 0x1a, 0xc4, 0xa0, 0xc0, 0x34, 0xeb, 0x47, 0xb0, 0xc6, 0xc7, 0xbc, 0xfe, 0x23,
-       0xc8, 0xf3, 0xd0, 0xeb, 0x50, 0xbc, 0x52, 0x7e, 0xa1, 0xa8, 0xd7, 0x8a, 0xf0, 0x00, 0x15, 0x21,
-       0xd7, 0xed, 0x74, 0x84, 0x0c, 0x13, 0x06, 0x9d, 0x8e, 0x90, 0xad, 0x8f, 0x61, 0x7b, 0x55, 0xd1,
-       0x08, 0x41, 0x9e, 0x1a, 0xe3, 0x70, 0xf1, 0xcb, 0x98, 0xcb, 0x31, 0x17, 0x64, 0x17, 0xb8, 0x80,
-       0xea, 0x1e, 0x19, 0x19, 0x0e, 0x5f, 0xfb, 0x0d, 0x5c, 0xa0, 0xba, 0xd7, 0x35, 0x9c, 0x98, 0x0b,
-       0xf2, 0x09, 0x17, 0xd4, 0xff, 0x99, 0x85, 0x8d, 0x85, 0xd9, 0x44, 0x23, 0xd8, 0xf7, 0x74, 0xd3,
-       0x72, 0xc3, 0x71, 0xd6, 0x6d, 0xdb, 0x35, 0x78, 0x6e, 0x32, 0xa5, 0x9e, 0xe5, 0x9a, 0x11, 0x1d,
-       0x3e, 0x9f, 0x1f, 0x14, 0x27, 0x68, 0x31, 0x01, 0xf7, 0x39, 0x16, 0x7f, 0xe4, 0xdd, 0x69, 0x43,
-       0x5f, 0xde, 0x95, 0xc7, 0x1d, 0x8d, 0x7c, 0x1a, 0x44, 0xe7, 0x59, 0x19, 0x41, 0xe5, 0x08, 0xf4,
-       0x63, 0xd8, 0x4a, 0xd6, 0x6e, 0xee, 0x1f, 0x31, 0x1d, 0x8a, 0x4d, 0x73, 0x37, 0xf4, 0x2d, 0x54,
-       0x57, 0x38, 0x84, 0x2c, 0x9f, 0xe7, 0xc7, 0xaa, 0xa5, 0x38, 0x7b, 0xc9, 0x9f, 0x93, 0xfe, 0x8e,
-       0xbf, 0x52, 0x5f, 0xff, 0x47, 0x16, 0xd0, 0x32, 0x69, 0xa0, 0x23, 0xd8, 0xf2, 0x5c, 0x37, 0x20,
-       0x3e, 0x7d, 0x33, 0xa3, 0x8e, 0xc1, 0xf8, 0xc1, 0xa4, 0x6f, 0x23, 0xe2, 0x7e, 0xc4, 0x4c, 0x5a,
-       0x64, 0x91, 0x99, 0x01, 0xf5, 0xe0, 0xe0, 0x7b, 0xea, 0xb9, 0xc4, 0x70, 0x3d, 0x8f, 0xda, 0x61,
-       0x7d, 0xdf, 0xbb, 0x0e, 0x7d, 0x87, 0xaf, 0xc2, 0xe6, 0xd4, 0x18, 0xb4, 0x3d, 0x47, 0x7e, 0xeb,
-       0x3a, 0x74, 0x31, 0xfd, 0x0b, 0xd8, 0xbc, 0xb1, 0xc6, 0x37, 0xc4, 0x9f, 0x52, 0x6a, 0x92, 0x91,
-       0xad, 0x8f, 0x79, 0x7b, 0x4a, 0x78, 0x83, 0xa9, 0x35, 0xa6, 0xed, 0xda, 0xfa, 0x18, 0x9d, 0xc1,
-       0x4e, 0x48, 0x8b, 0x6c, 0x71, 0x59, 0x39, 0xb7, 0xf1, 0x35, 0xe4, 0x79, 0xa6, 0x6d, 0x6e, 0xed,
-       0xc6, 0xc6, 0xe8, 0x02, 0x7e, 0x0a, 0x7b, 0x2b, 0xc8, 0x34, 0x3a, 0xe2, 0x1a, 0x77, 0xdc, 0x5d,
-       0x26, 0x4d, 0x7e, 0xd0, 0xfa, 0xdf, 0xf2, 0x50, 0x8c, 0x56, 0x24, 0x3d, 0xaf, 0x99, 0x85, 0x79,
-       0xfd, 0x1a, 0x76, 0x02, 0x4f, 0x77, 0xfc, 0x89, 0xe5, 0xfb, 0x2c, 0x72, 0xb2, 0xff, 0xbc, 0x01,
-       0x95, 0xe6, 0xb3, 0xd4, 0xba, 0xa5, 0x70, 0x73, 0xea, 0x78, 0x1c, 0xac, 0x52, 0xb3, 0x5f, 0x81,
-       0xf9, 0x20, 0xf8, 0xbe, 0x35, 0x76, 0x26, 0xd4, 0x09, 0x78, 0x6b, 0x16, 0x38, 0x28, 0x99, 0x81,
-       0x04, 0x93, 0x9a, 0xab, 0x44, 0x87, 0xbe, 0x82, 0xc7, 0xfe, 0x94, 0x1a, 0x96, 0x6e, 0x2f, 0xfe,
-       0x0e, 0xf0, 0xe6, 0xad, 0x37, 0x9f, 0xa6, 0x02, 0x86, 0xb0, 0x34, 0xf3, 0xe3, 0x2d, 0x7f, 0x59,
-       0x89, 0xa6, 0x50, 0xd3, 0x4d, 0xd3, 0x62, 0xfd, 0x62, 0x51, 0x57, 0x46, 0x0f, 0x7f, 0x89, 0x3f,
-       0x9d, 0x47, 0x17, 0x13, 0x8f, 0x55, 0x79, 0x9e, 0xea, 0xef, 0x33, 0xa3, 0x3f, 0x65, 0xa0, 0xf1,
-       0xbe, 0x94, 0xf4, 0x6d, 0x40, 0x1d, 0x3f, 0xbc, 0xdf, 0x91, 0xcb, 0x7f, 0xc6, 0xd7, 0x9b, 0xc7,
-       0xf7, 0x48, 0x2e, 0xc5, 0x8e, 0xbc, 0x8a, 0x17, 0xfa, 0xbd, 0x70, 0xf5, 0x7f, 0x65, 0xe1, 0xc5,
-       0xfd, 0x42, 0xa2, 0xbf, 0x66, 0xe0, 0xe8, 0x7d, 0x95, 0x4f, 0xf5, 0x20, 0xa0, 0x9e, 0xe3, 0xcf,
-       0x8f, 0x10, 0x91, 0xd8, 0xf9, 0x3d, 0xaa, 0xef, 0x47, 0xce, 0x47, 0x49, 0x4e, 0xdc, 0xd0, 0x3f,
-       0x04, 0x4e, 0xb0, 0xe8, 0x4b, 0x10, 0x8c, 0x5b, 0xc3, 0xb6, 0x0c, 0x32, 0xf5, 0xe8, 0xc8, 0x7a,
-       0x4b, 0x4c, 0x3b, 0x9a, 0xdd, 0x9d, 0xd4, 0x1b, 0x14, 0x47, 0xf4, 0x39, 0x00, 0x57, 0x8c, 0xd4,
-       0x53, 0xc7, 0x5e, 0x8e, 0x30, 0xb3, 0xa3, 0x41, 0xbd, 0x57, 0x84, 0x2b, 0xbb, 0xfe, 0xf7, 0x2c,
-       0x3c, 0x7d, 0xef, 0x68, 0xa0, 0xdf, 0xc3, 0xf3, 0xfb, 0x34, 0x30, 0x6a, 0xdb, 0x67, 0xf7, 0x68,
-       0xdb, 0x51, 0xdc, 0x0a, 0xfc, 0xc9, 0x07, 0xbb, 0xf5, 0x83, 0x68, 0xd2, 0x7f, 0x33, 0x50, 0x8c,
-       0x7e, 0xd7, 0xd1, 0x13, 0x28, 0xcf, 0xec, 0x45, 0x46, 0x2a, 0x71, 0x05, 0xe3, 0xa4, 0x27, 0x50,
-       0x36, 0x13, 0x63, 0xc8, 0xc3, 0x25, 0x33, 0x36, 0x7e, 0x07, 0x7b, 0x33, 0x9b, 0xdc, 0xc1, 0x59,
-       0xb9, 0xfb, 0x71, 0xd6, 0xee, 0xcc, 0x5e, 0x69, 0x60, 0xc1, 0xcd, 0x3b, 0x83, 0xe7, 0xef, 0x19,
-       0xdc, 0x5c, 0x1d, 0xbc, 0xfe, 0x9f, 0x0c, 0x6c, 0xad, 0x1a, 0x8d, 0x5f, 0xc1, 0xde, 0x87, 0xe6,
-       0xa1, 0x7e, 0x27, 0xbf, 0xcd, 0xa7, 0x60, 0xd7, 0xff, 0x01, 0xdf, 0xfd, 0x1f, 0x33, 0xb0, 0xf9,
-       0x4e, 0xe5, 0xf5, 0x37, 0x50, 0x4a, 0x6a, 0x5c, 0x78, 0x59, 0x2b, 0x41, 0x5e, 0xd3, 0xfa, 0xc7,
-       0x42, 0x26, 0x92, 0x4e, 0x84, 0x6c, 0x24, 0x35, 0x85, 0x5c, 0x24, 0x9d, 0x0a, 0xf9, 0x48, 0x3a,
-       0x13, 0xd6, 0x22, 0xe9, 0x5c, 0x28, 0x44, 0xd2, 0x4b, 0xa1, 0x18, 0x49, 0x9f, 0x0b, 0xa5, 0x48,
-       0xfa, 0x42, 0x28, 0xd7, 0xff, 0x92, 0x81, 0xbd, 0x3b, 0x17, 0xaa, 0xfe, 0xbb, 0xff, 0x7b, 0x41,
-       0x91, 0xf4, 0x13, 0x01, 0xea, 0x17, 0xf0, 0xc9, 0x07, 0x19, 0xb2, 0x7e, 0x00, 0xe5, 0x39, 0xf1,
-       0x2d, 0x94, 0x58, 0x86, 0x35, 0x56, 0xd8, 0xb1, 0x90, 0x69, 0xfc, 0x1a, 0xf6, 0xee, 0xfc, 0x6e,
-       0x40, 0x87, 0xf0, 0x3c, 0x72, 0x22, 0x5d, 0x2c, 0x7d, 0x45, 0x5a, 0xa2, 0xd2, 0x21, 0xb2, 0xd2,
-       0x91, 0xdb, 0xe2, 0x40, 0xc5, 0xa4, 0x8f, 0x65, 0x15, 0xcb, 0x83, 0xd7, 0xc2, 0x03, 0xb4, 0x05,
-       0x9b, 0x8a, 0x3a, 0x20, 0x2d, 0xac, 0x8a, 0x9d, 0xb6, 0xa8, 0x0d, 0x24, 0xf6, 0xfa, 0xbc, 0x09,
-       0xeb, 0x69, 0x45, 0xb6, 0x21, 0x01, 0x5a, 0xfe, 0x8c, 0x40, 0x35, 0xd8, 0x8f, 0xb3, 0xb0, 0x04,
-       0xd7, 0x72, 0x67, 0x70, 0x41, 0xb0, 0xd4, 0xb9, 0x6a, 0x4b, 0x1d, 0xa2, 0xc9, 0xc2, 0x03, 0xb4,
-       0x01, 0x65, 0xad, 0x7d, 0x21, 0x75, 0xae, 0x2e, 0x59, 0xdc, 0xc6, 0x2f, 0x61, 0x67, 0xf5, 0xdb,
-       0x20, 0x7a, 0x0e, 0xb5, 0x38, 0x94, 0x76, 0xd5, 0xea, 0x62, 0xb1, 0x27, 0x11, 0xf1, 0xf2, 0x52,
-       0x6d, 0x8b, 0x03, 0x59, 0x55, 0xc8, 0xe0, 0x75, 0x5f, 0x0a, 0xc3, 0xa9, 0x8a, 0x44, 0xb8, 0x59,
-       0xc8, 0xa0, 0x0a, 0x40, 0x57, 0xbd, 0xc2, 0xd1, 0x73, 0xb6, 0xf1, 0x16, 0x3e, 0xba, 0xfb, 0x1d,
-       0x3a, 0xdd, 0x13, 0x2c, 0x76, 0x64, 0x75, 0x29, 0x49, 0x5f, 0xc2, 0xb2, 0xda, 0x11, 0x1e, 0xa0,
-       0x02, 0x64, 0x95, 0x13, 0x21, 0xc3, 0xff, 0x36, 0x85, 0x2c, 0xff, 0x7b, 0x26, 0xe4, 0xf8, 0xdf,
-       0x2f, 0x84, 0x3c, 0xfb, 0xba, 0x50, 0x4e, 0x5e, 0x0a, 0x6b, 0x5c, 0x38, 0x6d, 0x0a, 0x85, 0xc6,
-       0xd7, 0xb0, 0xbd, 0xea, 0xdb, 0x19, 0x1d, 0xc0, 0xb3, 0x38, 0xa7, 0x72, 0xd5, 0x6b, 0x49, 0x98,
-       0xa8, 0x5d, 0x22, 0x2a, 0x03, 0x49, 0x51, 0x44, 0xd2, 0x57, 0xf1, 0x40, 0x0b, 0xbf, 0x5a, 0x44,
-       0x9e, 0x8f, 0x0b, 0x2c, 0x21, 0x17, 0xce, 0x84, 0x5c, 0x83, 0x42, 0x31, 0xfa, 0x27, 0x09, 0xda,
-       0x06, 0x21, 0x0e, 0x25, 0x29, 0xad, 0x54, 0x47, 0x7a, 0x62, 0x1b, 0xab, 0x4c, 0x27, 0x64, 0xd0,
-       0x43, 0x28, 0x5d, 0xa8, 0x3d, 0x89, 0x3f, 0x65, 0xd9, 0xdd, 0x6a, 0x17, 0x2a, 0x1e, 0x90, 0x39,
-       0x24, 0x87, 0x10, 0x54, 0x2e, 0x55, 0xe5, 0x55, 0x4a, 0x97, 0x6f, 0x04, 0x80, 0x96, 0xdf, 0xd0,
-       0xd0, 0x33, 0x78, 0xb2, 0x7c, 0x27, 0x9a, 0x26, 0xbf, 0x52, 0x7a, 0x92, 0x32, 0x08, 0x0b, 0xd7,
-       0xc4, 0xe3, 0xb0, 0x70, 0x4d, 0x3c, 0x09, 0x0b, 0xd7, 0x44, 0xb6, 0x2d, 0x5c, 0x38, 0x0d, 0x7b,
-       0xa5, 0x89, 0x67, 0x61, 0xaf, 0x34, 0x91, 0xad, 0x0a, 0x17, 0x5e, 0x0a, 0xc5, 0x46, 0x1b, 0x1e,
-       0xa6, 0xd9, 0x04, 0xed, 0xc1, 0xe3, 0x38, 0x5f, 0xfb, 0x75, 0xfb, 0x52, 0x6e, 0x93, 0x3e, 0x96,
-       0xba, 0xf2, 0x37, 0xc2, 0x03, 0x04, 0x50, 0x50, 0x54, 0xdc, 0x13, 0x2f, 0xc3, 0x33, 0x4a, 0xdf,
-       0x0c, 0x24, 0xa5, 0xc3, 0x27, 0xf3, 0x0f, 0x19, 0x78, 0xbc, 0x9a, 0xe5, 0xeb, 0xf0, 0x71, 0x1c,
-       0x6e, 0x80, 0x45, 0x45, 0xeb, 0xc9, 0x9a, 0xc6, 0xae, 0x39, 0x19, 0xd5, 0xf0, 0x04, 0xad, 0xeb,
-       0x97, 0xe1, 0xc6, 0xb7, 0xae, 0x4f, 0xce, 0xc3, 0x8d, 0x6f, 0x5d, 0x37, 0xcf, 0xc3, 0x8d, 0x6f,
-       0x5d, 0x9f, 0x1f, 0x87, 0x1b, 0xdf, 0xba, 0xfe, 0xfc, 0x5c, 0x58, 0x63, 0x0b, 0xd8, 0xba, 0x3e,
-       0x39, 0x3e, 0x0e, 0xcf, 0xd1, 0xba, 0x3e, 0x11, 0x8a, 0xc3, 0x02, 0xff, 0xe7, 0xd7, 0xe9, 0xff,
-       0x02, 0x00, 0x00, 0xff, 0xff, 0x10, 0x6b, 0x1a, 0x98, 0x09, 0x13, 0x00, 0x00,
+       return file_enb_proto_rawDescGZIP(), []int{14}
+}
+
+var File_enb_proto protoreflect.FileDescriptor
+
+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, 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, 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, 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,
+       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, 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, 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, 0x42, 0x33, 0x5a, 0x31, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e,
+       0x6f, 0x2d, 0x72, 0x61, 0x6e, 0x2d, 0x73, 0x63, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x72, 0x2f, 0x72,
+       0x69, 0x63, 0x2d, 0x70, 0x6c, 0x74, 0x2f, 0x6e, 0x6f, 0x64, 0x65, 0x62, 0x2d, 0x72, 0x6e, 0x69,
+       0x62, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
+       0x6f, 0x33,
+}
+
+var (
+       file_enb_proto_rawDescOnce sync.Once
+       file_enb_proto_rawDescData = file_enb_proto_rawDesc
+)
+
+func file_enb_proto_rawDescGZIP() []byte {
+       file_enb_proto_rawDescOnce.Do(func() {
+               file_enb_proto_rawDescData = protoimpl.X.CompressGZIP(file_enb_proto_rawDescData)
+       })
+       return file_enb_proto_rawDescData
+}
+
+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
+       (BandwidthReducedSI)(0),                          // 1: entities.BandwidthReducedSI
+       (SubframeAllocationType)(0),                      // 2: entities.SubframeAllocationType
+       (RadioframeAllocationPeriod)(0),                  // 3: entities.RadioframeAllocationPeriod
+       (NumberOfAntennaPorts)(0),                        // 4: entities.NumberOfAntennaPorts
+       (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{
+       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() }
+func file_enb_proto_init() {
+       if File_enb_proto != nil {
+               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 {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*ServedCellInfo); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*ChoiceEUTRAMode); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*Eutra); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*NeighbourInformation); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*MbsfnSubframe); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*PrachConfiguration); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*TddInfo); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*AdditionalSpecialSubframeExtensionInfo); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*AdditionalSpecialSubframeInfo); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*FddInfo); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*SpecialSubframeInfo); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*SpecialSubframe); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*AdditionalSpecialSubframe); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+               file_enb_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+                       switch v := v.(*AdditionalSpecialSubframePatterns); i {
+                       case 0:
+                               return &v.state
+                       case 1:
+                               return &v.sizeCache
+                       case 2:
+                               return &v.unknownFields
+                       default:
+                               return nil
+                       }
+               }
+       }
+       type x struct{}
+       out := protoimpl.TypeBuilder{
+               File: protoimpl.DescBuilder{
+                       GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+                       RawDescriptor: file_enb_proto_rawDesc,
+                       NumEnums:      12,
+                       NumMessages:   15,
+                       NumExtensions: 0,
+                       NumServices:   0,
+               },
+               GoTypes:           file_enb_proto_goTypes,
+               DependencyIndexes: file_enb_proto_depIdxs,
+               EnumInfos:         file_enb_proto_enumTypes,
+               MessageInfos:      file_enb_proto_msgTypes,
+       }.Build()
+       File_enb_proto = out.File
+       file_enb_proto_rawDesc = nil
+       file_enb_proto_goTypes = nil
+       file_enb_proto_depIdxs = nil
 }