VOL-2172: Delete tech-profile on ONU
- Changes to supporting DELETE_TCONT_REQ and DELETE_GEM_PORT_REQ
- Bug fix to not delete tp instance for ONU-SingleInstance case
- Use voltha proto version 2.1.1
- Use voltha-lib-go version 2.2.19
- Bump voltha-openolt-adapter version to 2.2.4
Change-Id: I8caa4d13fec37227befddbe2444489b923169fbe
diff --git a/VERSION b/VERSION
index 5859406..530cdd9 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.2.3
+2.2.4
diff --git a/adaptercore/openolt_flowmgr.go b/adaptercore/openolt_flowmgr.go
index 67d2a2a..565c8c8 100644
--- a/adaptercore/openolt_flowmgr.go
+++ b/adaptercore/openolt_flowmgr.go
@@ -1220,6 +1220,56 @@
return id, Downstream
}
+func (f *OpenOltFlowMgr) sendDeleteGemPortToChild(intfID uint32, onuID uint32, uniID uint32, gemPortID uint32, tpPath string) error {
+ onuDevice, err := f.getOnuChildDevice(intfID, onuID)
+ if err != nil {
+ log.Errorw("error fetching child device from core", log.Fields{"onuId": onuID})
+ return err
+ }
+
+ delGemPortMsg := &ic.InterAdapterDeleteGemPortMessage{UniId: uniID, TpPath: tpPath, GemPortId: gemPortID}
+ log.Debugw("sending gem port delete to openonu adapter", log.Fields{"msg": *delGemPortMsg})
+ if sendErr := f.deviceHandler.AdapterProxy.SendInterAdapterMessage(context.Background(),
+ delGemPortMsg,
+ ic.InterAdapterMessageType_DELETE_GEM_PORT_REQUEST,
+ f.deviceHandler.deviceType,
+ onuDevice.Type,
+ onuDevice.Id,
+ onuDevice.ProxyAddress.DeviceId, ""); sendErr != nil {
+ log.Errorw("failure sending del gem port to onu adapter", log.Fields{"fromAdapter": f.deviceHandler.deviceType,
+ "toAdapter": onuDevice.Type, "onuId": onuDevice.Id,
+ "proxyDeviceId": onuDevice.ProxyAddress.DeviceId})
+ return sendErr
+ }
+ log.Debugw("success sending del gem port to onu adapter", log.Fields{"msg": delGemPortMsg})
+ return nil
+}
+
+func (f *OpenOltFlowMgr) sendDeleteTcontToChild(intfID uint32, onuID uint32, uniID uint32, allocID uint32, tpPath string) error {
+ onuDevice, err := f.getOnuChildDevice(intfID, onuID)
+ if err != nil {
+ log.Errorw("error fetching child device from core", log.Fields{"onuId": onuID})
+ return err
+ }
+
+ delTcontMsg := &ic.InterAdapterDeleteTcontMessage{UniId: uniID, TpPath: tpPath, AllocId: allocID}
+ log.Debugw("sending tcont delete to openonu adapter", log.Fields{"msg": *delTcontMsg})
+ if sendErr := f.deviceHandler.AdapterProxy.SendInterAdapterMessage(context.Background(),
+ delTcontMsg,
+ ic.InterAdapterMessageType_DELETE_TCONT_REQUEST,
+ f.deviceHandler.deviceType,
+ onuDevice.Type,
+ onuDevice.Id,
+ onuDevice.ProxyAddress.DeviceId, ""); sendErr != nil {
+ log.Errorw("failure sending del tcont to onu adapter", log.Fields{"fromAdapter": f.deviceHandler.deviceType,
+ "toAdapter": onuDevice.Type, "onuId": onuDevice.Id,
+ "proxyDeviceId": onuDevice.ProxyAddress.DeviceId})
+ return sendErr
+ }
+ log.Debugw("success sending del tcont to onu adapter", log.Fields{"msg": delTcontMsg})
+ return nil
+}
+
//clearResources clears pon resources in kv store and the device
func (f *OpenOltFlowMgr) clearResources(flow *ofp.OfpFlowStats, Intf uint32, onuID int32, uniID int32,
gemPortID int32, flowID uint32, flowDirection string,
@@ -1282,6 +1332,11 @@
f.resourceMgr.DeleteFlowIDsForGem(Intf, uint32(gemPortID))
f.resourceMgr.FreeGemPortID(Intf, uint32(onuID), uint32(uniID), uint32(gemPortID))
f.onuIdsLock.Unlock()
+ // Delete the gem port on the ONU.
+ if err := f.sendDeleteGemPortToChild(Intf, uint32(onuID), uint32(uniID), uint32(gemPortID), tpPath); err != nil {
+ log.Errorw("error processing delete gem-port towards onu",
+ log.Fields{"err": err, "pon": Intf, "onuID": onuID, "uniID": uniID, "gemPortId": gemPortID})
+ }
ok, _ := f.isTechProfileUsedByAnotherGem(Intf, uint32(onuID), uint32(uniID), tpID, techprofileInst, uint32(gemPortID))
if !ok {
@@ -1290,7 +1345,11 @@
f.RemoveSchedulerQueues(schedQueue{direction: tp_pb.Direction_DOWNSTREAM, intfID: Intf, onuID: uint32(onuID), uniID: uint32(uniID), tpID: tpID, uniPort: portNum, tpInst: techprofileInst})
f.DeleteTechProfileInstance(Intf, uint32(onuID), uint32(uniID), "", tpID)
f.resourceMgr.FreeAllocID(Intf, uint32(onuID), uint32(uniID), techprofileInst.UsScheduler.AllocID)
- // TODO: Send a "Delete TechProfile" message to ONU to do its own clean up on ONU OMCI stack
+ // Delete the TCONT on the ONU.
+ if err := f.sendDeleteTcontToChild(Intf, uint32(onuID), uint32(uniID), uint32(techprofileInst.UsScheduler.AllocID), tpPath); err != nil {
+ log.Errorw("error processing delete tcont towards onu",
+ log.Fields{"pon": Intf, "onuID": onuID, "uniID": uniID, "allocId": techprofileInst.UsScheduler.AllocID})
+ }
}
}
}
@@ -1834,20 +1893,19 @@
// So, we need to check and make sure that no other gem port is referring to the given TP ID
// on any other uni port.
tpInstances := f.techprofile[ponIntf].FindAllTpInstances(tpID, ponIntf, onuID)
+ log.Debugw("got single instance tp instances", log.Fields{"tpInstances": tpInstances})
for i := 0; i < len(tpInstances); i++ {
tpI := tpInstances[i]
tpGemPorts := tpI.UpstreamGemPortAttributeList
- for _, currentGemPort := range currentGemPorts {
- for _, tpGemPort := range tpGemPorts {
- if (currentGemPort == tpGemPort.GemportID) && (currentGemPort != gemPortID) {
- log.Debugw("tech-profile-is-in-use-by-gem", log.Fields{"gemPort": currentGemPort})
- return true, currentGemPort
- }
+ for _, tpGemPort := range tpGemPorts {
+ if tpGemPort.GemportID != gemPortID {
+ log.Debugw("single instance tp is in use by gem", log.Fields{"gemPort": tpGemPort.GemportID})
+ return true, tpGemPort.GemportID
}
}
}
}
- log.Debug("tech-profile-is-not-in-use-by-any-gem")
+ log.Debug("tech profile is not in use by any gem")
return false, 0
}
diff --git a/go.mod b/go.mod
index 06cdf31..08c6f75 100644
--- a/go.mod
+++ b/go.mod
@@ -5,9 +5,8 @@
require (
github.com/gogo/protobuf v1.3.1
github.com/golang/protobuf v1.3.2
- github.com/opencord/voltha-lib-go/v2 v2.2.18
- github.com/opencord/voltha-protos/v2 v2.1.0
- github.com/phayes/freeport v0.0.0-20180830031419-95f893ade6f2 // indirect
+ github.com/opencord/voltha-lib-go/v2 v2.2.19
+ github.com/opencord/voltha-protos/v2 v2.1.1
go.etcd.io/etcd v0.0.0-20190930204107-236ac2a90522
google.golang.org/grpc v1.25.1
)
diff --git a/go.sum b/go.sum
index cee2dca..b1abe82 100644
--- a/go.sum
+++ b/go.sum
@@ -192,10 +192,11 @@
github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
github.com/onsi/gomega v1.4.2 h1:3mYCb7aPxS/RU7TI1y4rkEn1oKmPRjNJLNEXgw7MH2I=
github.com/onsi/gomega v1.4.2/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
-github.com/opencord/voltha-lib-go/v2 v2.2.18 h1:rie20b5QNhRjh9GL4THHdGiHSUqrx4VMEJw44hZI1Mk=
-github.com/opencord/voltha-lib-go/v2 v2.2.18/go.mod h1:vjd6PeC3vOYDE/ztMjraWFB2Wv1oaPcum1Xz4RJbSoE=
-github.com/opencord/voltha-protos/v2 v2.1.0 h1:Ppl4/3OBwgGuLk0ob9vIEwMGGRC2sqe7WWoxh0Uq/n0=
+github.com/opencord/voltha-lib-go/v2 v2.2.19 h1:t5feQyT+/EmE1nuS1uRIDKLITvaLIaBtX6NsMTfVxs8=
+github.com/opencord/voltha-lib-go/v2 v2.2.19/go.mod h1:CoY2amUEsbO2grCbJRk7G+Fl1Xb7vQLw3/uGLbTz0Ms=
github.com/opencord/voltha-protos/v2 v2.1.0/go.mod h1:6kOcfYi1CadWowFxI2SH5wLfHrsRECZLZlD2MFK6WDI=
+github.com/opencord/voltha-protos/v2 v2.1.1 h1:Kyo3bL2bDtE5fyV/Ecci3d+Ui8LeXTVq9R3DD+IbKEQ=
+github.com/opencord/voltha-protos/v2 v2.1.1/go.mod h1:6kOcfYi1CadWowFxI2SH5wLfHrsRECZLZlD2MFK6WDI=
github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc=
github.com/pascaldekloe/goe v0.1.0 h1:cBOtyMzM9HTpWjXfbbunk26uA6nG3a8n06Wieeh0MwY=
github.com/pascaldekloe/goe v0.1.0/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc=
diff --git a/vendor/github.com/opencord/voltha-lib-go/v2/pkg/techprofile/tech_profile.go b/vendor/github.com/opencord/voltha-lib-go/v2/pkg/techprofile/tech_profile.go
index 2c0edae..12cda8d 100644
--- a/vendor/github.com/opencord/voltha-lib-go/v2/pkg/techprofile/tech_profile.go
+++ b/vendor/github.com/opencord/voltha-lib-go/v2/pkg/techprofile/tech_profile.go
@@ -768,7 +768,7 @@
// FindAllTpInstances returns all TechProfile instances for a given TechProfile table-id, pon interface ID and onu ID.
func (t *TechProfileMgr) FindAllTpInstances(techProfiletblID uint32, ponIntf uint32, onuID uint32) []TechProfile {
var tp TechProfile
- onuTpInstancePath := fmt.Sprintf("%d/%s/pon-{%d}/onu-{%d}", techProfiletblID, t.resourceMgr.GetTechnology(), ponIntf, onuID)
+ onuTpInstancePath := fmt.Sprintf("%s/%d/pon-{%d}/onu-{%d}", t.resourceMgr.GetTechnology(), techProfiletblID, ponIntf, onuID)
if kvPairs, _ := t.config.KVBackend.List(onuTpInstancePath); kvPairs != nil {
tpInstances := make([]TechProfile, 0, len(kvPairs))
diff --git a/vendor/github.com/opencord/voltha-protos/v2/go/inter_container/inter_container.pb.go b/vendor/github.com/opencord/voltha-protos/v2/go/inter_container/inter_container.pb.go
index e529427..56bfd36 100644
--- a/vendor/github.com/opencord/voltha-protos/v2/go/inter_container/inter_container.pb.go
+++ b/vendor/github.com/opencord/voltha-protos/v2/go/inter_container/inter_container.pb.go
@@ -264,18 +264,22 @@
InterAdapterMessageType_ONU_IND_REQUEST InterAdapterMessageType_Types = 6
InterAdapterMessageType_ONU_IND_RESPONSE InterAdapterMessageType_Types = 7
InterAdapterMessageType_TECH_PROFILE_DOWNLOAD_REQUEST InterAdapterMessageType_Types = 8
+ InterAdapterMessageType_DELETE_GEM_PORT_REQUEST InterAdapterMessageType_Types = 9
+ InterAdapterMessageType_DELETE_TCONT_REQUEST InterAdapterMessageType_Types = 10
)
var InterAdapterMessageType_Types_name = map[int32]string{
- 0: "FLOW_REQUEST",
- 1: "FLOW_RESPONSE",
- 2: "OMCI_REQUEST",
- 3: "OMCI_RESPONSE",
- 4: "METRICS_REQUEST",
- 5: "METRICS_RESPONSE",
- 6: "ONU_IND_REQUEST",
- 7: "ONU_IND_RESPONSE",
- 8: "TECH_PROFILE_DOWNLOAD_REQUEST",
+ 0: "FLOW_REQUEST",
+ 1: "FLOW_RESPONSE",
+ 2: "OMCI_REQUEST",
+ 3: "OMCI_RESPONSE",
+ 4: "METRICS_REQUEST",
+ 5: "METRICS_RESPONSE",
+ 6: "ONU_IND_REQUEST",
+ 7: "ONU_IND_RESPONSE",
+ 8: "TECH_PROFILE_DOWNLOAD_REQUEST",
+ 9: "DELETE_GEM_PORT_REQUEST",
+ 10: "DELETE_TCONT_REQUEST",
}
var InterAdapterMessageType_Types_value = map[string]int32{
@@ -288,6 +292,8 @@
"ONU_IND_REQUEST": 6,
"ONU_IND_RESPONSE": 7,
"TECH_PROFILE_DOWNLOAD_REQUEST": 8,
+ "DELETE_GEM_PORT_REQUEST": 9,
+ "DELETE_TCONT_REQUEST": 10,
}
func (x InterAdapterMessageType_Types) String() string {
@@ -1186,6 +1192,116 @@
return ""
}
+type InterAdapterDeleteGemPortMessage struct {
+ UniId uint32 `protobuf:"varint,1,opt,name=uni_id,json=uniId,proto3" json:"uni_id,omitempty"`
+ TpPath string `protobuf:"bytes,2,opt,name=tp_path,json=tpPath,proto3" json:"tp_path,omitempty"`
+ GemPortId uint32 `protobuf:"varint,3,opt,name=gem_port_id,json=gemPortId,proto3" json:"gem_port_id,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *InterAdapterDeleteGemPortMessage) Reset() { *m = InterAdapterDeleteGemPortMessage{} }
+func (m *InterAdapterDeleteGemPortMessage) String() string { return proto.CompactTextString(m) }
+func (*InterAdapterDeleteGemPortMessage) ProtoMessage() {}
+func (*InterAdapterDeleteGemPortMessage) Descriptor() ([]byte, []int) {
+ return fileDescriptor_941f0031a549667f, []int{18}
+}
+
+func (m *InterAdapterDeleteGemPortMessage) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_InterAdapterDeleteGemPortMessage.Unmarshal(m, b)
+}
+func (m *InterAdapterDeleteGemPortMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_InterAdapterDeleteGemPortMessage.Marshal(b, m, deterministic)
+}
+func (m *InterAdapterDeleteGemPortMessage) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_InterAdapterDeleteGemPortMessage.Merge(m, src)
+}
+func (m *InterAdapterDeleteGemPortMessage) XXX_Size() int {
+ return xxx_messageInfo_InterAdapterDeleteGemPortMessage.Size(m)
+}
+func (m *InterAdapterDeleteGemPortMessage) XXX_DiscardUnknown() {
+ xxx_messageInfo_InterAdapterDeleteGemPortMessage.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_InterAdapterDeleteGemPortMessage proto.InternalMessageInfo
+
+func (m *InterAdapterDeleteGemPortMessage) GetUniId() uint32 {
+ if m != nil {
+ return m.UniId
+ }
+ return 0
+}
+
+func (m *InterAdapterDeleteGemPortMessage) GetTpPath() string {
+ if m != nil {
+ return m.TpPath
+ }
+ return ""
+}
+
+func (m *InterAdapterDeleteGemPortMessage) GetGemPortId() uint32 {
+ if m != nil {
+ return m.GemPortId
+ }
+ return 0
+}
+
+type InterAdapterDeleteTcontMessage struct {
+ UniId uint32 `protobuf:"varint,1,opt,name=uni_id,json=uniId,proto3" json:"uni_id,omitempty"`
+ TpPath string `protobuf:"bytes,2,opt,name=tp_path,json=tpPath,proto3" json:"tp_path,omitempty"`
+ AllocId uint32 `protobuf:"varint,3,opt,name=alloc_id,json=allocId,proto3" json:"alloc_id,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *InterAdapterDeleteTcontMessage) Reset() { *m = InterAdapterDeleteTcontMessage{} }
+func (m *InterAdapterDeleteTcontMessage) String() string { return proto.CompactTextString(m) }
+func (*InterAdapterDeleteTcontMessage) ProtoMessage() {}
+func (*InterAdapterDeleteTcontMessage) Descriptor() ([]byte, []int) {
+ return fileDescriptor_941f0031a549667f, []int{19}
+}
+
+func (m *InterAdapterDeleteTcontMessage) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_InterAdapterDeleteTcontMessage.Unmarshal(m, b)
+}
+func (m *InterAdapterDeleteTcontMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_InterAdapterDeleteTcontMessage.Marshal(b, m, deterministic)
+}
+func (m *InterAdapterDeleteTcontMessage) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_InterAdapterDeleteTcontMessage.Merge(m, src)
+}
+func (m *InterAdapterDeleteTcontMessage) XXX_Size() int {
+ return xxx_messageInfo_InterAdapterDeleteTcontMessage.Size(m)
+}
+func (m *InterAdapterDeleteTcontMessage) XXX_DiscardUnknown() {
+ xxx_messageInfo_InterAdapterDeleteTcontMessage.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_InterAdapterDeleteTcontMessage proto.InternalMessageInfo
+
+func (m *InterAdapterDeleteTcontMessage) GetUniId() uint32 {
+ if m != nil {
+ return m.UniId
+ }
+ return 0
+}
+
+func (m *InterAdapterDeleteTcontMessage) GetTpPath() string {
+ if m != nil {
+ return m.TpPath
+ }
+ return ""
+}
+
+func (m *InterAdapterDeleteTcontMessage) GetAllocId() uint32 {
+ if m != nil {
+ return m.AllocId
+ }
+ return 0
+}
+
type InterAdapterResponseBody struct {
Status bool `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
// Types that are valid to be assigned to Payload:
@@ -1201,7 +1317,7 @@
func (m *InterAdapterResponseBody) String() string { return proto.CompactTextString(m) }
func (*InterAdapterResponseBody) ProtoMessage() {}
func (*InterAdapterResponseBody) Descriptor() ([]byte, []int) {
- return fileDescriptor_941f0031a549667f, []int{18}
+ return fileDescriptor_941f0031a549667f, []int{20}
}
func (m *InterAdapterResponseBody) XXX_Unmarshal(b []byte) error {
@@ -1286,7 +1402,7 @@
func (m *InterAdapterMessage) String() string { return proto.CompactTextString(m) }
func (*InterAdapterMessage) ProtoMessage() {}
func (*InterAdapterMessage) Descriptor() ([]byte, []int) {
- return fileDescriptor_941f0031a549667f, []int{19}
+ return fileDescriptor_941f0031a549667f, []int{21}
}
func (m *InterAdapterMessage) XXX_Unmarshal(b []byte) error {
@@ -1343,6 +1459,8 @@
proto.RegisterType((*InterAdapterHeader)(nil), "voltha.InterAdapterHeader")
proto.RegisterType((*InterAdapterOmciMessage)(nil), "voltha.InterAdapterOmciMessage")
proto.RegisterType((*InterAdapterTechProfileDownloadMessage)(nil), "voltha.InterAdapterTechProfileDownloadMessage")
+ proto.RegisterType((*InterAdapterDeleteGemPortMessage)(nil), "voltha.InterAdapterDeleteGemPortMessage")
+ proto.RegisterType((*InterAdapterDeleteTcontMessage)(nil), "voltha.InterAdapterDeleteTcontMessage")
proto.RegisterType((*InterAdapterResponseBody)(nil), "voltha.InterAdapterResponseBody")
proto.RegisterType((*InterAdapterMessage)(nil), "voltha.InterAdapterMessage")
}
@@ -1352,81 +1470,87 @@
}
var fileDescriptor_941f0031a549667f = []byte{
- // 1208 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x56, 0xdb, 0x72, 0xdb, 0x44,
- 0x18, 0xae, 0x13, 0x1f, 0xff, 0x24, 0xae, 0xb3, 0x69, 0x5a, 0x37, 0x69, 0xa7, 0x41, 0x3d, 0x52,
- 0xc0, 0x19, 0xdc, 0x61, 0xa0, 0x57, 0xe0, 0xd8, 0xca, 0x44, 0x4c, 0x62, 0x0b, 0xd9, 0x69, 0x67,
- 0xb8, 0xd1, 0xc8, 0xd2, 0xda, 0xd6, 0x44, 0xd6, 0xaa, 0xab, 0x55, 0x8a, 0x6e, 0x98, 0xe1, 0x8e,
- 0xc7, 0xe0, 0x8a, 0x47, 0xe0, 0x9e, 0x5b, 0x1e, 0x84, 0xe7, 0x60, 0xf6, 0x20, 0x5b, 0x36, 0x0d,
- 0xcc, 0xc0, 0xdd, 0xfe, 0xff, 0xf7, 0xed, 0xe1, 0x3f, 0xec, 0xb7, 0x0b, 0x8f, 0xaf, 0x49, 0xc0,
- 0x66, 0x8e, 0x1d, 0x51, 0xc2, 0x48, 0x7c, 0xec, 0x87, 0x0c, 0x53, 0xdb, 0x25, 0x21, 0x73, 0xfc,
- 0x10, 0xd3, 0x96, 0x70, 0xa3, 0xb2, 0x24, 0x1d, 0x1c, 0xac, 0x92, 0x5d, 0x32, 0x9f, 0x93, 0x50,
- 0x72, 0xd6, 0x31, 0x69, 0x29, 0xec, 0xfe, 0x94, 0x90, 0x69, 0x80, 0x8f, 0x85, 0x35, 0x4e, 0x26,
- 0xc7, 0x4e, 0x98, 0x2a, 0xe8, 0xd1, 0xea, 0x34, 0x12, 0xe1, 0x70, 0x12, 0x90, 0xf7, 0xf6, 0xe7,
- 0xaf, 0x14, 0x41, 0x5b, 0x25, 0x04, 0x64, 0xea, 0xbb, 0x4e, 0x60, 0x7b, 0xf8, 0xda, 0x77, 0xb1,
- 0xe4, 0x68, 0x87, 0x50, 0x19, 0x32, 0x3a, 0x4a, 0x23, 0x8c, 0x1a, 0xb0, 0x79, 0xed, 0x04, 0xcd,
- 0xc2, 0x51, 0xe1, 0x45, 0xcd, 0xe2, 0x43, 0x0e, 0x1a, 0x21, 0x5b, 0x07, 0x37, 0x25, 0xf8, 0x00,
- 0xaa, 0x27, 0x84, 0x04, 0xeb, 0x68, 0x55, 0xa2, 0x1a, 0x94, 0x4d, 0xc7, 0xbd, 0xc2, 0x0c, 0x35,
- 0xa1, 0x12, 0x39, 0x69, 0x40, 0x1c, 0x4f, 0xe0, 0xdb, 0x56, 0x66, 0x6a, 0x3a, 0xd4, 0x74, 0x4a,
- 0x09, 0xed, 0x12, 0x0f, 0x6b, 0x5f, 0x41, 0xc9, 0x25, 0x1e, 0x8e, 0xd1, 0x3d, 0xd8, 0xbb, 0xec,
- 0x0f, 0x2f, 0x4d, 0x73, 0x60, 0x8d, 0xf4, 0x9e, 0x6d, 0xe9, 0xdf, 0x5d, 0xea, 0xc3, 0x51, 0xe3,
- 0x16, 0xba, 0x0b, 0xc8, 0xe8, 0xbf, 0xe9, 0x9c, 0x1b, 0x3d, 0xdb, 0xec, 0x58, 0x9d, 0x0b, 0x7d,
- 0xa4, 0x5b, 0xc3, 0x46, 0x41, 0x3b, 0x85, 0x92, 0x58, 0x06, 0x3d, 0x85, 0x22, 0x5f, 0x42, 0x6c,
- 0xb3, 0xd5, 0xde, 0x6d, 0xa9, 0x44, 0x2e, 0xf6, 0xb0, 0x04, 0x8c, 0xee, 0x42, 0x99, 0x62, 0x27,
- 0x26, 0x61, 0x73, 0x43, 0x84, 0xaa, 0x2c, 0xed, 0xb7, 0x02, 0x94, 0xcf, 0xb0, 0xe3, 0x61, 0x8a,
- 0xea, 0xb0, 0xe1, 0x7b, 0x2a, 0x13, 0x1b, 0xbe, 0x87, 0x9e, 0x43, 0x91, 0xa5, 0x11, 0x16, 0x13,
- 0xea, 0xed, 0xbd, 0x6c, 0xe5, 0x0b, 0x1c, 0xc7, 0xce, 0x14, 0xf3, 0x14, 0x58, 0x82, 0x80, 0x1e,
- 0x02, 0x4c, 0x28, 0x99, 0xdb, 0x8c, 0x44, 0xbe, 0xdb, 0xdc, 0x14, 0x0b, 0xd4, 0xb8, 0x67, 0xc4,
- 0x1d, 0xe8, 0x3e, 0x54, 0x19, 0x51, 0x60, 0x51, 0x80, 0x15, 0x46, 0x24, 0x74, 0x08, 0xb5, 0x2b,
- 0x9c, 0x2a, 0xac, 0x24, 0xb0, 0xea, 0x15, 0x4e, 0x25, 0xf8, 0x00, 0x6a, 0xcc, 0x9f, 0xe3, 0x98,
- 0x39, 0xf3, 0xa8, 0x59, 0x16, 0x35, 0x58, 0x3a, 0xb4, 0x33, 0xa8, 0x76, 0xe8, 0x34, 0x99, 0xe3,
- 0x90, 0xf1, 0x4a, 0x5c, 0xe1, 0x34, 0x2b, 0xe2, 0x15, 0x4e, 0xd1, 0x4b, 0x28, 0x5d, 0x3b, 0x41,
- 0x22, 0x0f, 0xbf, 0xd5, 0xbe, 0xd3, 0x92, 0x1d, 0xd5, 0xca, 0x3a, 0xaa, 0xd5, 0x09, 0x53, 0x4b,
- 0x52, 0x34, 0x1f, 0xf6, 0x0d, 0xde, 0xc6, 0xdd, 0xac, 0x8b, 0x55, 0x84, 0xe8, 0x19, 0x94, 0x67,
- 0x22, 0x35, 0x2a, 0xb9, 0xf5, 0x2c, 0x05, 0x32, 0x61, 0x96, 0x42, 0xd1, 0x0b, 0x28, 0x8e, 0x89,
- 0x97, 0xfe, 0xe3, 0x5e, 0x82, 0xa1, 0xfd, 0x5a, 0x80, 0xfb, 0xab, 0x7b, 0x59, 0xf8, 0x5d, 0x82,
- 0x63, 0x76, 0x42, 0xbc, 0x94, 0x87, 0x41, 0x23, 0x57, 0x15, 0x88, 0x0f, 0xd1, 0x13, 0x28, 0x3a,
- 0x74, 0x1a, 0x37, 0x37, 0x8f, 0x36, 0x5f, 0x6c, 0xb5, 0x1b, 0xd9, 0xfe, 0x59, 0xe0, 0x96, 0x40,
- 0xd1, 0x27, 0xb0, 0x4b, 0x71, 0x1c, 0x91, 0x30, 0xc6, 0x36, 0xc5, 0xef, 0x12, 0x9f, 0x62, 0x4f,
- 0x64, 0xba, 0x6a, 0x35, 0x32, 0xc0, 0x52, 0x7e, 0xf4, 0x04, 0xea, 0x14, 0x47, 0x01, 0x4f, 0xfa,
- 0x4a, 0xde, 0xb7, 0x85, 0x77, 0x24, 0x0b, 0xa3, 0x79, 0x70, 0xb0, 0x7e, 0x4e, 0xb9, 0x8e, 0x38,
- 0x68, 0x13, 0x2a, 0x71, 0xe2, 0xba, 0x38, 0x8e, 0x55, 0xf7, 0x67, 0x26, 0xfa, 0x94, 0xb7, 0x59,
- 0x9c, 0x04, 0x4c, 0xb4, 0xc1, 0x4d, 0xc9, 0x50, 0x1c, 0xed, 0xe7, 0x02, 0x34, 0x86, 0xef, 0x7d,
- 0xe6, 0xce, 0xba, 0x4e, 0xe4, 0x8c, 0xfd, 0xc0, 0x67, 0x29, 0xfa, 0x18, 0x8a, 0x1e, 0x8e, 0x5d,
- 0x95, 0xf3, 0xfd, 0x56, 0xfe, 0x8a, 0x93, 0x49, 0x64, 0x73, 0xd0, 0x12, 0x14, 0x64, 0xc0, 0xed,
- 0x58, 0x4c, 0xb7, 0x27, 0xd8, 0x61, 0x09, 0xc5, 0xb1, 0xaa, 0xc1, 0xd1, 0xdf, 0x66, 0xad, 0xf1,
- 0xac, 0xba, 0x74, 0x9c, 0x2a, 0x5b, 0x7b, 0x0d, 0x75, 0x93, 0x50, 0x96, 0x3b, 0xc7, 0x73, 0x28,
- 0x46, 0x84, 0x32, 0x75, 0x8e, 0x45, 0xfb, 0x9f, 0x4b, 0x41, 0xe1, 0x64, 0x4b, 0x10, 0xb4, 0x1f,
- 0xa1, 0xd1, 0x13, 0xea, 0xd2, 0xf3, 0x63, 0x97, 0x5c, 0x63, 0x9e, 0xe5, 0xf5, 0xbb, 0x74, 0x08,
- 0xb5, 0xc8, 0xa1, 0x38, 0x64, 0xb6, 0xef, 0xa9, 0x02, 0x57, 0xa5, 0xc3, 0xf0, 0xd0, 0x23, 0xd8,
- 0x92, 0xf2, 0x64, 0x8b, 0xfb, 0x26, 0x2f, 0x10, 0x48, 0x97, 0x50, 0x9a, 0x07, 0x50, 0x8b, 0x92,
- 0x71, 0xe0, 0xc7, 0x33, 0x4c, 0xd5, 0x15, 0x5a, 0x3a, 0xb4, 0x3f, 0x0b, 0x70, 0x4f, 0x14, 0xab,
- 0xe3, 0x39, 0x11, 0x5b, 0xb4, 0x2f, 0x9f, 0xa9, 0xfd, 0x51, 0x80, 0x12, 0x1f, 0xc4, 0xa8, 0x01,
- 0xdb, 0xa7, 0xe7, 0x83, 0xb7, 0x39, 0x69, 0xd9, 0x85, 0x1d, 0xe5, 0x19, 0x9a, 0x83, 0xfe, 0x50,
- 0x6f, 0x14, 0x38, 0x69, 0x70, 0xd1, 0x35, 0x16, 0xa4, 0x0d, 0x4e, 0x52, 0x1e, 0x45, 0xda, 0x44,
- 0x7b, 0x70, 0xfb, 0x42, 0x1f, 0x59, 0x46, 0x77, 0xb8, 0xe0, 0x15, 0xd1, 0x1d, 0x68, 0x2c, 0x9d,
- 0x8a, 0x5a, 0xe2, 0xd4, 0x41, 0xff, 0xd2, 0x36, 0xfa, 0x4b, 0x49, 0x2b, 0x73, 0xea, 0xd2, 0xa9,
- 0xa8, 0x15, 0xf4, 0x11, 0x3c, 0x1c, 0xe9, 0xdd, 0x33, 0xdb, 0xb4, 0x06, 0xa7, 0xc6, 0xb9, 0x6e,
- 0xf7, 0x06, 0x6f, 0xfb, 0xe7, 0x83, 0xce, 0x72, 0x62, 0x55, 0xfb, 0x69, 0x03, 0x50, 0x3e, 0xd0,
- 0x1b, 0x74, 0xeb, 0xf5, 0x8a, 0x6e, 0x3d, 0xcd, 0x0a, 0x77, 0x43, 0x8a, 0x5a, 0x22, 0x3d, 0xff,
- 0x5b, 0xc9, 0x8e, 0x60, 0x9b, 0x11, 0xf5, 0xca, 0xf0, 0x1a, 0xcb, 0x4b, 0x05, 0x8c, 0xc8, 0xd6,
- 0x30, 0x3c, 0xf4, 0x0c, 0x6e, 0x47, 0x94, 0xfc, 0x90, 0xe6, 0x48, 0x65, 0x41, 0xda, 0x11, 0xee,
- 0x05, 0x6f, 0x45, 0xf6, 0x2a, 0xeb, 0xb2, 0xf7, 0xfb, 0x5a, 0xb1, 0x07, 0x73, 0xd7, 0xcf, 0xf4,
- 0xaa, 0x09, 0x95, 0xb9, 0x1c, 0x66, 0x8f, 0x8e, 0x32, 0xd1, 0xb7, 0x50, 0x77, 0x49, 0x18, 0x62,
- 0x97, 0xd9, 0x31, 0x73, 0x58, 0x12, 0xab, 0xe4, 0x3c, 0x6e, 0xa9, 0x37, 0xb9, 0x2b, 0xd1, 0xa1,
- 0x00, 0x57, 0x2d, 0x6b, 0xc7, 0xcd, 0x9b, 0xe8, 0x1b, 0x90, 0x07, 0xb6, 0x1d, 0xcf, 0xa3, 0x5c,
- 0x02, 0xe4, 0x4d, 0x3f, 0xcc, 0xf2, 0x2c, 0x03, 0x69, 0x99, 0x9c, 0xd3, 0x91, 0x14, 0x6b, 0x3b,
- 0xca, 0x59, 0xda, 0x10, 0x9e, 0xe5, 0x43, 0x18, 0x61, 0x77, 0x66, 0x52, 0x32, 0xf1, 0x03, 0xdc,
- 0x23, 0xef, 0x43, 0xfe, 0x4a, 0x66, 0x11, 0xed, 0x43, 0x39, 0x09, 0x7d, 0x5b, 0x95, 0x77, 0xc7,
- 0x2a, 0x25, 0xa1, 0x6f, 0x78, 0x08, 0x41, 0x31, 0x72, 0xd8, 0x4c, 0x5d, 0x24, 0x31, 0xd6, 0x7e,
- 0x29, 0x40, 0x33, 0xbf, 0xea, 0x8a, 0x60, 0xdd, 0x85, 0xb2, 0x8a, 0x5b, 0xea, 0x95, 0xb2, 0xd0,
- 0xcb, 0x7f, 0x57, 0xee, 0xb3, 0x5b, 0x52, 0xbb, 0xd1, 0x17, 0x50, 0x24, 0x73, 0xd7, 0x57, 0xe1,
- 0x3e, 0xfa, 0x50, 0x5b, 0xe5, 0x8a, 0xc1, 0xa7, 0x71, 0xfa, 0x49, 0x6d, 0xf1, 0x13, 0xd0, 0x62,
- 0xd8, 0xfb, 0x40, 0x13, 0xa2, 0xf6, 0xda, 0x33, 0x73, 0xf0, 0xa1, 0xa5, 0xff, 0xeb, 0x93, 0xf3,
- 0xf2, 0x6b, 0xd8, 0xca, 0x75, 0x3b, 0xda, 0x82, 0xca, 0x52, 0x01, 0xb6, 0xa1, 0x9a, 0xbb, 0xfc,
- 0xfb, 0xb0, 0xdb, 0xd3, 0xdf, 0x18, 0x5d, 0xdd, 0xee, 0x19, 0xc3, 0xee, 0xe0, 0x8d, 0x6e, 0xe9,
- 0xbd, 0xc6, 0xc6, 0xc9, 0xeb, 0xef, 0xbf, 0x9c, 0xfa, 0x6c, 0x96, 0x8c, 0x79, 0xaf, 0x88, 0x0f,
- 0x97, 0x4b, 0xa8, 0xa7, 0x3e, 0x6c, 0x9f, 0x65, 0xdf, 0xb7, 0xf6, 0xf1, 0x94, 0xac, 0xff, 0x06,
- 0xcd, 0x5b, 0x66, 0xc1, 0x2c, 0x8e, 0xcb, 0x82, 0xf3, 0xea, 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0x13, 0x5d, 0x07, 0xfd, 0x3b, 0x0a, 0x00, 0x00,
+ // 1303 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x56, 0x49, 0x6f, 0xdb, 0x46,
+ 0x14, 0x8e, 0x76, 0xe9, 0xc9, 0x56, 0xe4, 0x71, 0x1c, 0xcb, 0x76, 0x16, 0x97, 0x59, 0x9b, 0xb6,
+ 0x32, 0xea, 0xa0, 0x68, 0x73, 0x6a, 0x65, 0x89, 0x8e, 0x59, 0xd8, 0x92, 0x4a, 0xc9, 0x09, 0xd0,
+ 0x0b, 0x41, 0x93, 0x63, 0x89, 0x30, 0xc5, 0x61, 0x86, 0x43, 0xa7, 0xbc, 0x14, 0xe8, 0xad, 0x7f,
+ 0xa2, 0x40, 0x4f, 0xfd, 0x09, 0xbd, 0xf7, 0x9f, 0x15, 0xb3, 0x50, 0xa2, 0x94, 0xa4, 0x01, 0xd2,
+ 0xdb, 0xbc, 0xf7, 0x7d, 0xb3, 0xbd, 0xe5, 0x9b, 0x81, 0x07, 0xd7, 0xc4, 0x67, 0x53, 0xdb, 0x0a,
+ 0x29, 0x61, 0x24, 0x3a, 0xf0, 0x02, 0x86, 0xa9, 0xe5, 0x90, 0x80, 0xd9, 0x5e, 0x80, 0x69, 0x5b,
+ 0xb8, 0x51, 0x59, 0x92, 0x76, 0x77, 0x97, 0xc9, 0x0e, 0x99, 0xcd, 0x48, 0x20, 0x39, 0xab, 0x98,
+ 0xb4, 0x14, 0xb6, 0x33, 0x21, 0x64, 0xe2, 0xe3, 0x03, 0x61, 0x5d, 0xc4, 0x97, 0x07, 0x76, 0x90,
+ 0x28, 0xe8, 0xfe, 0xf2, 0x34, 0x12, 0xe2, 0xe0, 0xd2, 0x27, 0x6f, 0xad, 0xaf, 0x9f, 0x2b, 0x82,
+ 0xb6, 0x4c, 0xf0, 0xc9, 0xc4, 0x73, 0x6c, 0xdf, 0x72, 0xf1, 0xb5, 0xe7, 0x60, 0xc9, 0xd1, 0xf6,
+ 0xa0, 0x32, 0x62, 0x74, 0x9c, 0x84, 0x18, 0x35, 0xa1, 0x70, 0x6d, 0xfb, 0xad, 0xdc, 0x7e, 0xee,
+ 0x69, 0xcd, 0xe4, 0x43, 0x0e, 0x1a, 0x01, 0x5b, 0x05, 0x0b, 0x12, 0xbc, 0x03, 0xd5, 0x23, 0x42,
+ 0xfc, 0x55, 0xb4, 0x2a, 0x51, 0x0d, 0xca, 0x43, 0xdb, 0xb9, 0xc2, 0x0c, 0xb5, 0xa0, 0x12, 0xda,
+ 0x89, 0x4f, 0x6c, 0x57, 0xe0, 0x6b, 0x66, 0x6a, 0x6a, 0x3a, 0xd4, 0x74, 0x4a, 0x09, 0xed, 0x12,
+ 0x17, 0x6b, 0xdf, 0x41, 0xc9, 0x21, 0x2e, 0x8e, 0xd0, 0x36, 0x6c, 0x9e, 0xf7, 0x47, 0xe7, 0xc3,
+ 0xe1, 0xc0, 0x1c, 0xeb, 0x3d, 0xcb, 0xd4, 0x7f, 0x3a, 0xd7, 0x47, 0xe3, 0xe6, 0x0d, 0x74, 0x1b,
+ 0x90, 0xd1, 0x7f, 0xd5, 0x39, 0x35, 0x7a, 0xd6, 0xb0, 0x63, 0x76, 0xce, 0xf4, 0xb1, 0x6e, 0x8e,
+ 0x9a, 0x39, 0xed, 0x18, 0x4a, 0x62, 0x19, 0xf4, 0x08, 0x8a, 0x7c, 0x09, 0xb1, 0x4d, 0xfd, 0x70,
+ 0xa3, 0xad, 0x02, 0x39, 0xdf, 0xc3, 0x14, 0x30, 0xba, 0x0d, 0x65, 0x8a, 0xed, 0x88, 0x04, 0xad,
+ 0xbc, 0xb8, 0xaa, 0xb2, 0xb4, 0xbf, 0x73, 0x50, 0x3e, 0xc1, 0xb6, 0x8b, 0x29, 0x6a, 0x40, 0xde,
+ 0x73, 0x55, 0x24, 0xf2, 0x9e, 0x8b, 0x9e, 0x40, 0x91, 0x25, 0x21, 0x16, 0x13, 0x1a, 0x87, 0x9b,
+ 0xe9, 0xca, 0x67, 0x38, 0x8a, 0xec, 0x09, 0xe6, 0x21, 0x30, 0x05, 0x01, 0xdd, 0x05, 0xb8, 0xa4,
+ 0x64, 0x66, 0x31, 0x12, 0x7a, 0x4e, 0xab, 0x20, 0x16, 0xa8, 0x71, 0xcf, 0x98, 0x3b, 0xd0, 0x0e,
+ 0x54, 0x19, 0x51, 0x60, 0x51, 0x80, 0x15, 0x46, 0x24, 0xb4, 0x07, 0xb5, 0x2b, 0x9c, 0x28, 0xac,
+ 0x24, 0xb0, 0xea, 0x15, 0x4e, 0x24, 0x78, 0x07, 0x6a, 0xcc, 0x9b, 0xe1, 0x88, 0xd9, 0xb3, 0xb0,
+ 0x55, 0x16, 0x39, 0x58, 0x38, 0xb4, 0x13, 0xa8, 0x76, 0xe8, 0x24, 0x9e, 0xe1, 0x80, 0xf1, 0x4c,
+ 0x5c, 0xe1, 0x24, 0x4d, 0xe2, 0x15, 0x4e, 0xd0, 0x33, 0x28, 0x5d, 0xdb, 0x7e, 0x2c, 0x0f, 0x5f,
+ 0x3f, 0xbc, 0xd5, 0x96, 0x15, 0xd5, 0x4e, 0x2b, 0xaa, 0xdd, 0x09, 0x12, 0x53, 0x52, 0x34, 0x0f,
+ 0xb6, 0x0c, 0x5e, 0xc6, 0xdd, 0xb4, 0x8a, 0xd5, 0x0d, 0xd1, 0x63, 0x28, 0x4f, 0x45, 0x68, 0x54,
+ 0x70, 0x1b, 0x69, 0x08, 0x64, 0xc0, 0x4c, 0x85, 0xa2, 0xa7, 0x50, 0xbc, 0x20, 0x6e, 0xf2, 0x9f,
+ 0x7b, 0x09, 0x86, 0xf6, 0x57, 0x0e, 0x76, 0x96, 0xf7, 0x32, 0xf1, 0x9b, 0x18, 0x47, 0xec, 0x88,
+ 0xb8, 0x09, 0xbf, 0x06, 0x0d, 0x1d, 0x95, 0x20, 0x3e, 0x44, 0x0f, 0xa1, 0x68, 0xd3, 0x49, 0xd4,
+ 0x2a, 0xec, 0x17, 0x9e, 0xd6, 0x0f, 0x9b, 0xe9, 0xfe, 0xe9, 0xc5, 0x4d, 0x81, 0xa2, 0x2f, 0x60,
+ 0x83, 0xe2, 0x28, 0x24, 0x41, 0x84, 0x2d, 0x8a, 0xdf, 0xc4, 0x1e, 0xc5, 0xae, 0x88, 0x74, 0xd5,
+ 0x6c, 0xa6, 0x80, 0xa9, 0xfc, 0xe8, 0x21, 0x34, 0x28, 0x0e, 0x7d, 0x1e, 0xf4, 0xa5, 0xb8, 0xaf,
+ 0x09, 0xef, 0x58, 0x26, 0x46, 0x73, 0x61, 0x77, 0xf5, 0x9c, 0x72, 0x1d, 0x71, 0xd0, 0x16, 0x54,
+ 0xa2, 0xd8, 0x71, 0x70, 0x14, 0xa9, 0xea, 0x4f, 0x4d, 0xf4, 0x25, 0x2f, 0xb3, 0x28, 0xf6, 0x99,
+ 0x28, 0x83, 0x0f, 0x05, 0x43, 0x71, 0xb4, 0xdf, 0x73, 0xd0, 0x1c, 0xbd, 0xf5, 0x98, 0x33, 0xed,
+ 0xda, 0xa1, 0x7d, 0xe1, 0xf9, 0x1e, 0x4b, 0xd0, 0xe7, 0x50, 0x74, 0x71, 0xe4, 0xa8, 0x98, 0x6f,
+ 0xb5, 0xb3, 0x2d, 0x4e, 0x2e, 0x43, 0x8b, 0x83, 0xa6, 0xa0, 0x20, 0x03, 0x6e, 0x46, 0x62, 0xba,
+ 0x75, 0x89, 0x6d, 0x16, 0x53, 0x1c, 0xa9, 0x1c, 0xec, 0xbf, 0x33, 0x6b, 0x85, 0x67, 0x36, 0xa4,
+ 0xe3, 0x58, 0xd9, 0xda, 0x0b, 0x68, 0x0c, 0x09, 0x65, 0x99, 0x73, 0x3c, 0x81, 0x62, 0x48, 0x28,
+ 0x53, 0xe7, 0x98, 0x97, 0xff, 0xa9, 0x14, 0x14, 0x4e, 0x36, 0x05, 0x41, 0xfb, 0x15, 0x9a, 0x3d,
+ 0xa1, 0x2e, 0x3d, 0x2f, 0x72, 0xc8, 0x35, 0xe6, 0x51, 0x5e, 0xed, 0xa5, 0x3d, 0xa8, 0x85, 0x36,
+ 0xc5, 0x01, 0xb3, 0x3c, 0x57, 0x25, 0xb8, 0x2a, 0x1d, 0x86, 0x8b, 0xee, 0x43, 0x5d, 0xca, 0x93,
+ 0x25, 0xfa, 0x4d, 0x36, 0x10, 0x48, 0x97, 0x50, 0x9a, 0x3b, 0x50, 0x0b, 0xe3, 0x0b, 0xdf, 0x8b,
+ 0xa6, 0x98, 0xaa, 0x16, 0x5a, 0x38, 0xb4, 0x3f, 0xf2, 0xb0, 0x2d, 0x92, 0xd5, 0x71, 0xed, 0x90,
+ 0xcd, 0xcb, 0x97, 0xcf, 0xd4, 0x7e, 0xcb, 0x43, 0x89, 0x0f, 0x22, 0xd4, 0x84, 0xb5, 0xe3, 0xd3,
+ 0xc1, 0xeb, 0x8c, 0xb4, 0x6c, 0xc0, 0xba, 0xf2, 0x8c, 0x86, 0x83, 0xfe, 0x48, 0x6f, 0xe6, 0x38,
+ 0x69, 0x70, 0xd6, 0x35, 0xe6, 0xa4, 0x3c, 0x27, 0x29, 0x8f, 0x22, 0x15, 0xd0, 0x26, 0xdc, 0x3c,
+ 0xd3, 0xc7, 0xa6, 0xd1, 0x1d, 0xcd, 0x79, 0x45, 0x74, 0x0b, 0x9a, 0x0b, 0xa7, 0xa2, 0x96, 0x38,
+ 0x75, 0xd0, 0x3f, 0xb7, 0x8c, 0xfe, 0x42, 0xd2, 0xca, 0x9c, 0xba, 0x70, 0x2a, 0x6a, 0x05, 0x7d,
+ 0x06, 0x77, 0xc7, 0x7a, 0xf7, 0xc4, 0x1a, 0x9a, 0x83, 0x63, 0xe3, 0x54, 0xb7, 0x7a, 0x83, 0xd7,
+ 0xfd, 0xd3, 0x41, 0x67, 0x31, 0xb1, 0x8a, 0xf6, 0x60, 0xbb, 0xa7, 0x9f, 0xea, 0x63, 0xdd, 0x7a,
+ 0xa9, 0x9f, 0x59, 0x5c, 0x2a, 0xe7, 0x60, 0x0d, 0xb5, 0xe0, 0x96, 0x02, 0xc7, 0xdd, 0x41, 0x7f,
+ 0x81, 0x00, 0x8f, 0x01, 0xca, 0xc6, 0xe7, 0x03, 0x72, 0xf7, 0x62, 0x49, 0xee, 0x1e, 0xa5, 0xf9,
+ 0xfe, 0x40, 0x64, 0xdb, 0x22, 0xaa, 0xff, 0x5b, 0x00, 0xf7, 0x61, 0x8d, 0x11, 0xf5, 0x38, 0xf1,
+ 0xd2, 0x90, 0xbd, 0x08, 0x8c, 0xc8, 0x8a, 0x32, 0x5c, 0xf4, 0x18, 0x6e, 0x86, 0x94, 0xfc, 0x92,
+ 0x64, 0x48, 0x65, 0x41, 0x5a, 0x17, 0xee, 0x39, 0x6f, 0x49, 0x2d, 0x2b, 0xab, 0x6a, 0xf9, 0x4f,
+ 0x6e, 0xb9, 0x46, 0x06, 0x33, 0xc7, 0x4b, 0x65, 0xae, 0x05, 0x95, 0x99, 0x1c, 0xa6, 0x6f, 0x95,
+ 0x32, 0xd1, 0x8f, 0xd0, 0x70, 0x48, 0x10, 0x60, 0x87, 0x59, 0x11, 0xb3, 0x59, 0x1c, 0xa9, 0xe0,
+ 0x3c, 0x68, 0xab, 0xa7, 0xbc, 0x2b, 0xd1, 0x91, 0x00, 0x97, 0x2d, 0x73, 0xdd, 0xc9, 0x9a, 0xe8,
+ 0x07, 0x90, 0x07, 0xb6, 0x6c, 0xd7, 0xa5, 0x5c, 0x39, 0xa4, 0x40, 0xec, 0xa5, 0x71, 0x96, 0x17,
+ 0x69, 0x0f, 0x39, 0xa7, 0x23, 0x29, 0xe6, 0x5a, 0x98, 0xb1, 0xb4, 0x11, 0x3c, 0xce, 0x5e, 0x61,
+ 0x8c, 0x9d, 0xe9, 0x90, 0x92, 0x4b, 0xcf, 0xc7, 0x3d, 0xf2, 0x36, 0xe0, 0x8f, 0x6b, 0x7a, 0xa3,
+ 0x2d, 0x28, 0xc7, 0x81, 0x67, 0xa9, 0xf4, 0xae, 0x9b, 0xa5, 0x38, 0xf0, 0x0c, 0x17, 0x21, 0x28,
+ 0x86, 0x36, 0x9b, 0xaa, 0xfe, 0x13, 0x63, 0x8d, 0xc2, 0x7e, 0x76, 0xd1, 0x1e, 0xf6, 0x31, 0xc3,
+ 0x2f, 0xf1, 0x8c, 0xf7, 0xf7, 0x47, 0x96, 0xdb, 0x86, 0x0a, 0x0b, 0xad, 0xcc, 0x8a, 0x65, 0x16,
+ 0x0e, 0x6d, 0x36, 0x45, 0xf7, 0xa0, 0x3e, 0xc1, 0x33, 0x8b, 0x8b, 0x03, 0x9f, 0x54, 0x10, 0x93,
+ 0x6a, 0x13, 0xb9, 0xa8, 0xe1, 0x6a, 0x57, 0x70, 0xef, 0xdd, 0x3d, 0xc7, 0xfc, 0x13, 0xf5, 0xa9,
+ 0x3b, 0xee, 0x40, 0xd5, 0xf6, 0x7d, 0xe2, 0x2c, 0xb6, 0xab, 0x08, 0xdb, 0x70, 0xb5, 0x3f, 0x73,
+ 0xd0, 0xca, 0xee, 0xb6, 0x24, 0xe4, 0xb7, 0xa1, 0xac, 0x12, 0x2b, 0x75, 0x5c, 0x59, 0xe8, 0xd9,
+ 0xc7, 0x5f, 0xb4, 0x93, 0x1b, 0xf2, 0x4d, 0x43, 0xdf, 0x40, 0x91, 0xcc, 0x1c, 0x4f, 0xe5, 0xf3,
+ 0xfe, 0xfb, 0xfa, 0x26, 0x53, 0x6d, 0x7c, 0x1a, 0xa7, 0x1f, 0xd5, 0xe6, 0x3f, 0x24, 0x2d, 0x82,
+ 0xcd, 0xf7, 0x74, 0x19, 0x3a, 0x5c, 0x79, 0x7e, 0x77, 0xdf, 0xb7, 0xf4, 0xa7, 0x3e, 0xc5, 0xcf,
+ 0xbe, 0x87, 0x7a, 0xa6, 0x9d, 0x51, 0x1d, 0x2a, 0x0b, 0x65, 0x5c, 0x83, 0x6a, 0x46, 0x14, 0xb7,
+ 0x60, 0xa3, 0xa7, 0xbf, 0x32, 0xba, 0xba, 0xd5, 0x33, 0x46, 0xdd, 0xc1, 0x2b, 0xdd, 0xd4, 0x7b,
+ 0xcd, 0xfc, 0xd1, 0x8b, 0x9f, 0xbf, 0x9d, 0x78, 0x6c, 0x1a, 0x5f, 0xf0, 0x66, 0x10, 0x1f, 0x51,
+ 0x87, 0x50, 0x57, 0x7d, 0x64, 0xbf, 0x4a, 0xbf, 0xb5, 0x87, 0x07, 0x13, 0xb2, 0xfa, 0x4b, 0x1e,
+ 0xde, 0x18, 0xe6, 0x86, 0xc5, 0x8b, 0xb2, 0xe0, 0x3c, 0xff, 0x37, 0x00, 0x00, 0xff, 0xff, 0x4b,
+ 0x68, 0xda, 0x8e, 0x53, 0x0b, 0x00, 0x00,
}
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 1bd48eb..92ac970 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -59,7 +59,7 @@
github.com/mitchellh/go-homedir
# github.com/mitchellh/mapstructure v1.1.2
github.com/mitchellh/mapstructure
-# github.com/opencord/voltha-lib-go/v2 v2.2.18
+# github.com/opencord/voltha-lib-go/v2 v2.2.19
github.com/opencord/voltha-lib-go/v2/pkg/adapters
github.com/opencord/voltha-lib-go/v2/pkg/adapters/adapterif
github.com/opencord/voltha-lib-go/v2/pkg/adapters/common
@@ -72,7 +72,7 @@
github.com/opencord/voltha-lib-go/v2/pkg/techprofile
github.com/opencord/voltha-lib-go/v2/pkg/db
github.com/opencord/voltha-lib-go/v2/pkg/ponresourcemanager
-# github.com/opencord/voltha-protos/v2 v2.1.0
+# github.com/opencord/voltha-protos/v2 v2.1.1
github.com/opencord/voltha-protos/v2/go/inter_container
github.com/opencord/voltha-protos/v2/go/voltha
github.com/opencord/voltha-protos/v2/go/common