diff --git a/vendor/github.com/opencord/device-management-interface/go/dmi/hw.pb.go b/vendor/github.com/opencord/device-management-interface/go/dmi/hw.pb.go
index cce095b..0dad292 100644
--- a/vendor/github.com/opencord/device-management-interface/go/dmi/hw.pb.go
+++ b/vendor/github.com/opencord/device-management-interface/go/dmi/hw.pb.go
@@ -444,6 +444,7 @@
 	PortComponentAttributes_FIBER_LC                 PortComponentAttributes_ConnectorType = 2
 	PortComponentAttributes_FIBER_SC_PC              PortComponentAttributes_ConnectorType = 3
 	PortComponentAttributes_FIBER_MPO                PortComponentAttributes_ConnectorType = 4
+	PortComponentAttributes_RS232                    PortComponentAttributes_ConnectorType = 5
 )
 
 var PortComponentAttributes_ConnectorType_name = map[int32]string{
@@ -452,6 +453,7 @@
 	2: "FIBER_LC",
 	3: "FIBER_SC_PC",
 	4: "FIBER_MPO",
+	5: "RS232",
 }
 
 var PortComponentAttributes_ConnectorType_value = map[string]int32{
@@ -460,6 +462,7 @@
 	"FIBER_LC":                 2,
 	"FIBER_SC_PC":              3,
 	"FIBER_MPO":                4,
+	"RS232":                    5,
 }
 
 func (x PortComponentAttributes_ConnectorType) String() string {
@@ -530,6 +533,7 @@
 	PortComponentAttributes_GFAST              PortComponentAttributes_Protocol = 5
 	PortComponentAttributes_SERIAL             PortComponentAttributes_Protocol = 6
 	PortComponentAttributes_EPON               PortComponentAttributes_Protocol = 7
+	PortComponentAttributes_BITS               PortComponentAttributes_Protocol = 8
 )
 
 var PortComponentAttributes_Protocol_name = map[int32]string{
@@ -541,6 +545,7 @@
 	5: "GFAST",
 	6: "SERIAL",
 	7: "EPON",
+	8: "BITS",
 }
 
 var PortComponentAttributes_Protocol_value = map[string]int32{
@@ -552,6 +557,7 @@
 	"GFAST":              5,
 	"SERIAL":             6,
 	"EPON":               7,
+	"BITS":               8,
 }
 
 func (x PortComponentAttributes_Protocol) String() string {
@@ -590,7 +596,7 @@
 }
 
 func (PsuComponentAttributes_SupportedVoltage) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{7, 0}
+	return fileDescriptor_d7c33d745c4ab367, []int{9, 0}
 }
 
 type TransceiverComponentsAttributes_FormFactor int32
@@ -654,7 +660,7 @@
 }
 
 func (TransceiverComponentsAttributes_FormFactor) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{8, 0}
+	return fileDescriptor_d7c33d745c4ab367, []int{10, 0}
 }
 
 type TransceiverComponentsAttributes_Type int32
@@ -697,7 +703,7 @@
 }
 
 func (TransceiverComponentsAttributes_Type) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{8, 1}
+	return fileDescriptor_d7c33d745c4ab367, []int{10, 1}
 }
 
 type Uuid struct {
@@ -1001,13 +1007,19 @@
 }
 
 type PortComponentAttributes struct {
-	ConnectorType        PortComponentAttributes_ConnectorType `protobuf:"varint,1,opt,name=connector_type,json=connectorType,proto3,enum=dmi.PortComponentAttributes_ConnectorType" json:"connector_type,omitempty"`
-	Speed                PortComponentAttributes_Speed         `protobuf:"varint,2,opt,name=speed,proto3,enum=dmi.PortComponentAttributes_Speed" json:"speed,omitempty"`
-	Protocol             PortComponentAttributes_Protocol      `protobuf:"varint,3,opt,name=protocol,proto3,enum=dmi.PortComponentAttributes_Protocol" json:"protocol,omitempty"`
-	PhysicalLabel        string                                `protobuf:"bytes,4,opt,name=physical_label,json=physicalLabel,proto3" json:"physical_label,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}                              `json:"-"`
-	XXX_unrecognized     []byte                                `json:"-"`
-	XXX_sizecache        int32                                 `json:"-"`
+	ConnectorType PortComponentAttributes_ConnectorType `protobuf:"varint,1,opt,name=connector_type,json=connectorType,proto3,enum=dmi.PortComponentAttributes_ConnectorType" json:"connector_type,omitempty"`
+	Speed         PortComponentAttributes_Speed         `protobuf:"varint,2,opt,name=speed,proto3,enum=dmi.PortComponentAttributes_Speed" json:"speed,omitempty"`
+	Protocol      PortComponentAttributes_Protocol      `protobuf:"varint,3,opt,name=protocol,proto3,enum=dmi.PortComponentAttributes_Protocol" json:"protocol,omitempty"`
+	PhysicalLabel string                                `protobuf:"bytes,4,opt,name=physical_label,json=physicalLabel,proto3" json:"physical_label,omitempty"`
+	// The mapping_label can be used to map ports between the DMI interface and other systems like VOLTHA
+	// The value of the mapping_label should be exactly the same as generated for the same port by the other
+	// system
+	MappingLabel         string       `protobuf:"bytes,5,opt,name=mapping_label,json=mappingLabel,proto3" json:"mapping_label,omitempty"`
+	PonIdConfig          *PonIdConfig `protobuf:"bytes,6,opt,name=pon_id_config,json=ponIdConfig,proto3" json:"pon_id_config,omitempty"`
+	SpeedAutonegotiation bool         `protobuf:"varint,7,opt,name=speed_autonegotiation,json=speedAutonegotiation,proto3" json:"speed_autonegotiation,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
+	XXX_unrecognized     []byte       `json:"-"`
+	XXX_sizecache        int32        `json:"-"`
 }
 
 func (m *PortComponentAttributes) Reset()         { *m = PortComponentAttributes{} }
@@ -1063,6 +1075,116 @@
 	return ""
 }
 
+func (m *PortComponentAttributes) GetMappingLabel() string {
+	if m != nil {
+		return m.MappingLabel
+	}
+	return ""
+}
+
+func (m *PortComponentAttributes) GetPonIdConfig() *PonIdConfig {
+	if m != nil {
+		return m.PonIdConfig
+	}
+	return nil
+}
+
+func (m *PortComponentAttributes) GetSpeedAutonegotiation() bool {
+	if m != nil {
+		return m.SpeedAutonegotiation
+	}
+	return false
+}
+
+type PortComponentChangeAttributes struct {
+	PonIdConfig          *PonIdConfig `protobuf:"bytes,1,opt,name=pon_id_config,json=ponIdConfig,proto3" json:"pon_id_config,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
+	XXX_unrecognized     []byte       `json:"-"`
+	XXX_sizecache        int32        `json:"-"`
+}
+
+func (m *PortComponentChangeAttributes) Reset()         { *m = PortComponentChangeAttributes{} }
+func (m *PortComponentChangeAttributes) String() string { return proto.CompactTextString(m) }
+func (*PortComponentChangeAttributes) ProtoMessage()    {}
+func (*PortComponentChangeAttributes) Descriptor() ([]byte, []int) {
+	return fileDescriptor_d7c33d745c4ab367, []int{6}
+}
+
+func (m *PortComponentChangeAttributes) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_PortComponentChangeAttributes.Unmarshal(m, b)
+}
+func (m *PortComponentChangeAttributes) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_PortComponentChangeAttributes.Marshal(b, m, deterministic)
+}
+func (m *PortComponentChangeAttributes) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_PortComponentChangeAttributes.Merge(m, src)
+}
+func (m *PortComponentChangeAttributes) XXX_Size() int {
+	return xxx_messageInfo_PortComponentChangeAttributes.Size(m)
+}
+func (m *PortComponentChangeAttributes) XXX_DiscardUnknown() {
+	xxx_messageInfo_PortComponentChangeAttributes.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PortComponentChangeAttributes proto.InternalMessageInfo
+
+func (m *PortComponentChangeAttributes) GetPonIdConfig() *PonIdConfig {
+	if m != nil {
+		return m.PonIdConfig
+	}
+	return nil
+}
+
+type PonIdConfig struct {
+	// The pon_id and pon_id_transmit_periodicity attributes are valid only for ports of type GPON, XGPON and XGSPON
+	// For GPON pon_id is a 7 byte value
+	// For XGS-PON, it's a 32 bit value, should be encoded in the first 4 bytes of pon_id in network byte order
+	PonId                    []byte   `protobuf:"bytes,1,opt,name=pon_id,json=ponId,proto3" json:"pon_id,omitempty"`
+	PonIdTransmitPeriodicity uint32   `protobuf:"varint,2,opt,name=pon_id_transmit_periodicity,json=ponIdTransmitPeriodicity,proto3" json:"pon_id_transmit_periodicity,omitempty"`
+	XXX_NoUnkeyedLiteral     struct{} `json:"-"`
+	XXX_unrecognized         []byte   `json:"-"`
+	XXX_sizecache            int32    `json:"-"`
+}
+
+func (m *PonIdConfig) Reset()         { *m = PonIdConfig{} }
+func (m *PonIdConfig) String() string { return proto.CompactTextString(m) }
+func (*PonIdConfig) ProtoMessage()    {}
+func (*PonIdConfig) Descriptor() ([]byte, []int) {
+	return fileDescriptor_d7c33d745c4ab367, []int{7}
+}
+
+func (m *PonIdConfig) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_PonIdConfig.Unmarshal(m, b)
+}
+func (m *PonIdConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_PonIdConfig.Marshal(b, m, deterministic)
+}
+func (m *PonIdConfig) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_PonIdConfig.Merge(m, src)
+}
+func (m *PonIdConfig) XXX_Size() int {
+	return xxx_messageInfo_PonIdConfig.Size(m)
+}
+func (m *PonIdConfig) XXX_DiscardUnknown() {
+	xxx_messageInfo_PonIdConfig.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PonIdConfig proto.InternalMessageInfo
+
+func (m *PonIdConfig) GetPonId() []byte {
+	if m != nil {
+		return m.PonId
+	}
+	return nil
+}
+
+func (m *PonIdConfig) GetPonIdTransmitPeriodicity() uint32 {
+	if m != nil {
+		return m.PonIdTransmitPeriodicity
+	}
+	return 0
+}
+
 type ContainerComponentAttributes struct {
 	PhysicalLabel        string   `protobuf:"bytes,1,opt,name=physical_label,json=physicalLabel,proto3" json:"physical_label,omitempty"`
 	XXX_NoUnkeyedLiteral struct{} `json:"-"`
@@ -1074,7 +1196,7 @@
 func (m *ContainerComponentAttributes) String() string { return proto.CompactTextString(m) }
 func (*ContainerComponentAttributes) ProtoMessage()    {}
 func (*ContainerComponentAttributes) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{6}
+	return fileDescriptor_d7c33d745c4ab367, []int{8}
 }
 
 func (m *ContainerComponentAttributes) XXX_Unmarshal(b []byte) error {
@@ -1113,7 +1235,7 @@
 func (m *PsuComponentAttributes) String() string { return proto.CompactTextString(m) }
 func (*PsuComponentAttributes) ProtoMessage()    {}
 func (*PsuComponentAttributes) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{7}
+	return fileDescriptor_d7c33d745c4ab367, []int{9}
 }
 
 func (m *PsuComponentAttributes) XXX_Unmarshal(b []byte) error {
@@ -1160,7 +1282,7 @@
 func (m *TransceiverComponentsAttributes) String() string { return proto.CompactTextString(m) }
 func (*TransceiverComponentsAttributes) ProtoMessage()    {}
 func (*TransceiverComponentsAttributes) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{8}
+	return fileDescriptor_d7c33d745c4ab367, []int{10}
 }
 
 func (m *TransceiverComponentsAttributes) XXX_Unmarshal(b []byte) error {
@@ -1273,7 +1395,7 @@
 func (m *Component) String() string { return proto.CompactTextString(m) }
 func (*Component) ProtoMessage()    {}
 func (*Component) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{9}
+	return fileDescriptor_d7c33d745c4ab367, []int{11}
 }
 
 func (m *Component) XXX_Unmarshal(b []byte) error {
@@ -1524,7 +1646,7 @@
 func (m *Hardware) String() string { return proto.CompactTextString(m) }
 func (*Hardware) ProtoMessage()    {}
 func (*Hardware) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{10}
+	return fileDescriptor_d7c33d745c4ab367, []int{12}
 }
 
 func (m *Hardware) XXX_Unmarshal(b []byte) error {
@@ -1570,24 +1692,29 @@
 type ModifiableComponent struct {
 	// The name has to be unique for each component within the hardware and implementations need to
 	// ascertain this when modifying the name
-	Name                 string              `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
-	Class                ComponentType       `protobuf:"varint,2,opt,name=class,proto3,enum=dmi.ComponentType" json:"class,omitempty"`
-	Parent               *Component          `protobuf:"bytes,3,opt,name=parent,proto3" json:"parent,omitempty"`
-	ParentRelPos         int32               `protobuf:"varint,4,opt,name=parent_rel_pos,json=parentRelPos,proto3" json:"parent_rel_pos,omitempty"`
-	Alias                string              `protobuf:"bytes,5,opt,name=alias,proto3" json:"alias,omitempty"`
-	AssetId              string              `protobuf:"bytes,6,opt,name=asset_id,json=assetId,proto3" json:"asset_id,omitempty"`
-	Uri                  *Uri                `protobuf:"bytes,7,opt,name=uri,proto3" json:"uri,omitempty"`
-	AdminState           ComponentAdminState `protobuf:"varint,8,opt,name=admin_state,json=adminState,proto3,enum=dmi.ComponentAdminState" json:"admin_state,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
-	XXX_unrecognized     []byte              `json:"-"`
-	XXX_sizecache        int32               `json:"-"`
+	Name         string              `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+	Class        ComponentType       `protobuf:"varint,2,opt,name=class,proto3,enum=dmi.ComponentType" json:"class,omitempty"`
+	Parent       *Component          `protobuf:"bytes,3,opt,name=parent,proto3" json:"parent,omitempty"`
+	ParentRelPos int32               `protobuf:"varint,4,opt,name=parent_rel_pos,json=parentRelPos,proto3" json:"parent_rel_pos,omitempty"`
+	Alias        string              `protobuf:"bytes,5,opt,name=alias,proto3" json:"alias,omitempty"`
+	AssetId      string              `protobuf:"bytes,6,opt,name=asset_id,json=assetId,proto3" json:"asset_id,omitempty"`
+	Uri          *Uri                `protobuf:"bytes,7,opt,name=uri,proto3" json:"uri,omitempty"`
+	AdminState   ComponentAdminState `protobuf:"varint,8,opt,name=admin_state,json=adminState,proto3,enum=dmi.ComponentAdminState" json:"admin_state,omitempty"`
+	// The attribute 'specific' can be populated for specific class of components
+	//
+	// Types that are valid to be assigned to Specific:
+	//	*ModifiableComponent_PortAttr
+	Specific             isModifiableComponent_Specific `protobuf_oneof:"specific"`
+	XXX_NoUnkeyedLiteral struct{}                       `json:"-"`
+	XXX_unrecognized     []byte                         `json:"-"`
+	XXX_sizecache        int32                          `json:"-"`
 }
 
 func (m *ModifiableComponent) Reset()         { *m = ModifiableComponent{} }
 func (m *ModifiableComponent) String() string { return proto.CompactTextString(m) }
 func (*ModifiableComponent) ProtoMessage()    {}
 func (*ModifiableComponent) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d7c33d745c4ab367, []int{11}
+	return fileDescriptor_d7c33d745c4ab367, []int{13}
 }
 
 func (m *ModifiableComponent) XXX_Unmarshal(b []byte) error {
@@ -1664,6 +1791,37 @@
 	return ComponentAdminState_COMP_ADMIN_STATE_UNDEFINED
 }
 
+type isModifiableComponent_Specific interface {
+	isModifiableComponent_Specific()
+}
+
+type ModifiableComponent_PortAttr struct {
+	PortAttr *PortComponentChangeAttributes `protobuf:"bytes,50,opt,name=port_attr,json=portAttr,proto3,oneof"`
+}
+
+func (*ModifiableComponent_PortAttr) isModifiableComponent_Specific() {}
+
+func (m *ModifiableComponent) GetSpecific() isModifiableComponent_Specific {
+	if m != nil {
+		return m.Specific
+	}
+	return nil
+}
+
+func (m *ModifiableComponent) GetPortAttr() *PortComponentChangeAttributes {
+	if x, ok := m.GetSpecific().(*ModifiableComponent_PortAttr); ok {
+		return x.PortAttr
+	}
+	return nil
+}
+
+// XXX_OneofWrappers is for the internal use of the proto package.
+func (*ModifiableComponent) XXX_OneofWrappers() []interface{} {
+	return []interface{}{
+		(*ModifiableComponent_PortAttr)(nil),
+	}
+}
+
 func init() {
 	proto.RegisterEnum("dmi.ComponentType", ComponentType_name, ComponentType_value)
 	proto.RegisterEnum("dmi.ComponentAdminState", ComponentAdminState_name, ComponentAdminState_value)
@@ -1686,6 +1844,8 @@
 	proto.RegisterType((*ComponentState)(nil), "dmi.ComponentState")
 	proto.RegisterType((*ComponentSensorData)(nil), "dmi.ComponentSensorData")
 	proto.RegisterType((*PortComponentAttributes)(nil), "dmi.PortComponentAttributes")
+	proto.RegisterType((*PortComponentChangeAttributes)(nil), "dmi.PortComponentChangeAttributes")
+	proto.RegisterType((*PonIdConfig)(nil), "dmi.PonIdConfig")
 	proto.RegisterType((*ContainerComponentAttributes)(nil), "dmi.ContainerComponentAttributes")
 	proto.RegisterType((*PsuComponentAttributes)(nil), "dmi.PsuComponentAttributes")
 	proto.RegisterType((*TransceiverComponentsAttributes)(nil), "dmi.TransceiverComponentsAttributes")
@@ -1697,168 +1857,178 @@
 func init() { proto.RegisterFile("dmi/hw.proto", fileDescriptor_d7c33d745c4ab367) }
 
 var fileDescriptor_d7c33d745c4ab367 = []byte{
-	// 2596 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0xcd, 0x72, 0xdb, 0xc8,
-	0xf1, 0x37, 0xbf, 0xc9, 0xe6, 0x87, 0xc6, 0x23, 0x7f, 0x70, 0x65, 0x7b, 0x57, 0xcb, 0xff, 0xee,
-	0x96, 0x56, 0xff, 0xac, 0x24, 0xcb, 0x76, 0xca, 0x9b, 0xad, 0x54, 0x0a, 0x02, 0x41, 0x11, 0x2b,
-	0x12, 0xc0, 0x0e, 0x40, 0xd9, 0xda, 0x0b, 0x0a, 0x22, 0x21, 0x09, 0x55, 0x24, 0xc1, 0x02, 0x40,
-	0xad, 0x7d, 0x4d, 0xe5, 0x92, 0x53, 0x5e, 0x20, 0xc7, 0x54, 0x6a, 0x73, 0xc9, 0x25, 0x39, 0xe6,
-	0x90, 0x4b, 0x5e, 0x20, 0xb7, 0x3c, 0x43, 0x5e, 0x22, 0x35, 0x33, 0x00, 0x09, 0x80, 0xb0, 0xd7,
-	0xa9, 0xca, 0x6d, 0xe6, 0xf7, 0xeb, 0xee, 0xe9, 0xe9, 0x99, 0xee, 0x69, 0x00, 0x1a, 0x93, 0x99,
-	0x73, 0x78, 0xf3, 0xc3, 0xc1, 0xc2, 0x73, 0x03, 0x17, 0x17, 0x26, 0x33, 0x67, 0xe7, 0x93, 0x6b,
-	0xd7, 0xbd, 0x9e, 0xda, 0x87, 0x0c, 0xba, 0x5c, 0x5e, 0x1d, 0x06, 0xce, 0xcc, 0xf6, 0x03, 0x6b,
-	0xb6, 0xe0, 0x52, 0x9d, 0x1d, 0x28, 0x8e, 0x96, 0xce, 0x04, 0x63, 0x28, 0x2e, 0x97, 0xce, 0xa4,
-	0x9d, 0xdb, 0xcd, 0xed, 0xd5, 0x08, 0x1b, 0x77, 0xfe, 0x1f, 0xa0, 0x6f, 0x79, 0x93, 0x1f, 0x2c,
-	0xcf, 0x96, 0xbb, 0xf8, 0x49, 0x4c, 0xa2, 0x7e, 0x5c, 0x3b, 0x98, 0xcc, 0x9c, 0x03, 0xaa, 0x1a,
-	0x0a, 0x3f, 0x84, 0xc2, 0xc8, 0x73, 0x30, 0x82, 0xc2, 0xd2, 0x73, 0x42, 0x33, 0x74, 0xd8, 0xf9,
-	0x4d, 0x01, 0x5a, 0xa2, 0x3b, 0x5b, 0xb8, 0x73, 0x7b, 0x1e, 0xe8, 0x81, 0x15, 0xd8, 0xb8, 0x0f,
-	0xd8, 0xa7, 0x03, 0x73, 0x6a, 0xf9, 0x81, 0x39, 0xbe, 0xb1, 0xe6, 0xd7, 0x76, 0x64, 0x78, 0xe7,
-	0x80, 0xbb, 0x7c, 0x10, 0xb9, 0x7c, 0x60, 0x44, 0x2e, 0x13, 0xc4, 0xb4, 0x06, 0x96, 0x1f, 0x88,
-	0x5c, 0x07, 0x7f, 0x0d, 0x75, 0x6b, 0x32, 0x73, 0xe6, 0x26, 0x63, 0xda, 0xf9, 0xdd, 0xdc, 0x5e,
-	0xeb, 0xb8, 0xcd, 0x7c, 0x5b, 0xad, 0x29, 0x50, 0x01, 0xb6, 0x30, 0x01, 0x6b, 0x35, 0xc6, 0x3f,
-	0x07, 0x70, 0x17, 0xb6, 0x17, 0x6a, 0x16, 0x98, 0xe6, 0xc3, 0xa4, 0xa6, 0xba, 0xb0, 0x3d, 0xae,
-	0x58, 0x73, 0xa3, 0x21, 0x5d, 0x72, 0xe9, 0x5b, 0xd7, 0x76, 0xa8, 0x58, 0xcc, 0x5a, 0x72, 0x44,
-	0x05, 0xc2, 0x25, 0x97, 0xab, 0x31, 0xf3, 0x76, 0x6a, 0x79, 0xb3, 0x50, 0xb5, 0x94, 0xe9, 0x2d,
-	0x15, 0x88, 0xbc, 0x5d, 0x8d, 0xf1, 0xaf, 0xa0, 0xe9, 0x07, 0xd6, 0x7c, 0x72, 0xf9, 0x36, 0x54,
-	0x2e, 0x33, 0xe5, 0x9d, 0xa4, 0xb2, 0xce, 0x45, 0xb8, 0x7a, 0xc3, 0x8f, 0xcd, 0x3a, 0xff, 0xce,
-	0xc3, 0xf6, 0x5a, 0xce, 0x9e, 0xfb, 0xae, 0xd7, 0xb5, 0x02, 0x0b, 0xdf, 0x83, 0xd2, 0xad, 0x35,
-	0x5d, 0xda, 0x2c, 0xfc, 0x25, 0xc2, 0x27, 0xf8, 0x0b, 0x28, 0x06, 0x6f, 0x17, 0x51, 0x40, 0x31,
-	0x5b, 0x85, 0x8a, 0x9f, 0x53, 0xd6, 0x78, 0xbb, 0xb0, 0x09, 0xe3, 0xf1, 0xe7, 0x50, 0xf2, 0xc7,
-	0xd6, 0x34, 0x8a, 0xdf, 0x16, 0x13, 0x64, 0x42, 0x3a, 0x85, 0x09, 0x67, 0xf1, 0x63, 0xa8, 0x2d,
-	0x3c, 0x7b, 0xec, 0xf8, 0x8e, 0x3b, 0x67, 0x11, 0x2b, 0x91, 0x35, 0x80, 0xbf, 0x84, 0x32, 0xdd,
-	0xd3, 0xd2, 0x0f, 0x23, 0x72, 0x97, 0x59, 0xe1, 0x3e, 0xea, 0x8c, 0x20, 0xa1, 0x00, 0xfe, 0x3f,
-	0x68, 0x2e, 0xe7, 0x4e, 0xe0, 0x9b, 0x13, 0xc7, 0x5f, 0x4c, 0xad, 0xb7, 0x2c, 0x0c, 0x35, 0xd2,
-	0x60, 0x60, 0x97, 0x63, 0xf8, 0x25, 0xd4, 0x56, 0xd7, 0xbc, 0x5d, 0xf9, 0xc9, 0x5b, 0xb5, 0x16,
-	0xc6, 0xfb, 0x70, 0x97, 0xed, 0xdf, 0x5c, 0x2e, 0x26, 0xf4, 0x7e, 0x7a, 0x34, 0xd2, 0xd5, 0xdd,
-	0xdc, 0x5e, 0x93, 0x6c, 0x31, 0x62, 0xc4, 0x70, 0x42, 0x4f, 0xe4, 0x11, 0xd4, 0x26, 0x56, 0x60,
-	0x99, 0x2c, 0x4e, 0x35, 0xe6, 0x46, 0x95, 0x02, 0x34, 0x3a, 0x9d, 0xdf, 0x97, 0xe0, 0xa1, 0xe6,
-	0x7a, 0xc1, 0xfa, 0x58, 0x83, 0xc0, 0x73, 0x2e, 0x97, 0x81, 0xed, 0xe3, 0xef, 0xa0, 0x35, 0x76,
-	0xe7, 0x73, 0x7b, 0x1c, 0xb8, 0x1e, 0xd7, 0xce, 0xb1, 0x6d, 0xef, 0xb3, 0x6d, 0xbf, 0x43, 0xeb,
-	0x40, 0x8c, 0x54, 0x58, 0xf4, 0x9b, 0xe3, 0xf8, 0x14, 0xbf, 0x84, 0x92, 0xbf, 0xb0, 0xed, 0x49,
-	0x78, 0x5e, 0x9d, 0xf7, 0x5a, 0xd2, 0xa9, 0x24, 0xe1, 0x0a, 0x58, 0x80, 0x2a, 0x0b, 0xc9, 0xd8,
-	0x9d, 0x86, 0x67, 0xf8, 0xf9, 0x7b, 0x95, 0xb5, 0x50, 0x98, 0xac, 0xd4, 0xf0, 0xe7, 0xd0, 0x5a,
-	0xdc, 0xbc, 0xf5, 0x9d, 0xb1, 0x35, 0x35, 0xa7, 0xd6, 0xa5, 0x3d, 0x65, 0x27, 0x5c, 0x23, 0xcd,
-	0x08, 0x1d, 0x50, 0xb0, 0x63, 0x43, 0x33, 0xb1, 0x07, 0xfc, 0x18, 0xda, 0xa2, 0xaa, 0x28, 0x92,
-	0x68, 0xa8, 0xc4, 0x34, 0x2e, 0x34, 0xc9, 0x1c, 0x29, 0x5d, 0xa9, 0x27, 0x2b, 0x52, 0x17, 0xdd,
-	0xc1, 0x55, 0x28, 0x92, 0x6f, 0x9f, 0xbf, 0x40, 0x39, 0xdc, 0x80, 0x6a, 0x4f, 0x3e, 0x91, 0x88,
-	0x39, 0x10, 0x51, 0x1e, 0x6f, 0x41, 0x9d, 0xcf, 0x74, 0xd1, 0xd4, 0x44, 0x54, 0xc0, 0x4d, 0xa8,
-	0x71, 0x60, 0xa8, 0xa9, 0xa8, 0xd8, 0xf9, 0x73, 0x0e, 0x4a, 0x6c, 0x87, 0x78, 0x1b, 0xb6, 0x74,
-	0x4d, 0x92, 0xba, 0x09, 0xb3, 0x75, 0xa8, 0x74, 0x2f, 0x14, 0x61, 0x28, 0x8b, 0x28, 0x47, 0x55,
-	0x4f, 0xe5, 0x53, 0xe1, 0x44, 0x36, 0xcc, 0xa7, 0x28, 0x8f, 0x5b, 0x00, 0xab, 0xe9, 0x11, 0x2a,
-	0xc4, 0xe7, 0xc7, 0x2f, 0x50, 0x31, 0x3e, 0x7f, 0x7e, 0x84, 0x4a, 0xd4, 0x95, 0xb5, 0xfc, 0x11,
-	0x2a, 0xc7, 0x81, 0xe7, 0x47, 0x47, 0xa8, 0x82, 0x11, 0x34, 0x86, 0x52, 0x64, 0xe1, 0xe8, 0x08,
-	0x55, 0xe3, 0xc8, 0xd3, 0xe3, 0x17, 0x47, 0xa8, 0xd6, 0xf1, 0xa0, 0x1a, 0x05, 0x15, 0x3f, 0x00,
-	0xac, 0x11, 0xd5, 0x50, 0x45, 0x75, 0x90, 0xf0, 0xba, 0x01, 0x55, 0xc9, 0xe8, 0x4b, 0x44, 0x91,
-	0x0c, 0x94, 0xa3, 0xa1, 0x39, 0xd5, 0x54, 0x05, 0xe5, 0x71, 0x0d, 0x4a, 0xaf, 0xd9, 0xb0, 0x80,
-	0x01, 0xca, 0xaf, 0x4f, 0x75, 0x3a, 0x2e, 0x52, 0xf8, 0xb4, 0x27, 0xe8, 0x06, 0x2a, 0x51, 0x58,
-	0x97, 0x88, 0x2c, 0x0c, 0x50, 0x99, 0xea, 0x49, 0x54, 0xa0, 0xd2, 0x91, 0xe0, 0xb1, 0xe8, 0xce,
-	0x03, 0xcb, 0x99, 0xdb, 0x5e, 0xd6, 0x15, 0xdd, 0x3c, 0xd2, 0x5c, 0xd6, 0x91, 0xfe, 0x23, 0x07,
-	0x0f, 0x34, 0x7f, 0x99, 0x65, 0xe1, 0x02, 0xee, 0xfa, 0xcb, 0xc5, 0xc2, 0xf5, 0x02, 0x7b, 0x62,
-	0xde, 0xba, 0xd3, 0xc0, 0xba, 0x8e, 0xee, 0xf9, 0xcf, 0xf8, 0x05, 0xcb, 0xd4, 0x3b, 0xd0, 0x23,
-	0xa5, 0x73, 0xae, 0x43, 0x90, 0x9f, 0x42, 0x3a, 0x1a, 0xa0, 0xb4, 0x14, 0xfe, 0x04, 0x1e, 0xe9,
-	0x23, 0x4d, 0x53, 0x89, 0x21, 0x75, 0xcd, 0x73, 0x75, 0x60, 0x08, 0xa7, 0xc9, 0xeb, 0x54, 0x81,
-	0xc2, 0xf9, 0xf3, 0x97, 0x3c, 0x78, 0xe7, 0xc7, 0xcf, 0x8e, 0x50, 0x9e, 0x8d, 0x9e, 0x3e, 0x7d,
-	0x81, 0x0a, 0x9d, 0x7f, 0x96, 0xe0, 0x13, 0xc3, 0xb3, 0xe6, 0xfe, 0xd8, 0x76, 0x6e, 0x63, 0x11,
-	0xf1, 0x63, 0x1b, 0xd2, 0xa0, 0x7e, 0xe5, 0x7a, 0x33, 0xf3, 0xca, 0xa2, 0x17, 0x38, 0xdc, 0xca,
-	0x21, 0xdb, 0xca, 0x4f, 0xa8, 0x1e, 0xf4, 0x5c, 0x6f, 0xd6, 0x63, 0x6a, 0x04, 0xae, 0x56, 0x63,
-	0xdc, 0x07, 0x08, 0xa8, 0xa6, 0x19, 0xab, 0xb4, 0x5f, 0x7e, 0x90, 0x41, 0x56, 0x02, 0x6a, 0x4c,
-	0x99, 0x65, 0xd2, 0xa7, 0xd0, 0x98, 0x59, 0x6f, 0x68, 0x4d, 0x0c, 0xac, 0xf9, 0x98, 0x17, 0xe3,
-	0x26, 0xa9, 0xcf, 0xac, 0x37, 0xdd, 0x10, 0xc2, 0xbf, 0x04, 0x1c, 0x17, 0x31, 0x79, 0xd5, 0x2e,
-	0x66, 0x57, 0x6d, 0x14, 0xd3, 0x64, 0x08, 0xad, 0xbb, 0xde, 0x1b, 0xf3, 0x07, 0xeb, 0xd6, 0x9e,
-	0xda, 0xf3, 0xeb, 0xe0, 0xa6, 0x5d, 0xda, 0x2d, 0xec, 0x35, 0x49, 0xc3, 0x7b, 0xf3, 0x6a, 0x85,
-	0x51, 0xa1, 0x20, 0x21, 0x54, 0xe6, 0x42, 0x41, 0x5c, 0xe8, 0x17, 0x80, 0xd6, 0x12, 0xa1, 0x1b,
-	0x95, 0x6c, 0x37, 0xb6, 0xd6, 0x82, 0x0c, 0xe8, 0xfc, 0x3d, 0x07, 0xb0, 0x0e, 0x26, 0x7e, 0x08,
-	0xdb, 0x3d, 0x95, 0x0c, 0xcd, 0x9e, 0xc0, 0x4a, 0xc8, 0x48, 0x39, 0x53, 0xd4, 0x57, 0x0a, 0xaf,
-	0x1d, 0xdf, 0xe9, 0x3d, 0x8d, 0x67, 0x38, 0x1d, 0x99, 0xda, 0x60, 0xa4, 0xa3, 0x3c, 0xcd, 0x06,
-	0x3a, 0x3d, 0x7e, 0x89, 0x0a, 0xf4, 0x46, 0x50, 0x99, 0x22, 0x4d, 0xae, 0x95, 0x48, 0x89, 0xc2,
-	0xaf, 0x7b, 0x1a, 0xcf, 0x16, 0xb1, 0xa7, 0x3d, 0x47, 0x95, 0x70, 0x74, 0x8c, 0xaa, 0x6c, 0xa4,
-	0x09, 0x67, 0xa8, 0x86, 0xcb, 0x90, 0x7f, 0x7d, 0x8c, 0x80, 0xa6, 0x9a, 0x4a, 0x33, 0x13, 0xd5,
-	0xa9, 0xa6, 0xd8, 0xd3, 0x50, 0x83, 0x1a, 0xa4, 0xf2, 0xa6, 0x20, 0xaa, 0xa8, 0xb9, 0x9a, 0x75,
-	0x45, 0x15, 0xb5, 0x3a, 0x37, 0x50, 0x64, 0x47, 0x86, 0xa0, 0x11, 0x96, 0xbc, 0xc8, 0xe9, 0xff,
-	0x32, 0xc7, 0x99, 0x2b, 0xaa, 0x82, 0x4a, 0xb4, 0xa4, 0x29, 0xa7, 0xa6, 0xa6, 0x2a, 0xc7, 0x89,
-	0x1c, 0xff, 0x57, 0x05, 0x6a, 0xab, 0xdb, 0x43, 0xfb, 0xbb, 0xb9, 0x35, 0xb3, 0xa3, 0xfe, 0x8e,
-	0x8e, 0xf1, 0x1e, 0x94, 0xc6, 0x53, 0xcb, 0xf7, 0x13, 0xaf, 0xfc, 0x4a, 0x85, 0x5d, 0x32, 0x2e,
-	0x80, 0x77, 0xa1, 0x3e, 0xb1, 0xfd, 0xb1, 0xe7, 0x2c, 0x02, 0xfa, 0x82, 0x17, 0x98, 0x91, 0x38,
-	0x84, 0x1f, 0x40, 0x79, 0x61, 0x79, 0xf6, 0x3c, 0x08, 0x8b, 0x7f, 0x38, 0xc3, 0x9f, 0x41, 0x8b,
-	0x8f, 0x4c, 0xcf, 0x9e, 0x9a, 0x0b, 0x97, 0xbf, 0xf1, 0x25, 0xd2, 0xe0, 0x28, 0xb1, 0xa7, 0x9a,
-	0xeb, 0xe3, 0x7d, 0xa8, 0x8e, 0x6f, 0x9c, 0xe9, 0xc4, 0xb3, 0xe7, 0xec, 0xd2, 0xd4, 0x8f, 0x5b,
-	0x49, 0x67, 0xc8, 0x8a, 0xa7, 0x97, 0xfd, 0x26, 0xec, 0x4a, 0x4d, 0xcf, 0xbe, 0x65, 0x97, 0xa7,
-	0x46, 0xea, 0x11, 0x46, 0xec, 0x5b, 0x2a, 0x72, 0xe5, 0x78, 0xb3, 0x95, 0x48, 0x95, 0x8b, 0x44,
-	0x58, 0x28, 0xe2, 0xbb, 0x57, 0xc1, 0x4a, 0x84, 0x3f, 0xe0, 0xf5, 0x08, 0xa3, 0x22, 0x4f, 0x00,
-	0x7c, 0xdb, 0x73, 0xac, 0xa9, 0x39, 0x5f, 0xce, 0xda, 0xc0, 0x04, 0x6a, 0x1c, 0x51, 0x96, 0x33,
-	0xfc, 0x11, 0x54, 0x67, 0x57, 0xd7, 0x26, 0x8b, 0x6a, 0x9d, 0x91, 0x95, 0xd9, 0xd5, 0xb5, 0x42,
-	0x03, 0xfb, 0x04, 0x60, 0xe6, 0x4e, 0xec, 0x29, 0x27, 0x1b, 0x5c, 0x93, 0x21, 0x8c, 0xbe, 0x07,
-	0x25, 0x6b, 0xea, 0x58, 0x7e, 0xbb, 0xc9, 0x18, 0x3e, 0xa1, 0xf6, 0x2c, 0xdf, 0xb7, 0x03, 0xd3,
-	0x99, 0xb4, 0x5b, 0xdc, 0x1e, 0x9b, 0xcb, 0x13, 0x7c, 0x1f, 0xca, 0x8e, 0x6f, 0x5e, 0x79, 0xcb,
-	0xf6, 0xd6, 0x6e, 0x6e, 0xaf, 0x4a, 0x4a, 0x8e, 0xdf, 0xf3, 0x96, 0xf8, 0x05, 0xf7, 0x80, 0x76,
-	0x24, 0x6d, 0xf4, 0x93, 0x6d, 0x0e, 0xf5, 0xae, 0x4b, 0x1b, 0x97, 0x1d, 0xde, 0xa2, 0xdf, 0x65,
-	0x1a, 0x55, 0xde, 0xc7, 0x7b, 0x0e, 0x6b, 0xd6, 0x57, 0x4d, 0x3e, 0xce, 0x6c, 0xf2, 0xf1, 0x97,
-	0x50, 0xe2, 0xdd, 0xe7, 0x36, 0xe3, 0xb7, 0x37, 0xba, 0xcf, 0x80, 0xb6, 0x7c, 0x51, 0xaf, 0xeb,
-	0xb3, 0x0e, 0x8e, 0xfa, 0x67, 0xb5, 0xef, 0xb1, 0x53, 0x4d, 0xf5, 0xba, 0xeb, 0x36, 0x94, 0x80,
-	0xbf, 0x6e, 0x49, 0xbf, 0x81, 0x1a, 0xad, 0xee, 0xa6, 0x15, 0x04, 0x5e, 0xfb, 0x98, 0xad, 0xf4,
-	0xf8, 0x7d, 0x4d, 0x49, 0xff, 0x0e, 0xa9, 0x52, 0x05, 0x8a, 0xe0, 0x6f, 0x59, 0x77, 0xc5, 0x9f,
-	0x36, 0x6e, 0xe1, 0x19, 0xb3, 0xf0, 0x69, 0xb8, 0xf4, 0xbb, 0x5f, 0xbd, 0xfe, 0x1d, 0xd6, 0x56,
-	0x71, 0x9e, 0xd9, 0x7a, 0x09, 0xd5, 0x85, 0xbf, 0xe4, 0x56, 0x9e, 0x33, 0x2b, 0x8f, 0xde, 0xf3,
-	0x76, 0xf5, 0xef, 0x90, 0xca, 0xc2, 0x5f, 0x32, 0xcd, 0xef, 0x00, 0x05, 0xeb, 0x22, 0xce, 0x2d,
-	0xbc, 0x60, 0x16, 0x3e, 0xfb, 0x90, 0x0a, 0xdf, 0xbf, 0x43, 0xb6, 0x62, 0xfa, 0x94, 0x38, 0x01,
-	0xa8, 0xfa, 0x0b, 0x7b, 0xec, 0x5c, 0x39, 0xe3, 0xce, 0x8f, 0x39, 0xa8, 0x46, 0x9f, 0x66, 0xf8,
-	0x1b, 0xa8, 0xc7, 0xbe, 0xa3, 0x3e, 0xe0, 0x33, 0x0a, 0xa6, 0xab, 0x2f, 0x28, 0xdc, 0x81, 0xa2,
-	0xe7, 0xba, 0x01, 0x2b, 0x01, 0x9b, 0x59, 0xc7, 0xb8, 0xd5, 0x02, 0x97, 0xae, 0x1b, 0xd8, 0x13,
-	0x96, 0xfd, 0x1f, 0xb0, 0xc0, 0x09, 0x93, 0xee, 0xfc, 0x29, 0x0f, 0xdb, 0x43, 0x77, 0xe2, 0x5c,
-	0x39, 0xd6, 0xe5, 0xd4, 0xfe, 0x5f, 0x15, 0xa4, 0x2f, 0x56, 0xe5, 0xa6, 0x90, 0xe9, 0xf8, 0xbb,
-	0xcb, 0x4f, 0x31, 0xa3, 0xfc, 0xac, 0x12, 0xb2, 0xf4, 0xae, 0x84, 0x2c, 0x27, 0x13, 0x32, 0x4c,
-	0xa1, 0x4a, 0x56, 0x0a, 0xa5, 0x3e, 0x49, 0xab, 0x1f, 0xfe, 0x49, 0xba, 0xff, 0xd7, 0x02, 0xed,
-	0x91, 0x63, 0xdb, 0xe5, 0x3d, 0xf2, 0x50, 0x53, 0x15, 0x49, 0x31, 0x36, 0x7b, 0xe4, 0x1d, 0x78,
-	0xb0, 0xc1, 0xf2, 0xe7, 0x24, 0x97, 0xc1, 0x89, 0x7d, 0x41, 0xd7, 0x65, 0xfa, 0x0c, 0x6e, 0x5a,
-	0x3d, 0x11, 0xc4, 0x33, 0x6d, 0x20, 0x28, 0x12, 0x2a, 0x64, 0xb0, 0xa2, 0xaa, 0x18, 0x82, 0xac,
-	0x48, 0x04, 0x15, 0x69, 0xa7, 0x95, 0x62, 0x35, 0xf5, 0x15, 0x6d, 0xc7, 0x47, 0x9a, 0x36, 0xb8,
-	0x40, 0x25, 0xda, 0xc3, 0xa6, 0x04, 0x7a, 0x82, 0x82, 0xca, 0xf8, 0x23, 0xb8, 0x9f, 0xc2, 0x75,
-	0x49, 0xd1, 0x55, 0x82, 0x2a, 0x19, 0xd4, 0x50, 0xed, 0x8e, 0x06, 0x12, 0xaa, 0xd2, 0x37, 0x7e,
-	0x63, 0x39, 0x62, 0xa0, 0x5a, 0xc6, 0x32, 0xa2, 0x36, 0x42, 0x90, 0xb1, 0xef, 0x13, 0xc1, 0x30,
-	0x24, 0x72, 0x81, 0xea, 0x19, 0x9c, 0x6e, 0xa8, 0x44, 0x38, 0x95, 0x50, 0x23, 0xcb, 0x07, 0x69,
-	0xa8, 0x92, 0x0b, 0xd4, 0xc4, 0x1f, 0xc3, 0x4e, 0x8a, 0x32, 0x88, 0xa0, 0xe8, 0xa2, 0x24, 0x9f,
-	0x4b, 0x04, 0xb5, 0xf6, 0xff, 0x92, 0x8b, 0x7d, 0x5a, 0xaf, 0x8f, 0x36, 0xd2, 0x33, 0x85, 0xee,
-	0x50, 0x56, 0x4c, 0xdd, 0x10, 0x8c, 0xe4, 0xf1, 0x85, 0x81, 0x4e, 0xf1, 0xd1, 0x01, 0x3e, 0x82,
-	0x87, 0x1b, 0xec, 0x40, 0x15, 0xcf, 0xa4, 0x2e, 0xca, 0xe3, 0x0e, 0x7c, 0xbc, 0x41, 0xea, 0xfd,
-	0x91, 0x61, 0xc8, 0xca, 0xa9, 0xd9, 0xa5, 0x06, 0x0a, 0xf8, 0x09, 0x7c, 0x94, 0x61, 0x3e, 0x34,
-	0x51, 0xdc, 0xff, 0x31, 0x07, 0x78, 0xf3, 0x4f, 0xc7, 0x4a, 0x4b, 0xd5, 0xe8, 0xa1, 0x6e, 0xf8,
-	0x1c, 0x79, 0x95, 0xa0, 0x23, 0x97, 0xa3, 0x0d, 0xc5, 0xc8, 0xae, 0xac, 0x0b, 0x27, 0x03, 0xe6,
-	0x73, 0x86, 0xaa, 0xa4, 0x70, 0xb2, 0x90, 0x45, 0x1a, 0x92, 0x4e, 0xb7, 0x83, 0x8a, 0xfb, 0x7f,
-	0x8c, 0x07, 0x78, 0xfd, 0x6f, 0x65, 0x15, 0xe0, 0x91, 0x4e, 0xdb, 0xfd, 0x77, 0x07, 0x38, 0xc9,
-	0x47, 0xde, 0x86, 0x27, 0x9e, 0x60, 0xe5, 0xee, 0x40, 0x8a, 0xb9, 0x1a, 0xa7, 0x04, 0xd1, 0x90,
-	0xcf, 0x69, 0x7e, 0x64, 0xe9, 0x9d, 0x8c, 0xf4, 0x0b, 0x54, 0xdc, 0xff, 0x5d, 0xfc, 0x27, 0xcb,
-	0xfa, 0x4f, 0xce, 0xfa, 0x26, 0x0c, 0x04, 0x32, 0x7c, 0xdf, 0x4d, 0x48, 0xf0, 0x91, 0xa3, 0x9f,
-	0xc2, 0x93, 0x4c, 0x6d, 0x62, 0x12, 0x49, 0x13, 0x64, 0x82, 0xf2, 0xeb, 0xb3, 0x8e, 0x89, 0x88,
-	0x44, 0x36, 0x64, 0x51, 0x18, 0xa0, 0x42, 0x74, 0xf1, 0x13, 0xf4, 0x50, 0xf8, 0x56, 0xa5, 0x09,
-	0x9d, 0xc9, 0xc9, 0x8a, 0x4a, 0x50, 0x29, 0xd3, 0xaf, 0x57, 0x02, 0x51, 0xe8, 0xb1, 0x94, 0xd7,
-	0x97, 0x30, 0xc6, 0xca, 0x4a, 0x57, 0x32, 0x24, 0x32, 0x94, 0x15, 0xc1, 0x90, 0x50, 0x65, 0xff,
-	0x6f, 0x39, 0xb8, 0x9f, 0xf9, 0x7b, 0x0a, 0xef, 0xc2, 0x63, 0xa6, 0xad, 0x1b, 0x82, 0xd2, 0x3d,
-	0xb9, 0xc8, 0x88, 0x4a, 0x14, 0xb5, 0xb4, 0x44, 0xaa, 0xc4, 0xa5, 0xf8, 0xbe, 0x6a, 0xc4, 0x4e,
-	0x30, 0xc9, 0x89, 0xea, 0x80, 0x5e, 0xb6, 0x3d, 0xf8, 0x2c, 0x83, 0xd4, 0x88, 0x7a, 0x2e, 0x77,
-	0x69, 0x02, 0xe9, 0x12, 0x39, 0x97, 0x45, 0x09, 0x15, 0xf7, 0x7f, 0x5b, 0x80, 0x66, 0xe2, 0xbf,
-	0x17, 0x6e, 0xc3, 0xbd, 0x73, 0x61, 0x30, 0x92, 0x36, 0xab, 0xf1, 0x3d, 0x40, 0x31, 0x86, 0x7f,
-	0x15, 0xe4, 0x68, 0x9d, 0x4a, 0xc8, 0x73, 0xe7, 0xf3, 0xb4, 0xb0, 0xc5, 0x70, 0xfa, 0xc9, 0xaa,
-	0x9b, 0x82, 0x88, 0x0a, 0x99, 0x44, 0x57, 0x44, 0xc5, 0x94, 0x25, 0x61, 0xa8, 0x49, 0x44, 0xa2,
-	0x5f, 0x2c, 0xc9, 0x75, 0x5f, 0x09, 0x86, 0xa1, 0xa3, 0x72, 0x0a, 0xed, 0x4b, 0xc4, 0xf8, 0x1e,
-	0x55, 0x52, 0x36, 0x44, 0x69, 0xa0, 0xcb, 0x23, 0x1d, 0x55, 0xe9, 0x9d, 0x8e, 0xe1, 0x9a, 0x44,
-	0x44, 0x5a, 0xeb, 0x48, 0x1f, 0xd5, 0x30, 0x86, 0x56, 0x8c, 0x22, 0xda, 0x10, 0x41, 0x0a, 0x13,
-	0x87, 0x43, 0x5e, 0x5c, 0x63, 0x98, 0x41, 0x46, 0x46, 0xdf, 0x64, 0x00, 0x6a, 0xa4, 0x96, 0x0d,
-	0xcd, 0xa3, 0x26, 0xbe, 0x0f, 0x77, 0x63, 0xf8, 0x90, 0xde, 0x1c, 0x1d, 0xb5, 0x52, 0xbe, 0x9f,
-	0x5c, 0x18, 0x92, 0x8e, 0xb6, 0xf6, 0xff, 0x50, 0x00, 0x58, 0x7f, 0x1d, 0xae, 0x5d, 0xd6, 0x45,
-	0x61, 0x90, 0x3c, 0x89, 0x95, 0x59, 0x4e, 0x5d, 0xa8, 0xa2, 0xa1, 0xa2, 0x5c, 0x1a, 0xfe, 0x5e,
-	0xd2, 0x0c, 0x15, 0xe5, 0xd7, 0xab, 0x71, 0x58, 0x30, 0x0c, 0x15, 0x15, 0xd2, 0xc2, 0x3d, 0x69,
-	0x68, 0xa8, 0xa8, 0x98, 0x16, 0xd6, 0x64, 0x51, 0x8d, 0x1f, 0x01, 0x47, 0x15, 0x41, 0x51, 0x51,
-	0x39, 0x6d, 0x62, 0x28, 0x8b, 0x44, 0x45, 0x95, 0x4d, 0x78, 0x30, 0x90, 0x51, 0x35, 0x0d, 0x8f,
-	0x14, 0xd9, 0xd0, 0x51, 0x2d, 0x6d, 0xfa, 0x4c, 0x1e, 0xa8, 0x08, 0xd2, 0xe8, 0x50, 0x3a, 0x15,
-	0x50, 0x3d, 0x8d, 0x9e, 0xca, 0xa7, 0x02, 0x6a, 0xa4, 0x51, 0x43, 0x22, 0x02, 0x6a, 0x6e, 0x6c,
-	0x44, 0x32, 0x04, 0xd4, 0xc2, 0xdb, 0xb0, 0x15, 0x47, 0xa5, 0xd7, 0x02, 0xda, 0xda, 0x8c, 0x9b,
-	0x61, 0x08, 0x08, 0x6d, 0x46, 0x99, 0xc2, 0x77, 0xf7, 0x7f, 0x9d, 0x83, 0x46, 0xfc, 0xdf, 0x2d,
-	0x4d, 0x45, 0xfe, 0xd2, 0xb3, 0x3c, 0x1b, 0xe9, 0xe9, 0xa4, 0x49, 0x92, 0xea, 0x19, 0xca, 0xd1,
-	0x72, 0x96, 0x56, 0x11, 0xce, 0x05, 0x79, 0x40, 0x5f, 0x0b, 0x94, 0xa7, 0xa5, 0x23, 0x49, 0x2b,
-	0xaa, 0x42, 0x1f, 0x0e, 0xc1, 0x90, 0x55, 0x85, 0x16, 0xbc, 0x93, 0x6f, 0xbe, 0xff, 0xfa, 0xda,
-	0x09, 0x6e, 0x96, 0x97, 0x07, 0x63, 0x77, 0x76, 0xe8, 0x2e, 0xec, 0xf9, 0xd8, 0xf5, 0x26, 0x87,
-	0x13, 0xfb, 0xd6, 0x19, 0xdb, 0x5f, 0xcd, 0xac, 0xb9, 0x75, 0x6d, 0xcf, 0xec, 0x79, 0xf0, 0x95,
-	0x33, 0x0f, 0x6c, 0xef, 0xca, 0x1a, 0xdb, 0x87, 0xb7, 0xcf, 0x0e, 0xaf, 0xdd, 0xc3, 0xc9, 0xcc,
-	0xb9, 0x2c, 0xb3, 0x96, 0xf6, 0xd9, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x12, 0xb2, 0x2d, 0xe4,
-	0x50, 0x19, 0x00, 0x00,
+	// 2760 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x58, 0x4f, 0x8f, 0xdb, 0xc6,
+	0x15, 0xb7, 0xfe, 0x4b, 0x4f, 0xd2, 0xee, 0x78, 0xfc, 0x4f, 0x59, 0xdb, 0x89, 0xa3, 0x26, 0x81,
+	0xb3, 0x6d, 0x76, 0xd7, 0xf2, 0xba, 0x70, 0x1a, 0x04, 0x05, 0x97, 0xa2, 0x56, 0x8c, 0x25, 0x92,
+	0x19, 0x52, 0x6b, 0x6f, 0x2e, 0x04, 0x57, 0xe2, 0x6a, 0x09, 0x48, 0xa4, 0x40, 0x52, 0x1b, 0x1b,
+	0xe8, 0xa9, 0xe8, 0xa5, 0xa7, 0x7e, 0x89, 0xa2, 0xc8, 0xa9, 0x97, 0xf6, 0xd8, 0x43, 0x7b, 0xe8,
+	0x17, 0xe8, 0xad, 0x9f, 0xa1, 0x5f, 0xa0, 0xc7, 0x62, 0x66, 0x48, 0x89, 0xa2, 0x68, 0xc7, 0x01,
+	0x7a, 0x1b, 0xbe, 0xdf, 0xef, 0xbd, 0x79, 0xf3, 0xe6, 0xcd, 0x9b, 0x37, 0x84, 0xc6, 0x64, 0xee,
+	0x1c, 0x5e, 0x7d, 0x7f, 0xb0, 0xf0, 0xbd, 0xd0, 0xc3, 0x85, 0xc9, 0xdc, 0xd9, 0xfb, 0x68, 0xea,
+	0x79, 0xd3, 0x99, 0x7d, 0xc8, 0x44, 0x17, 0xcb, 0xcb, 0xc3, 0xd0, 0x99, 0xdb, 0x41, 0x68, 0xcd,
+	0x17, 0x9c, 0xd5, 0xde, 0x83, 0xe2, 0x68, 0xe9, 0x4c, 0x30, 0x86, 0xe2, 0x72, 0xe9, 0x4c, 0x5a,
+	0xb9, 0x47, 0xb9, 0xc7, 0x35, 0xc2, 0xc6, 0xed, 0x9f, 0x03, 0xf4, 0x2d, 0x7f, 0xf2, 0xbd, 0xe5,
+	0xdb, 0x72, 0x17, 0x3f, 0x4c, 0x30, 0xea, 0x9d, 0xda, 0xc1, 0x64, 0xee, 0x1c, 0x50, 0xd5, 0x88,
+	0x7c, 0x0f, 0x0a, 0x23, 0xdf, 0xc1, 0x08, 0x0a, 0x4b, 0xdf, 0x89, 0xcc, 0xd0, 0x61, 0xfb, 0x77,
+	0x05, 0xd8, 0x11, 0xbd, 0xf9, 0xc2, 0x73, 0x6d, 0x37, 0xd4, 0x43, 0x2b, 0xb4, 0x71, 0x1f, 0x70,
+	0x40, 0x07, 0xe6, 0xcc, 0x0a, 0x42, 0x73, 0x7c, 0x65, 0xb9, 0x53, 0x3b, 0x36, 0xbc, 0x77, 0xc0,
+	0x5d, 0x3e, 0x88, 0x5d, 0x3e, 0x30, 0x62, 0x97, 0x09, 0x62, 0x5a, 0x03, 0x2b, 0x08, 0x45, 0xae,
+	0x83, 0xbf, 0x84, 0xba, 0x35, 0x99, 0x3b, 0xae, 0xc9, 0x90, 0x56, 0xfe, 0x51, 0xee, 0xf1, 0x4e,
+	0xa7, 0xc5, 0x7c, 0x5b, 0xcd, 0x29, 0x50, 0x02, 0x9b, 0x98, 0x80, 0xb5, 0x1a, 0xe3, 0x5f, 0x02,
+	0x78, 0x0b, 0xdb, 0x8f, 0x34, 0x0b, 0x4c, 0xf3, 0xde, 0xa6, 0xa6, 0xba, 0xb0, 0x7d, 0xae, 0x58,
+	0xf3, 0xe2, 0x21, 0x9d, 0x72, 0x19, 0x58, 0x53, 0x3b, 0x52, 0x2c, 0x66, 0x4d, 0x39, 0xa2, 0x84,
+	0x68, 0xca, 0xe5, 0x6a, 0xcc, 0xbc, 0x9d, 0x59, 0xfe, 0x3c, 0x52, 0x2d, 0x65, 0x7a, 0x4b, 0x09,
+	0xb1, 0xb7, 0xab, 0x31, 0xfe, 0x35, 0x34, 0x83, 0xd0, 0x72, 0x27, 0x17, 0x6f, 0x22, 0xe5, 0x32,
+	0x53, 0xde, 0xdb, 0x54, 0xd6, 0x39, 0x85, 0xab, 0x37, 0x82, 0xc4, 0x57, 0xfb, 0x3f, 0x79, 0xb8,
+	0xb5, 0xe6, 0xd9, 0x6e, 0xe0, 0xf9, 0x5d, 0x2b, 0xb4, 0xf0, 0x6d, 0x28, 0x5d, 0x5b, 0xb3, 0xa5,
+	0xcd, 0xc2, 0x5f, 0x22, 0xfc, 0x03, 0x7f, 0x06, 0xc5, 0xf0, 0xcd, 0x22, 0x0e, 0x28, 0x66, 0xb3,
+	0x50, 0xfa, 0x19, 0x45, 0x8d, 0x37, 0x0b, 0x9b, 0x30, 0x1c, 0x7f, 0x0a, 0xa5, 0x60, 0x6c, 0xcd,
+	0xe2, 0xf8, 0xed, 0x32, 0x22, 0x23, 0xe9, 0x54, 0x4c, 0x38, 0x8a, 0x1f, 0x40, 0x6d, 0xe1, 0xdb,
+	0x63, 0x27, 0x70, 0x3c, 0x97, 0x45, 0xac, 0x44, 0xd6, 0x02, 0xfc, 0x39, 0x94, 0xe9, 0x9a, 0x96,
+	0x41, 0x14, 0x91, 0x9b, 0xcc, 0x0a, 0xf7, 0x51, 0x67, 0x00, 0x89, 0x08, 0xf8, 0x67, 0xd0, 0x5c,
+	0xba, 0x4e, 0x18, 0x98, 0x13, 0x27, 0x58, 0xcc, 0xac, 0x37, 0x2c, 0x0c, 0x35, 0xd2, 0x60, 0xc2,
+	0x2e, 0x97, 0xe1, 0xe7, 0x50, 0x5b, 0xa5, 0x79, 0xab, 0xf2, 0xa3, 0x59, 0xb5, 0x26, 0xe3, 0x7d,
+	0xb8, 0xc9, 0xd6, 0x6f, 0x2e, 0x17, 0x13, 0x9a, 0x9f, 0x3e, 0x8d, 0x74, 0xf5, 0x51, 0xee, 0x71,
+	0x93, 0xec, 0x32, 0x60, 0xc4, 0xe4, 0x84, 0xee, 0xc8, 0x7d, 0xa8, 0x4d, 0xac, 0xd0, 0x32, 0x59,
+	0x9c, 0x6a, 0xcc, 0x8d, 0x2a, 0x15, 0xd0, 0xe8, 0xb4, 0xff, 0x51, 0x86, 0x7b, 0x9a, 0xe7, 0x87,
+	0xeb, 0x6d, 0x0d, 0x43, 0xdf, 0xb9, 0x58, 0x86, 0x76, 0x80, 0xbf, 0x85, 0x9d, 0xb1, 0xe7, 0xba,
+	0xf6, 0x38, 0xf4, 0x7c, 0xae, 0x9d, 0x63, 0xcb, 0xde, 0x67, 0xcb, 0x7e, 0x8b, 0xd6, 0x81, 0x18,
+	0xab, 0xb0, 0xe8, 0x37, 0xc7, 0xc9, 0x4f, 0xfc, 0x1c, 0x4a, 0xc1, 0xc2, 0xb6, 0x27, 0xd1, 0x7e,
+	0xb5, 0xdf, 0x69, 0x49, 0xa7, 0x4c, 0xc2, 0x15, 0xb0, 0x00, 0x55, 0x16, 0x92, 0xb1, 0x37, 0x8b,
+	0xf6, 0xf0, 0xd3, 0x77, 0x2a, 0x6b, 0x11, 0x99, 0xac, 0xd4, 0xf0, 0xa7, 0xb0, 0xb3, 0xb8, 0x7a,
+	0x13, 0x38, 0x63, 0x6b, 0x66, 0xce, 0xac, 0x0b, 0x7b, 0xc6, 0x76, 0xb8, 0x46, 0x9a, 0xb1, 0x74,
+	0x40, 0x85, 0x74, 0xeb, 0xe6, 0xd6, 0x62, 0xe1, 0xb8, 0xd3, 0x88, 0x55, 0xe2, 0x5b, 0x17, 0x09,
+	0x39, 0xe9, 0x18, 0x9a, 0x0b, 0xcf, 0x35, 0x9d, 0x89, 0x39, 0xf6, 0xdc, 0x4b, 0x67, 0xca, 0xf6,
+	0xb7, 0xde, 0x41, 0x91, 0x4f, 0xae, 0x3c, 0x11, 0x99, 0x9c, 0xd4, 0x17, 0xeb, 0x0f, 0xfc, 0x14,
+	0xee, 0xb0, 0xd5, 0x98, 0xd6, 0x32, 0xf4, 0x5c, 0x7b, 0xea, 0x85, 0x8e, 0x15, 0xd2, 0x54, 0xa3,
+	0x9b, 0x5f, 0x25, 0xb7, 0x19, 0x28, 0x6c, 0x62, 0xed, 0x05, 0x34, 0x37, 0x62, 0x8a, 0x1f, 0x40,
+	0x4b, 0x54, 0x15, 0x45, 0x12, 0x0d, 0x95, 0x98, 0xc6, 0xb9, 0x26, 0x99, 0x23, 0xa5, 0x2b, 0xf5,
+	0x64, 0x45, 0xea, 0xa2, 0x1b, 0xb8, 0x0a, 0x45, 0xf2, 0xcd, 0xf1, 0x33, 0x94, 0xc3, 0x0d, 0xa8,
+	0xf6, 0xe4, 0x13, 0x89, 0x98, 0x03, 0x11, 0xe5, 0xf1, 0x2e, 0xd4, 0xf9, 0x97, 0x2e, 0x9a, 0x9a,
+	0x88, 0x0a, 0xb8, 0x09, 0x35, 0x2e, 0x18, 0x6a, 0x2a, 0x2a, 0xe2, 0x1a, 0x94, 0x88, 0xde, 0x79,
+	0xda, 0x41, 0xa5, 0xf6, 0x9f, 0x73, 0x50, 0x62, 0xc1, 0xc7, 0xb7, 0x60, 0x57, 0xd7, 0x24, 0xa9,
+	0xbb, 0x31, 0x43, 0x1d, 0x2a, 0xdd, 0x73, 0x45, 0x18, 0xca, 0x22, 0xca, 0x51, 0x2b, 0xa7, 0xf2,
+	0xa9, 0x70, 0x22, 0x1b, 0xe6, 0x13, 0x94, 0xc7, 0x3b, 0x00, 0xab, 0xcf, 0x23, 0x54, 0x48, 0x7e,
+	0x77, 0x9e, 0xa1, 0x62, 0xf2, 0xfb, 0xf8, 0x08, 0x95, 0xa8, 0x57, 0x6b, 0xfe, 0x11, 0x2a, 0x27,
+	0x05, 0xc7, 0x47, 0x47, 0xa8, 0x82, 0x11, 0x34, 0x86, 0x52, 0x6c, 0xe1, 0xe8, 0x08, 0x55, 0x93,
+	0x92, 0x27, 0x9d, 0x67, 0x47, 0xa8, 0xd6, 0xfe, 0x0d, 0x54, 0xe3, 0xfd, 0xc6, 0x77, 0x01, 0x6b,
+	0x44, 0x35, 0x54, 0x51, 0x1d, 0x6c, 0x78, 0xdd, 0x80, 0xaa, 0x64, 0xf4, 0x25, 0xa2, 0x48, 0x06,
+	0xca, 0xd1, 0x28, 0x9d, 0x6a, 0xaa, 0x82, 0xf2, 0x74, 0xdd, 0xaf, 0xd8, 0xb0, 0x80, 0x01, 0xca,
+	0xaf, 0x4e, 0x75, 0x3a, 0x66, 0xe1, 0x38, 0xed, 0x09, 0xba, 0x81, 0x4a, 0x54, 0xac, 0x4b, 0x44,
+	0x16, 0x06, 0xa8, 0x4c, 0xf5, 0x24, 0x4a, 0xa8, 0xd0, 0xd1, 0x89, 0x6c, 0xe8, 0xa8, 0xda, 0x1e,
+	0xc1, 0xc3, 0x8d, 0x2c, 0xe4, 0x35, 0x3f, 0x71, 0x90, 0xb6, 0x92, 0x25, 0xf7, 0x1e, 0xc9, 0xd2,
+	0x1e, 0x43, 0x3d, 0x81, 0xe1, 0x3b, 0x50, 0xe6, 0x46, 0x98, 0x76, 0x83, 0x94, 0x18, 0x17, 0x7f,
+	0x0d, 0xf7, 0x23, 0xdb, 0xa1, 0x6f, 0xb9, 0xc1, 0xdc, 0x09, 0xcd, 0x85, 0xed, 0x3b, 0xde, 0xc4,
+	0x19, 0x3b, 0xe1, 0x1b, 0x76, 0xce, 0x9a, 0xa4, 0xc5, 0xb8, 0x46, 0x44, 0xd0, 0xd6, 0x78, 0x5b,
+	0x82, 0x07, 0xa2, 0xe7, 0x86, 0x96, 0xe3, 0xda, 0x7e, 0x56, 0x0d, 0xd8, 0x3e, 0x33, 0xb9, 0x8c,
+	0x33, 0xd3, 0xfe, 0x67, 0x0e, 0xee, 0x6a, 0xc1, 0x32, 0xcb, 0xc2, 0x39, 0xdc, 0x0c, 0x96, 0x8b,
+	0x85, 0xe7, 0x87, 0xf6, 0xc4, 0xbc, 0xf6, 0x66, 0xa1, 0x35, 0x8d, 0x0b, 0xc9, 0x2f, 0x78, 0x00,
+	0x32, 0xf5, 0x0e, 0xf4, 0x58, 0xe9, 0x8c, 0xeb, 0x10, 0x14, 0xa4, 0x24, 0x6d, 0x0d, 0x50, 0x9a,
+	0x85, 0x3f, 0x82, 0xfb, 0xfa, 0x48, 0xd3, 0x54, 0x62, 0x48, 0x5d, 0xf3, 0x4c, 0x1d, 0x18, 0xc2,
+	0xe9, 0xe6, 0xf9, 0xa8, 0x40, 0xe1, 0xec, 0xf8, 0x39, 0x4f, 0x81, 0xb3, 0xce, 0xd3, 0x23, 0x94,
+	0x67, 0xa3, 0x27, 0x4f, 0x9e, 0xa1, 0x42, 0xfb, 0x5f, 0x25, 0xf8, 0x88, 0x85, 0x69, 0x6c, 0x3b,
+	0xd7, 0x89, 0x88, 0x04, 0x89, 0x05, 0x69, 0x50, 0xbf, 0xf4, 0xfc, 0xb9, 0x79, 0x69, 0xd1, 0x13,
+	0x19, 0x2d, 0xe5, 0x90, 0x2d, 0xe5, 0x47, 0x54, 0x0f, 0x7a, 0x9e, 0x3f, 0xef, 0x31, 0x35, 0x02,
+	0x97, 0xab, 0x31, 0xee, 0x03, 0xb0, 0xcd, 0x33, 0x13, 0x57, 0xd9, 0xe7, 0xef, 0x65, 0x90, 0xd5,
+	0xd8, 0x1a, 0x53, 0x66, 0xa5, 0xe1, 0x63, 0x68, 0xcc, 0xad, 0xd7, 0xf4, 0xd2, 0x09, 0x2d, 0x77,
+	0xcc, 0x6f, 0xbb, 0x26, 0xa9, 0xcf, 0xad, 0xd7, 0xdd, 0x48, 0x84, 0xbf, 0x06, 0x9c, 0xa4, 0x98,
+	0xfc, 0x5a, 0x2c, 0x66, 0x5f, 0x8b, 0x28, 0xa1, 0xc9, 0x24, 0xb4, 0x3a, 0xfa, 0xaf, 0xcd, 0xef,
+	0xad, 0x6b, 0x7b, 0x66, 0xbb, 0xd3, 0xf0, 0xaa, 0x55, 0x7a, 0x54, 0x78, 0xdc, 0x24, 0x0d, 0xff,
+	0xf5, 0xcb, 0x95, 0x8c, 0x92, 0xc2, 0x0d, 0x52, 0x99, 0x93, 0xc2, 0x24, 0xe9, 0x57, 0x80, 0xd6,
+	0x8c, 0xc8, 0x8d, 0x4a, 0xb6, 0x1b, 0xbb, 0x6b, 0x22, 0x13, 0xb4, 0xff, 0x9e, 0x03, 0x58, 0x07,
+	0x13, 0xdf, 0x83, 0x5b, 0x3d, 0x95, 0x0c, 0xcd, 0x9e, 0xc0, 0x6a, 0xe2, 0x48, 0x79, 0xa1, 0xa8,
+	0x2f, 0x15, 0x5e, 0x0c, 0xbf, 0xd5, 0x7b, 0x1a, 0xaf, 0x53, 0x74, 0x64, 0x6a, 0x83, 0x91, 0x8e,
+	0xf2, 0xf4, 0x4c, 0xd3, 0xcf, 0xce, 0x73, 0x54, 0xa0, 0x19, 0x41, 0x39, 0x45, 0x5a, 0x22, 0x56,
+	0x94, 0x12, 0x15, 0xbf, 0xea, 0x69, 0xfc, 0xcc, 0x8b, 0x3d, 0xed, 0x98, 0x9f, 0x79, 0xb1, 0xa7,
+	0x75, 0x50, 0x95, 0x8d, 0x34, 0xe1, 0x05, 0xaa, 0xe1, 0x32, 0xe4, 0x5f, 0x75, 0x10, 0xd0, 0x82,
+	0xa1, 0xd2, 0xfa, 0x82, 0xea, 0x54, 0x53, 0xec, 0x69, 0xa8, 0x41, 0x0d, 0x52, 0xbe, 0x29, 0x88,
+	0x2a, 0x6a, 0xae, 0xbe, 0xba, 0xa2, 0x8a, 0x76, 0xda, 0x57, 0x50, 0x64, 0x5b, 0x86, 0xa0, 0x11,
+	0xd5, 0xf0, 0xd8, 0xe9, 0x9f, 0x58, 0xa9, 0x98, 0x2b, 0xaa, 0x82, 0x4a, 0xb4, 0x30, 0x2b, 0xa7,
+	0xa6, 0xa6, 0x2a, 0x9d, 0x64, 0xa5, 0x6a, 0xff, 0xbb, 0x02, 0xb5, 0x55, 0xf6, 0xd0, 0x06, 0xda,
+	0xb5, 0xe6, 0x76, 0xdc, 0x40, 0xd3, 0x31, 0x7e, 0x0c, 0xa5, 0xf1, 0xcc, 0x0a, 0x82, 0x8d, 0x36,
+	0x6a, 0xa5, 0xc2, 0x92, 0x8c, 0x13, 0xf0, 0x23, 0xa8, 0x4f, 0xec, 0x60, 0xec, 0x3b, 0x0b, 0x76,
+	0x6f, 0x15, 0x98, 0x91, 0xa4, 0x08, 0xdf, 0x85, 0xf2, 0xc2, 0xf2, 0x6d, 0x37, 0x8c, 0x6e, 0xd7,
+	0xe8, 0x0b, 0x7f, 0x02, 0x3b, 0x7c, 0x64, 0xfa, 0xf6, 0xcc, 0x5c, 0x78, 0xbc, 0x89, 0x2a, 0x91,
+	0x06, 0x97, 0x12, 0x7b, 0xa6, 0x79, 0x01, 0xde, 0x87, 0xea, 0xf8, 0xca, 0x99, 0x4d, 0x7c, 0xdb,
+	0x65, 0x49, 0x53, 0xef, 0xec, 0x6c, 0x3a, 0x43, 0x56, 0x38, 0x4d, 0xf6, 0xab, 0xa8, 0xed, 0x37,
+	0x7d, 0xfb, 0x9a, 0x25, 0x4f, 0x8d, 0xd4, 0x63, 0x19, 0xb1, 0xaf, 0x29, 0xe5, 0xd2, 0xf1, 0xe7,
+	0x2b, 0x4a, 0x95, 0x53, 0x62, 0x59, 0x44, 0x09, 0xbc, 0xcb, 0x70, 0x45, 0xe1, 0x1d, 0x52, 0x3d,
+	0x96, 0x51, 0xca, 0x43, 0x80, 0xc0, 0xf6, 0x1d, 0x6b, 0x66, 0xba, 0xcb, 0x79, 0x0b, 0x18, 0xa1,
+	0xc6, 0x25, 0xca, 0x72, 0x8e, 0x3f, 0x80, 0xea, 0xfc, 0x72, 0x6a, 0xb2, 0xa8, 0xd6, 0x19, 0x58,
+	0x99, 0x5f, 0x4e, 0x15, 0x1a, 0xd8, 0x87, 0x00, 0x73, 0x6f, 0x62, 0xcf, 0x38, 0xd8, 0xe0, 0x9a,
+	0x4c, 0xc2, 0xe0, 0xdb, 0x50, 0xb2, 0x66, 0x8e, 0x15, 0xb4, 0x9a, 0x0c, 0xe1, 0x1f, 0xd4, 0x9e,
+	0x15, 0x04, 0x76, 0x48, 0x6b, 0xfd, 0x0e, 0xb7, 0xc7, 0xbe, 0xe5, 0x09, 0xbd, 0x04, 0x9c, 0xc0,
+	0xbc, 0xf4, 0x97, 0xad, 0x5d, 0xd6, 0x31, 0x94, 0x9c, 0xa0, 0xe7, 0x2f, 0xf1, 0x33, 0xee, 0x01,
+	0x6d, 0xf9, 0x5a, 0xe8, 0x47, 0xfb, 0x48, 0xea, 0x5d, 0x97, 0x76, 0x86, 0x7b, 0xfc, 0x0d, 0x74,
+	0x93, 0x69, 0x54, 0xf9, 0x43, 0xc9, 0x77, 0xd8, 0x6b, 0x68, 0xf5, 0x8a, 0xc2, 0x99, 0xaf, 0x28,
+	0xfc, 0x39, 0x94, 0x78, 0x7b, 0x7f, 0x8b, 0xe1, 0xb7, 0xb6, 0xda, 0xfb, 0x90, 0xf6, 0xd4, 0xf1,
+	0x63, 0x22, 0x60, 0x2d, 0x32, 0xf5, 0xcf, 0x6a, 0xdd, 0x66, 0xbb, 0x9a, 0x7a, 0x4c, 0xac, 0xfb,
+	0x7c, 0x02, 0xc1, 0xba, 0xe7, 0xff, 0x0a, 0x6a, 0xb4, 0xba, 0x9b, 0x56, 0x18, 0xfa, 0xad, 0x0e,
+	0x9b, 0xe9, 0xc1, 0xbb, 0xba, 0xbe, 0xfe, 0x0d, 0x52, 0xa5, 0x0a, 0x54, 0x82, 0xbf, 0x61, 0xed,
+	0x2b, 0xbf, 0xda, 0xb8, 0x85, 0xa7, 0xcc, 0xc2, 0xc7, 0xd1, 0xd4, 0x6f, 0xbf, 0xf5, 0xfa, 0x37,
+	0x58, 0xdf, 0xca, 0x71, 0x66, 0xeb, 0x39, 0x54, 0x17, 0xc1, 0x92, 0x5b, 0x39, 0x66, 0x56, 0xee,
+	0xbf, 0xe3, 0xee, 0xea, 0xdf, 0x20, 0x95, 0x45, 0xb0, 0x64, 0x9a, 0xdf, 0x02, 0x0a, 0xd7, 0x45,
+	0x9c, 0x5b, 0x78, 0xc6, 0x2c, 0x7c, 0xf2, 0x3e, 0x15, 0xbe, 0x7f, 0x83, 0xec, 0x26, 0xf4, 0x29,
+	0x70, 0x02, 0x50, 0x0d, 0x16, 0xf6, 0xd8, 0xb9, 0x74, 0xc6, 0xed, 0x1f, 0x72, 0x50, 0x8d, 0xdf,
+	0xbe, 0xf8, 0x2b, 0xa8, 0x27, 0x1e, 0xaa, 0xef, 0xf1, 0x4e, 0x85, 0xd9, 0xea, 0x89, 0x8a, 0xdb,
+	0x50, 0xf4, 0x3d, 0x2f, 0x64, 0x25, 0x60, 0xfb, 0xd4, 0x31, 0x6c, 0x35, 0xc1, 0x85, 0xe7, 0x85,
+	0xf6, 0x84, 0x9d, 0xfe, 0xf7, 0x98, 0xe0, 0x84, 0xb1, 0xdb, 0xff, 0xcd, 0xc3, 0xad, 0xa1, 0x37,
+	0x71, 0x2e, 0x1d, 0xeb, 0x62, 0x66, 0xff, 0xbf, 0x0a, 0xd2, 0x67, 0xab, 0x72, 0x53, 0xc8, 0x74,
+	0xfc, 0xed, 0xe5, 0xa7, 0x98, 0x51, 0x7e, 0x56, 0x07, 0xb2, 0xf4, 0xb6, 0x03, 0x59, 0xde, 0x3c,
+	0x90, 0xd1, 0x11, 0xaa, 0x64, 0x1d, 0xa1, 0xd4, 0x9b, 0xbf, 0xfa, 0x13, 0xde, 0xfc, 0xc2, 0x76,
+	0xe2, 0x67, 0xbc, 0x95, 0xd2, 0x8d, 0x66, 0x32, 0xfd, 0x93, 0x59, 0xb2, 0xff, 0xd7, 0x02, 0x7d,
+	0x43, 0x24, 0xa2, 0xc7, 0xdf, 0x10, 0x43, 0x4d, 0x55, 0x24, 0xc5, 0xd8, 0x7e, 0x43, 0xec, 0xc1,
+	0xdd, 0x2d, 0x94, 0xdf, 0x4e, 0xb9, 0x0c, 0x4c, 0xec, 0x0b, 0xba, 0x2e, 0xd3, 0x5b, 0x75, 0xdb,
+	0xea, 0x89, 0x20, 0xbe, 0xd0, 0x06, 0x82, 0x22, 0xa1, 0x42, 0x06, 0x2a, 0xaa, 0x8a, 0x21, 0xc8,
+	0x8a, 0x44, 0x50, 0x91, 0x36, 0x6e, 0x29, 0x54, 0x53, 0x5f, 0xd2, 0xe7, 0xca, 0x48, 0xd3, 0x06,
+	0xe7, 0xa8, 0x44, 0x1b, 0xfb, 0x14, 0xa1, 0x27, 0x28, 0xa8, 0x8c, 0x3f, 0x80, 0x3b, 0x29, 0xb9,
+	0x2e, 0x29, 0xba, 0x4a, 0x50, 0x25, 0x03, 0x1a, 0xaa, 0xdd, 0xd1, 0x40, 0x42, 0x55, 0xda, 0x32,
+	0x6c, 0x4d, 0x47, 0x0c, 0x54, 0xcb, 0x98, 0x46, 0xd4, 0x46, 0x08, 0x32, 0xd6, 0x7d, 0x22, 0x18,
+	0x86, 0x44, 0xce, 0x51, 0x3d, 0x03, 0xd3, 0x0d, 0x95, 0x08, 0xa7, 0x12, 0x6a, 0x64, 0xf9, 0x20,
+	0x0d, 0x55, 0x72, 0x8e, 0x9a, 0xf8, 0x43, 0xd8, 0x4b, 0x41, 0x06, 0x11, 0x14, 0x5d, 0x94, 0xe4,
+	0x33, 0x89, 0xa0, 0x9d, 0xfd, 0xbf, 0xe4, 0x12, 0xbf, 0x42, 0xd6, 0x99, 0x12, 0xeb, 0x99, 0x42,
+	0x77, 0x28, 0x2b, 0xa6, 0x6e, 0x08, 0xc6, 0xe6, 0xf6, 0x45, 0x81, 0x4e, 0xe1, 0xf1, 0x06, 0xde,
+	0x87, 0x7b, 0x5b, 0xe8, 0x40, 0x15, 0x5f, 0x48, 0x5d, 0x94, 0xc7, 0x6d, 0xf8, 0x70, 0x0b, 0xd4,
+	0xfb, 0x23, 0xc3, 0x90, 0x95, 0x53, 0xb3, 0x4b, 0x0d, 0x14, 0xf0, 0x43, 0xf8, 0x20, 0xc3, 0x7c,
+	0x64, 0xa2, 0xb8, 0xff, 0x43, 0x0e, 0xf0, 0xf6, 0x9f, 0xa9, 0x95, 0x96, 0xaa, 0xd1, 0x4d, 0xdd,
+	0xf2, 0x39, 0xf6, 0x6a, 0x03, 0x8e, 0x5d, 0x8e, 0x17, 0x94, 0x00, 0xbb, 0xb2, 0x2e, 0x9c, 0x0c,
+	0x98, 0xcf, 0x19, 0xaa, 0x92, 0xc2, 0xc1, 0x42, 0x16, 0x68, 0x48, 0x3a, 0x5d, 0x0e, 0x2a, 0xee,
+	0xff, 0x29, 0x19, 0xe0, 0xf5, 0xbf, 0xb0, 0x55, 0x80, 0x47, 0x3a, 0x7d, 0x3d, 0xbc, 0x3d, 0xc0,
+	0x9b, 0x78, 0xec, 0x6d, 0xb4, 0xe3, 0x1b, 0xa8, 0xdc, 0x1d, 0x48, 0x09, 0x57, 0x93, 0x90, 0x20,
+	0x1a, 0xf2, 0x19, 0x3d, 0x1f, 0x59, 0x7a, 0x27, 0x23, 0xfd, 0x1c, 0x15, 0xf7, 0xff, 0x90, 0xfc,
+	0x29, 0xb6, 0xfe, 0xf3, 0xb6, 0xce, 0x84, 0x81, 0x40, 0x86, 0xef, 0xca, 0x84, 0x0d, 0x3c, 0x76,
+	0xf4, 0x63, 0x78, 0x98, 0xa9, 0x4d, 0x4c, 0x22, 0x69, 0x82, 0x4c, 0x50, 0x7e, 0xbd, 0xd7, 0x09,
+	0x8a, 0x48, 0x64, 0x43, 0x16, 0x85, 0x01, 0x2a, 0xc4, 0x89, 0xbf, 0x01, 0x0f, 0x85, 0x6f, 0x54,
+	0x7a, 0xa0, 0x33, 0x31, 0x59, 0x51, 0x09, 0x2a, 0x65, 0xfa, 0xf5, 0x52, 0x20, 0x0a, 0xdd, 0x96,
+	0xf2, 0x3a, 0x09, 0x13, 0xa8, 0xac, 0x74, 0x25, 0x43, 0x22, 0x43, 0x59, 0x11, 0x0c, 0x09, 0x55,
+	0xf6, 0xff, 0x96, 0x83, 0x3b, 0x99, 0xbf, 0x13, 0xf1, 0x23, 0x78, 0xc0, 0xb4, 0x75, 0x43, 0x50,
+	0xba, 0x27, 0xe7, 0x19, 0x51, 0x89, 0xa3, 0x96, 0x66, 0xa4, 0x4a, 0x5c, 0x0a, 0xef, 0xab, 0x46,
+	0x62, 0x07, 0x37, 0x31, 0x51, 0x1d, 0xd0, 0x64, 0x7b, 0x0c, 0x9f, 0x64, 0x80, 0x1a, 0x51, 0xcf,
+	0xe4, 0x2e, 0x3d, 0x40, 0xba, 0x44, 0xce, 0x64, 0x51, 0x42, 0xc5, 0xfd, 0xdf, 0x17, 0xa0, 0xb9,
+	0xf1, 0x9f, 0x12, 0xb7, 0xe0, 0xf6, 0x99, 0x30, 0x18, 0x49, 0xdb, 0xd5, 0xf8, 0x36, 0xa0, 0x04,
+	0xc2, 0x1f, 0x19, 0x39, 0x5a, 0xa7, 0x36, 0xf8, 0xdc, 0xf9, 0x3c, 0x2d, 0x6c, 0x09, 0x39, 0x7d,
+	0x01, 0xeb, 0xa6, 0x20, 0xa2, 0x42, 0x26, 0xd0, 0x15, 0x51, 0x31, 0x65, 0x49, 0x18, 0x6a, 0x12,
+	0x91, 0xe8, 0x03, 0x68, 0x73, 0xde, 0x97, 0x82, 0x61, 0xe8, 0xa8, 0x9c, 0x92, 0xf6, 0x25, 0x62,
+	0x7c, 0x87, 0x2a, 0x29, 0x1b, 0xa2, 0x34, 0xd0, 0xe5, 0x91, 0x8e, 0xaa, 0x34, 0xa7, 0x13, 0x72,
+	0x4d, 0x22, 0x22, 0xad, 0x75, 0xa4, 0x8f, 0x6a, 0x18, 0xc3, 0x4e, 0x02, 0x22, 0xda, 0x10, 0x41,
+	0x4a, 0x26, 0x0e, 0x87, 0xbc, 0xb8, 0x26, 0x64, 0x06, 0x19, 0x19, 0x7d, 0x93, 0x09, 0x50, 0x23,
+	0x35, 0x6d, 0x64, 0x1e, 0x35, 0xf1, 0x1d, 0xb8, 0x99, 0x90, 0x0f, 0x69, 0xe6, 0xe8, 0x68, 0x27,
+	0xe5, 0xfb, 0xc9, 0xb9, 0x21, 0xe9, 0x68, 0x77, 0xff, 0x8f, 0x05, 0x80, 0xf5, 0x63, 0x73, 0xed,
+	0xb2, 0x2e, 0x0a, 0x83, 0xcd, 0x9d, 0x58, 0x99, 0xe5, 0xd0, 0xb9, 0x2a, 0x1a, 0x2a, 0xca, 0xa5,
+	0xc5, 0xdf, 0x49, 0x9a, 0xa1, 0xa2, 0xfc, 0x7a, 0x36, 0x2e, 0x16, 0x0c, 0x43, 0x45, 0x85, 0x34,
+	0xb9, 0x27, 0x0d, 0x0d, 0x15, 0x15, 0xd3, 0x64, 0x4d, 0x16, 0xd5, 0xe4, 0x16, 0x70, 0xa9, 0x22,
+	0x28, 0x2a, 0x2a, 0xa7, 0x4d, 0x0c, 0x65, 0x91, 0xa8, 0xa8, 0xb2, 0x2d, 0x1e, 0x0c, 0x64, 0x54,
+	0x4d, 0x8b, 0x47, 0x8a, 0x6c, 0xe8, 0xa8, 0x96, 0x36, 0xfd, 0x42, 0x1e, 0xa8, 0x08, 0xd2, 0xd2,
+	0xa1, 0x74, 0x2a, 0xa0, 0x7a, 0x5a, 0x7a, 0x2a, 0x9f, 0x0a, 0xa8, 0x91, 0x96, 0x1a, 0x12, 0x11,
+	0x50, 0x73, 0x6b, 0x21, 0x92, 0x21, 0xa0, 0x1d, 0x7c, 0x0b, 0x76, 0x93, 0x52, 0xe9, 0x95, 0x80,
+	0x76, 0xb7, 0xe3, 0x66, 0x18, 0x02, 0x42, 0xdb, 0x51, 0xa6, 0xe2, 0x9b, 0xfb, 0xbf, 0xcd, 0x41,
+	0x23, 0xf9, 0xaf, 0x9d, 0x1e, 0x45, 0x7e, 0xd3, 0xb3, 0x73, 0x36, 0xd2, 0xd3, 0x87, 0x66, 0x13,
+	0x54, 0x5f, 0xa0, 0x1c, 0x2d, 0x67, 0x69, 0x15, 0xe1, 0x4c, 0x90, 0x07, 0xf4, 0xb6, 0x40, 0x79,
+	0x5a, 0x3a, 0x36, 0x61, 0x45, 0x55, 0xe8, 0xc5, 0x21, 0x18, 0xb2, 0xaa, 0xd0, 0x82, 0x77, 0xf2,
+	0xd5, 0x77, 0x5f, 0x4e, 0x9d, 0xf0, 0x6a, 0x79, 0x71, 0x30, 0xf6, 0xe6, 0x87, 0xde, 0xc2, 0x76,
+	0xc7, 0x9e, 0x3f, 0x39, 0x9c, 0xd8, 0xd7, 0xce, 0xd8, 0xfe, 0x62, 0x6e, 0xb9, 0xd6, 0xd4, 0x9e,
+	0xdb, 0x6e, 0xf8, 0x85, 0xe3, 0x86, 0xb6, 0x7f, 0x69, 0x8d, 0xed, 0xc3, 0xeb, 0xa7, 0x87, 0x53,
+	0xef, 0x70, 0x32, 0x77, 0x2e, 0xca, 0xac, 0x43, 0x7e, 0xfa, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff,
+	0x3b, 0x2e, 0xf2, 0xc9, 0x00, 0x1b, 0x00, 0x00,
 }
diff --git a/vendor/github.com/opencord/device-management-interface/go/dmi/hw_events_mgmt_service.pb.go b/vendor/github.com/opencord/device-management-interface/go/dmi/hw_events_mgmt_service.pb.go
index 2b5dc6e..80b3002 100644
--- a/vendor/github.com/opencord/device-management-interface/go/dmi/hw_events_mgmt_service.pb.go
+++ b/vendor/github.com/opencord/device-management-interface/go/dmi/hw_events_mgmt_service.pb.go
@@ -7,8 +7,11 @@
 	context "context"
 	fmt "fmt"
 	proto "github.com/golang/protobuf/proto"
+	empty "github.com/golang/protobuf/ptypes/empty"
 	timestamp "github.com/golang/protobuf/ptypes/timestamp"
 	grpc "google.golang.org/grpc"
+	codes "google.golang.org/grpc/codes"
+	status "google.golang.org/grpc/status"
 	math "math"
 )
 
@@ -73,6 +76,9 @@
 	EventIds_EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL              EventIds = 502
 	EventIds_EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL_RECOVERED EventIds = 503
 	EventIds_EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL_RECOVERED    EventIds = 504
+	EventIds_EVENT_HW_DEVICE_REBOOT                               EventIds = 505
+	EventIds_EVENT_HW_TEMPERATURE_SENSOR_FAILED                   EventIds = 506
+	EventIds_EVENT_HW_ALL_TEMPERATURE_SENSORS_FAILED              EventIds = 507
 )
 
 var EventIds_name = map[int32]string{
@@ -118,6 +124,9 @@
 	502: "EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL",
 	503: "EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL_RECOVERED",
 	504: "EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL_RECOVERED",
+	505: "EVENT_HW_DEVICE_REBOOT",
+	506: "EVENT_HW_TEMPERATURE_SENSOR_FAILED",
+	507: "EVENT_HW_ALL_TEMPERATURE_SENSORS_FAILED",
 }
 
 var EventIds_value = map[string]int32{
@@ -163,6 +172,9 @@
 	"EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL":                 502,
 	"EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL_RECOVERED":    503,
 	"EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL_RECOVERED":       504,
+	"EVENT_HW_DEVICE_REBOOT":                                  505,
+	"EVENT_HW_TEMPERATURE_SENSOR_FAILED":                      506,
+	"EVENT_HW_ALL_TEMPERATURE_SENSORS_FAILED":                 507,
 }
 
 func (x EventIds) String() string {
@@ -957,98 +969,103 @@
 func init() { proto.RegisterFile("dmi/hw_events_mgmt_service.proto", fileDescriptor_8962d785556e9979) }
 
 var fileDescriptor_8962d785556e9979 = []byte{
-	// 1448 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0x4b, 0x73, 0xdb, 0xd4,
-	0x17, 0x8f, 0xad, 0x3c, 0x9c, 0x93, 0xc6, 0x7f, 0xf5, 0x4e, 0xff, 0x6d, 0xe2, 0x4e, 0x5b, 0xe3,
-	0x40, 0x93, 0x06, 0x62, 0xb7, 0x09, 0xb4, 0x74, 0xba, 0x00, 0xc5, 0x56, 0x6a, 0x0d, 0x8e, 0x9c,
-	0xb9, 0x91, 0x1d, 0x86, 0x45, 0x35, 0x37, 0xd6, 0xb5, 0x2d, 0x6a, 0x49, 0xae, 0x74, 0x95, 0x50,
-	0x98, 0x61, 0xc1, 0x92, 0x15, 0xaf, 0x25, 0xc3, 0x27, 0xa0, 0xb0, 0xe4, 0x2b, 0xf0, 0x58, 0xf1,
-	0x5d, 0x78, 0x2d, 0x19, 0x5d, 0xc9, 0xb6, 0xe2, 0x47, 0x9c, 0xce, 0xb0, 0xb3, 0xce, 0xf9, 0xfd,
-	0xce, 0xf9, 0x5d, 0x9d, 0x73, 0x8f, 0x8e, 0x21, 0x6b, 0x58, 0x66, 0xa1, 0x7d, 0xaa, 0xd3, 0x13,
-	0x6a, 0x33, 0x4f, 0xb7, 0x5a, 0x16, 0xd3, 0x3d, 0xea, 0x9e, 0x98, 0x0d, 0x9a, 0xef, 0xba, 0x0e,
-	0x73, 0x90, 0x60, 0x58, 0x66, 0xe6, 0x72, 0x00, 0x6b, 0x38, 0x96, 0xe5, 0xd8, 0x5e, 0x68, 0xcf,
-	0x5c, 0x0a, 0x99, 0xd1, 0xd3, 0xad, 0x96, 0xe3, 0xb4, 0x3a, 0xb4, 0xc0, 0x9f, 0x8e, 0xfd, 0x66,
-	0x81, 0x99, 0x16, 0xf5, 0x18, 0xb1, 0xba, 0x21, 0x20, 0x67, 0xc2, 0x62, 0x9d, 0x74, 0x7c, 0xaa,
-	0x3d, 0xef, 0x52, 0xb4, 0x0a, 0x0b, 0xa6, 0xcd, 0xf4, 0x13, 0xd2, 0x59, 0x49, 0x64, 0x13, 0x1b,
-	0x42, 0x79, 0x06, 0xcf, 0x9b, 0x36, 0xab, 0x93, 0x0e, 0xba, 0x0e, 0x29, 0xbf, 0xe7, 0x4b, 0x66,
-	0x13, 0x1b, 0xb3, 0xe5, 0x19, 0xbc, 0xe0, 0x47, 0xce, 0x1b, 0xb0, 0xd8, 0xec, 0x38, 0x24, 0xf4,
-	0x0a, 0xd9, 0xc4, 0x46, 0xb2, 0x3c, 0x83, 0x53, 0xdc, 0x54, 0x27, 0x9d, 0xdd, 0x39, 0x10, 0x4e,
-	0x48, 0x27, 0x87, 0x01, 0x8e, 0x08, 0xa3, 0xee, 0x3e, 0x71, 0x9f, 0x7a, 0x28, 0x07, 0xb3, 0x6d,
-	0xb3, 0xd5, 0xe6, 0x89, 0x96, 0xb6, 0xd3, 0x79, 0xc3, 0x32, 0xf3, 0x7d, 0x25, 0x98, 0xfb, 0x50,
-	0x16, 0x84, 0x8e, 0x73, 0xca, 0xf3, 0x8d, 0x42, 0x02, 0x57, 0xee, 0x29, 0x80, 0xd6, 0x76, 0xa9,
-	0xd7, 0x76, 0x3a, 0x86, 0x87, 0xd6, 0x61, 0xce, 0xef, 0x76, 0xa9, 0x1b, 0x05, 0xfd, 0x1f, 0x67,
-	0x0c, 0x72, 0x96, 0x67, 0x70, 0xe8, 0x0f, 0x80, 0x1d, 0xe7, 0x94, 0xba, 0x51, 0xe8, 0x71, 0x40,
-	0xee, 0xdf, 0x5d, 0x82, 0x45, 0xd6, 0x8b, 0x9f, 0xfb, 0x14, 0xae, 0xf4, 0x93, 0x29, 0x76, 0xd3,
-	0x71, 0x2d, 0xc2, 0x4c, 0xc7, 0x46, 0x6f, 0x41, 0xda, 0x39, 0x0e, 0xaa, 0x43, 0x8d, 0xe0, 0x0d,
-	0xf8, 0x74, 0xc2, 0xa1, 0x96, 0x7b, 0x28, 0x6e, 0x42, 0x05, 0x80, 0x7e, 0x6c, 0xef, 0x8c, 0x92,
-	0xc1, 0x91, 0x70, 0x0c, 0x92, 0xfb, 0x3c, 0x01, 0x29, 0x39, 0x68, 0x88, 0x62, 0xb3, 0x85, 0x36,
-	0x20, 0xc5, 0x9b, 0x43, 0x37, 0x0d, 0x9e, 0x2e, 0xbd, 0xbd, 0xcc, 0xb9, 0x1c, 0xa0, 0x18, 0x1e,
-	0x5e, 0xa0, 0xe1, 0x2f, 0xb4, 0x06, 0xcb, 0xa6, 0xa7, 0x37, 0x1c, 0xbb, 0x69, 0xb6, 0x7c, 0x97,
-	0x1a, 0x3c, 0x55, 0x0a, 0x5f, 0x32, 0xbd, 0x62, 0xdf, 0x36, 0x24, 0x46, 0x98, 0x2e, 0xe6, 0x2e,
-	0x2c, 0xf2, 0x54, 0x5e, 0x20, 0x66, 0x0d, 0xe6, 0x4c, 0x46, 0x2d, 0x6f, 0x25, 0x91, 0x15, 0x36,
-	0x96, 0xe2, 0x4a, 0x8a, 0xcd, 0x16, 0x0e, 0x7d, 0xb9, 0xef, 0x92, 0x80, 0x2a, 0xa6, 0xc7, 0x42,
-	0x1a, 0xa6, 0x5e, 0xd7, 0xb1, 0x3d, 0x8a, 0xd6, 0x60, 0xde, 0x63, 0x84, 0xf9, 0x5e, 0x74, 0x8c,
-	0x25, 0x4e, 0x3e, 0xe4, 0x26, 0x1c, 0xb9, 0xd0, 0x7d, 0x98, 0x77, 0x29, 0xf1, 0x1c, 0x9b, 0x8b,
-	0x4f, 0x6f, 0xdf, 0xe4, 0xa0, 0xd1, 0x68, 0x79, 0xcc, 0x51, 0x38, 0x42, 0xa3, 0xdb, 0x30, 0x1f,
-	0x5e, 0xa1, 0xe8, 0x48, 0xe9, 0x81, 0xb2, 0x40, 0x38, 0x8e, 0xbc, 0xc1, 0x3b, 0x0a, 0x19, 0xba,
-	0x41, 0x19, 0x31, 0x3b, 0x2b, 0xb3, 0xd9, 0xc4, 0xc6, 0x22, 0xbe, 0x14, 0x1a, 0x4b, 0xdc, 0x96,
-	0x7b, 0x02, 0xf3, 0x61, 0x78, 0x74, 0x05, 0xc4, 0x9a, 0x5a, 0x92, 0xf7, 0x14, 0x55, 0x2e, 0xe9,
-	0x58, 0x96, 0x0e, 0xab, 0xaa, 0x38, 0x83, 0x10, 0xa4, 0x6b, 0xea, 0x7b, 0x6a, 0xf5, 0x48, 0xd5,
-	0x4b, 0x72, 0x5d, 0x29, 0xca, 0x62, 0x22, 0xb0, 0x29, 0xaa, 0x26, 0x63, 0x55, 0xaa, 0xe8, 0x32,
-	0xc6, 0x55, 0x2c, 0x26, 0xd1, 0x55, 0x40, 0xa1, 0x5f, 0xaf, 0xa9, 0x58, 0x96, 0x8a, 0x65, 0x69,
-	0xb7, 0x22, 0x8b, 0x42, 0xee, 0x45, 0x02, 0x32, 0x91, 0xb4, 0xa8, 0x30, 0xbc, 0xbf, 0x30, 0x7d,
-	0xe6, 0x53, 0x8f, 0xa1, 0x4d, 0x58, 0x32, 0x68, 0x30, 0x01, 0x74, 0xdf, 0x8f, 0x8a, 0xbe, 0xb4,
-	0xbd, 0xc8, 0x0f, 0x54, 0xf3, 0x4d, 0x03, 0x43, 0xe8, 0x0d, 0x7e, 0xa3, 0x4d, 0x58, 0x68, 0xb4,
-	0x89, 0xdd, 0xa2, 0xde, 0x99, 0xdb, 0xd3, 0x3f, 0x78, 0x70, 0x7b, 0x23, 0x00, 0xda, 0x04, 0xd1,
-	0xa5, 0x1e, 0x65, 0x3a, 0x73, 0x74, 0x83, 0x36, 0x89, 0xdf, 0x61, 0xfc, 0x6d, 0xa5, 0xca, 0x33,
-	0x38, 0xcd, 0x3d, 0x9a, 0x53, 0x0a, 0xed, 0xc1, 0x7d, 0x70, 0xba, 0x34, 0xd4, 0x95, 0xfb, 0x36,
-	0x09, 0xd7, 0xc7, 0xea, 0x7d, 0x99, 0xca, 0xbe, 0x33, 0x54, 0xd9, 0xf5, 0xb8, 0xd0, 0x71, 0x61,
-	0x87, 0x4b, 0x3c, 0x52, 0x3a, 0x61, 0x4c, 0xe9, 0xdc, 0xff, 0xa8, 0x74, 0xdc, 0x56, 0x97, 0x2a,
-	0x4a, 0x49, 0x2f, 0x56, 0xd5, 0x3d, 0xe5, 0xb1, 0x28, 0x4c, 0x28, 0xe7, 0x6c, 0xee, 0x9b, 0x04,
-	0x2c, 0xf3, 0x73, 0xec, 0x53, 0x46, 0x4a, 0x84, 0x91, 0x97, 0xaa, 0xe0, 0x5d, 0x48, 0x37, 0x1c,
-	0xab, 0xeb, 0xd8, 0xc1, 0x1d, 0xe7, 0xf0, 0xe4, 0x30, 0x7c, 0xb9, 0x0f, 0xe0, 0x8c, 0xd7, 0xe2,
-	0x0c, 0x9b, 0x58, 0x34, 0x7a, 0x13, 0x03, 0x98, 0x4a, 0x2c, 0x9a, 0xfb, 0x2c, 0x09, 0x73, 0x5c,
-	0x16, 0x7a, 0x08, 0xe9, 0x70, 0x84, 0x58, 0x94, 0x11, 0x83, 0x30, 0x12, 0x29, 0x42, 0x83, 0x12,
-	0xf4, 0xa4, 0xe3, 0x65, 0xda, 0x7b, 0x0c, 0x80, 0x67, 0xa6, 0x4f, 0xf2, 0xdc, 0xe9, 0xf3, 0x00,
-	0x16, 0x5d, 0x62, 0x7a, 0xd4, 0xd0, 0xfb, 0x97, 0x30, 0x93, 0x0f, 0xbf, 0x4a, 0xf9, 0xde, 0x57,
-	0x29, 0xaf, 0xf5, 0xbe, 0x4a, 0x38, 0x15, 0x82, 0x35, 0x0f, 0xbd, 0x0b, 0xe9, 0xfe, 0xb8, 0xd1,
-	0x4d, 0xbb, 0xe9, 0xf0, 0x3b, 0xb9, 0xb4, 0xbd, 0x7a, 0x76, 0x2a, 0xc5, 0x06, 0x31, 0x5e, 0x66,
-	0x71, 0x2b, 0x5a, 0x85, 0x14, 0x31, 0x22, 0xee, 0x1c, 0x7f, 0x15, 0x0b, 0xc4, 0xe0, 0xae, 0xcd,
-	0xdf, 0xd3, 0xd1, 0x28, 0x55, 0x0c, 0x0f, 0xad, 0xc0, 0x15, 0xb9, 0x2e, 0xab, 0x9a, 0xae, 0x4a,
-	0xfb, 0x41, 0x11, 0xa3, 0xee, 0x10, 0x67, 0xd0, 0x4d, 0xc8, 0x84, 0x1e, 0x0d, 0x4b, 0xea, 0x61,
-	0x51, 0x56, 0xea, 0x32, 0xd6, 0x0f, 0x2a, 0xb5, 0xc7, 0x7a, 0xb5, 0xa6, 0x89, 0x06, 0xba, 0x01,
-	0xab, 0x13, 0xfc, 0x8a, 0x2a, 0x52, 0xb4, 0x05, 0x77, 0x46, 0xdd, 0xf5, 0x6a, 0x45, 0x93, 0x1e,
-	0xcb, 0xba, 0xb4, 0x5b, 0xad, 0xcb, 0xba, 0x56, 0xc6, 0xf2, 0x61, 0xb9, 0x5a, 0x29, 0x89, 0xcd,
-	0xf3, 0xe1, 0xbb, 0x72, 0xa5, 0x7a, 0x14, 0x83, 0xb7, 0xd0, 0x3d, 0xd8, 0x1a, 0x85, 0x6b, 0xf2,
-	0xfe, 0x81, 0x8c, 0x25, 0xad, 0x86, 0x47, 0x33, 0xb4, 0xa7, 0x53, 0x86, 0xb3, 0x98, 0xe3, 0x45,
-	0x15, 0x6b, 0x18, 0x07, 0xb6, 0xe1, 0x0c, 0x1f, 0x9e, 0x0f, 0x1f, 0x8e, 0xfe, 0x14, 0xe5, 0x61,
-	0x73, 0x14, 0x8e, 0xdf, 0xd7, 0x0f, 0xaa, 0x47, 0x32, 0x1e, 0x09, 0xdf, 0x99, 0x82, 0x1f, 0x8e,
-	0x6f, 0x8d, 0xc7, 0x6b, 0x93, 0xe2, 0xdb, 0x53, 0xf0, 0xc3, 0xf1, 0x9d, 0xf1, 0x0d, 0xb0, 0x27,
-	0x29, 0x95, 0x1a, 0x96, 0xc5, 0x2e, 0x7a, 0x00, 0x3b, 0x17, 0x6e, 0x00, 0x1d, 0xcb, 0xc5, 0x6a,
-	0x5d, 0xc6, 0x72, 0x49, 0x7c, 0x76, 0x3e, 0x71, 0x48, 0x46, 0x8c, 0xe8, 0xa2, 0x47, 0xf0, 0xe0,
-	0xa5, 0x9a, 0x22, 0x46, 0xf6, 0xa6, 0x93, 0x27, 0x67, 0x66, 0xe3, 0x25, 0x4f, 0x68, 0x94, 0x18,
-	0xd1, 0x3f, 0x9f, 0x38, 0x39, 0xe3, 0x09, 0x7a, 0x1b, 0xde, 0xbc, 0x78, 0xf3, 0xc4, 0x98, 0xa7,
-	0x53, 0x98, 0x93, 0x73, 0x7e, 0x34, 0x9e, 0xa9, 0x4d, 0xcf, 0xf9, 0x7c, 0x0a, 0x73, 0x72, 0xce,
-	0x8f, 0xd1, 0x3a, 0xac, 0x4d, 0x6c, 0xb2, 0x18, 0xf0, 0x13, 0x74, 0x0d, 0x50, 0x08, 0x3c, 0x38,
-	0xac, 0x0d, 0xc6, 0xd4, 0xcf, 0x09, 0x74, 0x15, 0x2e, 0x0f, 0x39, 0x14, 0x55, 0xfc, 0x65, 0xc8,
-	0xde, 0x6b, 0xdb, 0x5f, 0x13, 0x28, 0x0b, 0xd7, 0x47, 0xec, 0xb1, 0x4c, 0xbf, 0xc5, 0x98, 0x7b,
-	0x92, 0xda, 0x67, 0x7e, 0x9f, 0x1c, 0x48, 0x08, 0xec, 0x7d, 0x09, 0x2f, 0x92, 0x67, 0x09, 0x3d,
-	0x09, 0x3f, 0x24, 0x07, 0xa9, 0x62, 0x81, 0x62, 0xa9, 0x7e, 0x4c, 0xa2, 0x3b, 0xf0, 0x6a, 0x88,
-	0x28, 0x1e, 0xd4, 0xc6, 0xb4, 0x72, 0x11, 0x2b, 0x9a, 0x52, 0x94, 0x2a, 0xe2, 0x17, 0x02, 0xba,
-	0x0d, 0xaf, 0x9c, 0x07, 0xdd, 0x93, 0x34, 0xa9, 0x22, 0x7e, 0x29, 0xa0, 0x1d, 0xc8, 0x5f, 0x24,
-	0x64, 0x4c, 0xc7, 0x57, 0x02, 0xba, 0x0b, 0xaf, 0x4f, 0x0d, 0x1e, 0x63, 0x7c, 0x2d, 0xa0, 0x0c,
-	0xfc, 0x3f, 0x64, 0x94, 0x8f, 0xa2, 0xb5, 0x42, 0xc7, 0xf2, 0xa1, 0xac, 0x89, 0x7f, 0x08, 0xa8,
-	0xd0, 0x9b, 0x34, 0x03, 0xdf, 0x39, 0x67, 0xfb, 0x53, 0x40, 0x6f, 0xc0, 0xfa, 0x74, 0x42, 0x78,
-	0xc2, 0xbf, 0x04, 0xf4, 0xb0, 0xd7, 0x6d, 0x17, 0x09, 0x1f, 0x53, 0xfd, 0xb7, 0x80, 0xee, 0xc3,
-	0xbd, 0x0b, 0x26, 0x8a, 0xf1, 0xfe, 0x11, 0xb6, 0x7f, 0x4a, 0xc0, 0x0d, 0x95, 0x30, 0xf3, 0x84,
-	0x86, 0xdb, 0xdb, 0x3e, 0xb1, 0x49, 0x8b, 0x5a, 0xd4, 0x66, 0x87, 0xe1, 0x3f, 0x57, 0x74, 0x1f,
-	0x60, 0xb0, 0xb2, 0xa3, 0xf0, 0xef, 0x45, 0x99, 0xb8, 0xc6, 0x29, 0x71, 0xa9, 0x52, 0xca, 0x5c,
-	0x9b, 0xb0, 0xd4, 0xa3, 0x27, 0xb0, 0x5a, 0xeb, 0x1a, 0x84, 0xd1, 0x31, 0x6b, 0x21, 0xba, 0x35,
-	0x79, 0x61, 0xe4, 0x7b, 0x73, 0x26, 0x3b, 0x6d, 0xa3, 0xdc, 0x7d, 0xf4, 0xc1, 0xc3, 0x96, 0xc9,
-	0xda, 0xfe, 0x71, 0xbe, 0xe1, 0x58, 0x05, 0xa7, 0x4b, 0xed, 0x86, 0xe3, 0x1a, 0x85, 0x70, 0x1b,
-	0xdb, 0xb2, 0xfa, 0xe7, 0xd8, 0x32, 0x6d, 0x46, 0xdd, 0x26, 0x69, 0xd0, 0xc2, 0xc9, 0x4e, 0xa1,
-	0xe5, 0x14, 0x0c, 0xcb, 0x3c, 0x9e, 0xe7, 0x5b, 0xcc, 0xce, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff,
-	0x36, 0x83, 0x3b, 0x4c, 0xb3, 0x0f, 0x00, 0x00,
+	// 1521 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0x4b, 0x6f, 0xdb, 0xd6,
+	0x12, 0xb6, 0x44, 0x3f, 0xe4, 0xb1, 0xad, 0x30, 0x07, 0xb9, 0x8e, 0x2d, 0x23, 0x89, 0xae, 0x7c,
+	0x6f, 0xec, 0xb8, 0xb5, 0xe4, 0xd8, 0x69, 0xd2, 0x20, 0x8b, 0x96, 0x96, 0xe8, 0x48, 0xa8, 0x4c,
+	0x19, 0x47, 0x94, 0x5c, 0x74, 0x11, 0xe2, 0x58, 0x3c, 0x92, 0xd8, 0x88, 0xa4, 0x42, 0x1e, 0xd9,
+	0x4d, 0x0b, 0x74, 0xd1, 0x65, 0x57, 0x7d, 0x2d, 0x8b, 0xfe, 0x82, 0xa6, 0xfd, 0x15, 0x05, 0xfa,
+	0xf8, 0x2d, 0xdd, 0xf5, 0xdd, 0x4d, 0xc1, 0x43, 0x4a, 0xa2, 0xf5, 0xb0, 0x1c, 0xa0, 0x3b, 0x69,
+	0xe6, 0xfb, 0x66, 0xbe, 0xe1, 0xcc, 0x19, 0x1e, 0x42, 0x52, 0x37, 0x8d, 0x4c, 0xf3, 0x4c, 0xa3,
+	0xa7, 0xd4, 0x62, 0xae, 0x66, 0x36, 0x4c, 0xa6, 0xb9, 0xd4, 0x39, 0x35, 0x6a, 0x34, 0xdd, 0x76,
+	0x6c, 0x66, 0x23, 0x41, 0x37, 0x8d, 0xc4, 0x55, 0x0f, 0x56, 0xb3, 0x4d, 0xd3, 0xb6, 0x5c, 0xdf,
+	0x9e, 0x58, 0xf4, 0x99, 0xc1, 0xbf, 0x5b, 0x0d, 0xdb, 0x6e, 0xb4, 0x68, 0x86, 0xff, 0x3b, 0xe9,
+	0xd4, 0x33, 0xcc, 0x30, 0xa9, 0xcb, 0x88, 0xd9, 0x0e, 0x00, 0x6b, 0x83, 0x00, 0x6a, 0xb6, 0xd9,
+	0x73, 0xdf, 0x99, 0x32, 0x60, 0xbe, 0x4a, 0x5a, 0x1d, 0xaa, 0x3e, 0x6f, 0x53, 0xb4, 0x0a, 0x73,
+	0x86, 0xc5, 0xb4, 0x53, 0xd2, 0x5a, 0x89, 0x24, 0x23, 0x9b, 0x42, 0x7e, 0x0a, 0xcf, 0x1a, 0x16,
+	0xab, 0x92, 0x16, 0x5a, 0x83, 0x58, 0xa7, 0xeb, 0x8b, 0x26, 0x23, 0x9b, 0xd3, 0xf9, 0x29, 0x3c,
+	0xd7, 0x09, 0x9c, 0x37, 0x60, 0xbe, 0xde, 0xb2, 0x89, 0xef, 0x15, 0x92, 0x91, 0xcd, 0x68, 0x7e,
+	0x0a, 0xc7, 0xb8, 0xa9, 0x4a, 0x5a, 0xfb, 0x33, 0x20, 0x9c, 0x92, 0x56, 0x0a, 0x03, 0x1c, 0x13,
+	0x46, 0x9d, 0x43, 0xe2, 0x3c, 0x75, 0x51, 0x0a, 0xa6, 0x9b, 0x46, 0xa3, 0xc9, 0x13, 0x2d, 0xec,
+	0xc6, 0xd3, 0xba, 0x69, 0xa4, 0x7b, 0x4a, 0x30, 0xf7, 0xa1, 0x24, 0x08, 0x2d, 0xfb, 0x8c, 0xe7,
+	0x1b, 0x86, 0x78, 0xae, 0xd4, 0x53, 0x00, 0xb5, 0xe9, 0x50, 0xb7, 0x69, 0xb7, 0x74, 0x17, 0x6d,
+	0xc0, 0x4c, 0xa7, 0xdd, 0xa6, 0x4e, 0x10, 0xf4, 0x0a, 0x67, 0xf4, 0x73, 0xe6, 0xa7, 0xb0, 0xef,
+	0xf7, 0x80, 0x2d, 0xfb, 0x8c, 0x3a, 0x41, 0xe8, 0x51, 0x40, 0xee, 0xdf, 0x5f, 0x80, 0x79, 0xd6,
+	0x8d, 0x9f, 0xfa, 0x10, 0xae, 0xf5, 0x92, 0x15, 0xac, 0xba, 0xed, 0x98, 0x84, 0x19, 0xb6, 0x85,
+	0x5e, 0x83, 0xb8, 0x7d, 0xe2, 0xb5, 0x8e, 0xea, 0xde, 0x13, 0xe8, 0xd0, 0x31, 0x45, 0x2d, 0x75,
+	0x51, 0xdc, 0x84, 0x32, 0x00, 0xbd, 0xd8, 0xee, 0x39, 0x25, 0xfd, 0x92, 0x70, 0x08, 0x92, 0xfa,
+	0x38, 0x02, 0x31, 0xd9, 0x9b, 0x96, 0x6c, 0xbd, 0x81, 0x36, 0x21, 0xc6, 0x27, 0x47, 0x33, 0x74,
+	0x9e, 0x2e, 0xbe, 0xbb, 0xc4, 0xb9, 0x1c, 0x50, 0xd0, 0x5d, 0x3c, 0x47, 0xfd, 0x5f, 0x68, 0x1d,
+	0x96, 0x0c, 0x57, 0xab, 0xd9, 0x56, 0xdd, 0x68, 0x74, 0x1c, 0xaa, 0xf3, 0x54, 0x31, 0xbc, 0x68,
+	0xb8, 0xd9, 0x9e, 0x6d, 0x40, 0x8c, 0x30, 0x59, 0xcc, 0x0e, 0xcc, 0xf3, 0x54, 0xae, 0x27, 0x66,
+	0x1d, 0x66, 0x0c, 0x46, 0x4d, 0x77, 0x25, 0x92, 0x14, 0x36, 0x17, 0xc2, 0x4a, 0xb2, 0xf5, 0x06,
+	0xf6, 0x7d, 0xa9, 0xaf, 0xa2, 0x80, 0x8a, 0x86, 0xcb, 0x7c, 0x1a, 0xa6, 0x6e, 0xdb, 0xb6, 0x5c,
+	0x8a, 0xd6, 0x61, 0xd6, 0x65, 0x84, 0x75, 0xdc, 0xa0, 0x8c, 0x05, 0x4e, 0x2e, 0x73, 0x13, 0x0e,
+	0x5c, 0xe8, 0x3e, 0xcc, 0x3a, 0x94, 0xb8, 0xb6, 0xc5, 0xc5, 0xc7, 0x77, 0x6f, 0x72, 0xd0, 0x70,
+	0xb4, 0x34, 0xe6, 0x28, 0x1c, 0xa0, 0xd1, 0x6d, 0x98, 0xf5, 0xcf, 0x57, 0x50, 0x52, 0xbc, 0xaf,
+	0xcc, 0x13, 0x8e, 0x03, 0xaf, 0xf7, 0x8c, 0x7c, 0x86, 0xa6, 0x53, 0x46, 0x8c, 0xd6, 0xca, 0x74,
+	0x32, 0xb2, 0x39, 0x8f, 0x17, 0x7d, 0x63, 0x8e, 0xdb, 0x52, 0x4f, 0x60, 0xd6, 0x0f, 0x8f, 0xae,
+	0x81, 0x58, 0x51, 0x72, 0xf2, 0x41, 0x41, 0x91, 0x73, 0x1a, 0x96, 0xa5, 0x72, 0x49, 0x11, 0xa7,
+	0x10, 0x82, 0x78, 0x45, 0x79, 0x4b, 0x29, 0x1d, 0x2b, 0x5a, 0x4e, 0xae, 0x16, 0xb2, 0xb2, 0x18,
+	0xf1, 0x6c, 0x05, 0x45, 0x95, 0xb1, 0x22, 0x15, 0x35, 0x19, 0xe3, 0x12, 0x16, 0xa3, 0x68, 0x19,
+	0x90, 0xef, 0xd7, 0x2a, 0x0a, 0x96, 0xa5, 0x6c, 0x5e, 0xda, 0x2f, 0xca, 0xa2, 0x90, 0x7a, 0x11,
+	0x81, 0x44, 0x20, 0x2d, 0x68, 0x0c, 0x9f, 0x2f, 0x4c, 0x9f, 0x75, 0xa8, 0xcb, 0xd0, 0x16, 0x2c,
+	0xe8, 0xd4, 0x5b, 0x0f, 0x5a, 0xa7, 0x13, 0x34, 0x7d, 0x61, 0x77, 0x9e, 0x17, 0x54, 0xe9, 0x18,
+	0x3a, 0x06, 0xdf, 0xeb, 0xfd, 0x46, 0x5b, 0x30, 0x57, 0x6b, 0x12, 0xab, 0x41, 0xdd, 0x73, 0xa7,
+	0xa7, 0x57, 0xb8, 0x77, 0x7a, 0x03, 0x00, 0xda, 0x02, 0xd1, 0xa1, 0x2e, 0x65, 0x1a, 0xb3, 0x35,
+	0x9d, 0xd6, 0x49, 0xa7, 0xc5, 0xf8, 0xd3, 0x8a, 0xe5, 0xa7, 0x70, 0x9c, 0x7b, 0x54, 0x3b, 0xe7,
+	0xdb, 0xbd, 0xf3, 0x60, 0xb7, 0xa9, 0xaf, 0x2b, 0xf5, 0x65, 0x14, 0xd6, 0x46, 0xea, 0x7d, 0x99,
+	0xce, 0xbe, 0x31, 0xd0, 0xd9, 0x8d, 0xb0, 0xd0, 0x51, 0x61, 0x07, 0x5b, 0x3c, 0xd4, 0x3a, 0x61,
+	0x44, 0xeb, 0x9c, 0x7f, 0xa9, 0x75, 0xdc, 0x56, 0x95, 0x8a, 0x85, 0x9c, 0x96, 0x2d, 0x29, 0x07,
+	0x85, 0xc7, 0xa2, 0x30, 0xa6, 0x9d, 0xd3, 0xa9, 0x2f, 0x22, 0xb0, 0xc4, 0xeb, 0x38, 0xa4, 0x8c,
+	0xe4, 0x08, 0x23, 0x2f, 0xd5, 0xc1, 0x1d, 0x88, 0xd7, 0x6c, 0xb3, 0x6d, 0x5b, 0xde, 0x19, 0xe7,
+	0xf0, 0xe8, 0x20, 0x7c, 0xa9, 0x07, 0xe0, 0x8c, 0xff, 0x87, 0x19, 0x16, 0x31, 0x69, 0xf0, 0x24,
+	0xfa, 0x30, 0x85, 0x98, 0x34, 0xf5, 0x51, 0x14, 0x66, 0xb8, 0x2c, 0xf4, 0x10, 0xe2, 0xfe, 0x0a,
+	0x31, 0x29, 0x23, 0x3a, 0x61, 0x24, 0x50, 0x84, 0xfa, 0x2d, 0xe8, 0x4a, 0xc7, 0x4b, 0xb4, 0xfb,
+	0xd7, 0x03, 0x9e, 0xdb, 0x3e, 0xd1, 0x0b, 0xb7, 0xcf, 0x03, 0x98, 0x77, 0x88, 0xe1, 0x52, 0x5d,
+	0xeb, 0x1d, 0xc2, 0x44, 0xda, 0x7f, 0x23, 0xa5, 0xbb, 0x6f, 0xa4, 0xb4, 0xda, 0x7d, 0x65, 0xe1,
+	0x98, 0x0f, 0x56, 0x5d, 0xf4, 0x26, 0xc4, 0x7b, 0xeb, 0x46, 0x33, 0xac, 0xba, 0xcd, 0xcf, 0xe4,
+	0xc2, 0xee, 0xea, 0xf9, 0xad, 0x14, 0x5a, 0xc4, 0x78, 0x89, 0x85, 0xad, 0x68, 0x15, 0x62, 0x44,
+	0x0f, 0xb8, 0x33, 0xfc, 0x51, 0xcc, 0x11, 0x9d, 0xbb, 0xb6, 0xbe, 0xbb, 0x12, 0xac, 0xd2, 0x82,
+	0xee, 0xa2, 0x15, 0xb8, 0x26, 0x57, 0x65, 0x45, 0xd5, 0x14, 0xe9, 0xd0, 0x6b, 0x62, 0x30, 0x1d,
+	0xe2, 0x14, 0xba, 0x09, 0x09, 0xdf, 0xa3, 0x62, 0x49, 0x29, 0x67, 0xe5, 0x42, 0x55, 0xc6, 0xda,
+	0x51, 0xb1, 0xf2, 0x58, 0x2b, 0x55, 0x54, 0x51, 0x47, 0x37, 0x60, 0x75, 0x8c, 0xbf, 0xa0, 0x88,
+	0x14, 0x6d, 0xc3, 0x9d, 0x61, 0x77, 0xb5, 0x54, 0x54, 0xa5, 0xc7, 0xb2, 0x26, 0xed, 0x97, 0xaa,
+	0xb2, 0xa6, 0xe6, 0xb1, 0x5c, 0xce, 0x97, 0x8a, 0x39, 0xb1, 0x7e, 0x31, 0x7c, 0x5f, 0x2e, 0x96,
+	0x8e, 0x43, 0xf0, 0x06, 0xba, 0x0b, 0xdb, 0xc3, 0x70, 0x55, 0x3e, 0x3c, 0x92, 0xb1, 0xa4, 0x56,
+	0xf0, 0x70, 0x86, 0xe6, 0x64, 0xca, 0x60, 0x16, 0x63, 0xb4, 0xa8, 0x6c, 0x05, 0x63, 0xcf, 0x36,
+	0x98, 0xe1, 0xdd, 0x8b, 0xe1, 0x83, 0xd1, 0x9f, 0xa2, 0x34, 0x6c, 0x0d, 0xc3, 0xf1, 0xdb, 0xda,
+	0x51, 0xe9, 0x58, 0xc6, 0x43, 0xe1, 0x5b, 0x13, 0xf0, 0x83, 0xf1, 0xcd, 0xd1, 0x78, 0x75, 0x5c,
+	0x7c, 0x6b, 0x02, 0x7e, 0x30, 0xbe, 0x3d, 0x7a, 0x00, 0x0e, 0xa4, 0x42, 0xb1, 0x82, 0x65, 0xb1,
+	0x8d, 0x1e, 0xc0, 0xde, 0xa5, 0x07, 0x40, 0xc3, 0x72, 0xb6, 0x54, 0x95, 0xb1, 0x9c, 0x13, 0x9f,
+	0x5d, 0x4c, 0x1c, 0x90, 0x11, 0x22, 0x3a, 0xe8, 0x11, 0x3c, 0x78, 0xa9, 0xa1, 0x08, 0x91, 0xdd,
+	0xc9, 0xe4, 0xf1, 0x99, 0xd9, 0x68, 0xc9, 0x63, 0x06, 0x25, 0x44, 0xec, 0x5c, 0x4c, 0x1c, 0x9f,
+	0xf1, 0x14, 0xbd, 0x0e, 0xf7, 0x2e, 0x3f, 0x3c, 0x21, 0xe6, 0xd9, 0x04, 0xe6, 0xf8, 0x9c, 0xef,
+	0x8d, 0x66, 0xaa, 0x93, 0x73, 0x3e, 0x9f, 0xc0, 0x1c, 0x9f, 0xf3, 0x7d, 0xb4, 0x01, 0xeb, 0x63,
+	0x87, 0x2c, 0x04, 0xfc, 0x00, 0x5d, 0x07, 0xe4, 0x03, 0x8f, 0xca, 0x95, 0xfe, 0x9a, 0xfa, 0x3e,
+	0x82, 0x96, 0xe1, 0xea, 0x80, 0xa3, 0xa0, 0x88, 0x3f, 0x0c, 0xd8, 0xbb, 0x63, 0xfb, 0x63, 0x04,
+	0x25, 0x61, 0x6d, 0xc8, 0x1e, 0xca, 0xf4, 0x53, 0x88, 0x79, 0x20, 0x29, 0x3d, 0xe6, 0xd7, 0xd1,
+	0xbe, 0x04, 0xcf, 0xde, 0x93, 0xf0, 0x22, 0x7a, 0x9e, 0xd0, 0x95, 0xf0, 0x4d, 0xb4, 0x9f, 0x2a,
+	0x14, 0x28, 0x94, 0xea, 0xdb, 0x28, 0xba, 0x03, 0xff, 0xf3, 0x11, 0xd9, 0xa3, 0xca, 0x88, 0x51,
+	0xce, 0xe2, 0x82, 0x5a, 0xc8, 0x4a, 0x45, 0xf1, 0x13, 0x01, 0xdd, 0x86, 0xff, 0x5e, 0x04, 0x3d,
+	0x90, 0x54, 0xa9, 0x28, 0x7e, 0x2a, 0xa0, 0x3d, 0x48, 0x5f, 0x26, 0x64, 0x48, 0xc7, 0x67, 0x02,
+	0xda, 0x81, 0x57, 0x26, 0x06, 0x0f, 0x31, 0x3e, 0x17, 0x50, 0x02, 0xfe, 0xe3, 0x33, 0xf2, 0xc7,
+	0xc1, 0xb5, 0x42, 0xc3, 0x72, 0x59, 0x56, 0xc5, 0x5f, 0x04, 0x94, 0xe9, 0x6e, 0x9a, 0xbe, 0xef,
+	0x82, 0xda, 0x7e, 0x15, 0xd0, 0xab, 0xb0, 0x31, 0x99, 0xe0, 0x57, 0xf8, 0x9b, 0x80, 0x1e, 0x76,
+	0xa7, 0xed, 0x32, 0xe1, 0x43, 0xaa, 0x7f, 0x17, 0xd0, 0x7d, 0xb8, 0x7b, 0xc9, 0x44, 0x21, 0xde,
+	0x1f, 0x02, 0x5a, 0x83, 0xe5, 0xe1, 0x6a, 0xf7, 0x4b, 0x25, 0x55, 0xfc, 0x53, 0x40, 0x1b, 0x90,
+	0xea, 0x39, 0xc3, 0xd1, 0xca, 0xb2, 0x52, 0x2e, 0xf9, 0xd3, 0x2c, 0xe7, 0xc4, 0xbf, 0xce, 0x97,
+	0x29, 0x15, 0x8b, 0x23, 0xc0, 0xe5, 0x2e, 0xfa, 0x6f, 0x61, 0xf7, 0xe7, 0x08, 0xdc, 0x50, 0x08,
+	0x33, 0x4e, 0xa9, 0x7f, 0x63, 0x3c, 0x24, 0x16, 0x69, 0x50, 0x93, 0x5a, 0xac, 0xec, 0x7f, 0x4a,
+	0xa3, 0xfb, 0x00, 0xfd, 0xcf, 0x04, 0xe4, 0x7f, 0xd2, 0xe4, 0x89, 0xa3, 0x9f, 0x11, 0x87, 0x16,
+	0x72, 0x89, 0xeb, 0x63, 0x3e, 0x24, 0xd0, 0x13, 0x58, 0xad, 0xb4, 0x75, 0xc2, 0xe8, 0x88, 0xab,
+	0x28, 0xba, 0x35, 0xfe, 0x92, 0xca, 0xef, 0xea, 0x89, 0xe4, 0xa4, 0x5b, 0x2c, 0xba, 0x07, 0x8b,
+	0x65, 0xe6, 0x50, 0x62, 0x06, 0xca, 0x96, 0x87, 0x2e, 0x45, 0xb2, 0xf7, 0x99, 0x9e, 0x80, 0x7e,
+	0xa4, 0x9d, 0xc8, 0xfe, 0xa3, 0x77, 0x1e, 0x36, 0x0c, 0xd6, 0xec, 0x9c, 0xa4, 0x6b, 0xb6, 0x99,
+	0xb1, 0xdb, 0xd4, 0xaa, 0xd9, 0x8e, 0x9e, 0xf1, 0xef, 0x8d, 0xdb, 0x66, 0xaf, 0xfa, 0x6d, 0xc3,
+	0x62, 0xd4, 0xa9, 0x93, 0x1a, 0xcd, 0x9c, 0xee, 0x65, 0x1a, 0x76, 0x46, 0x37, 0x8d, 0x93, 0x59,
+	0x1e, 0x7a, 0xef, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x4b, 0x1b, 0x04, 0x13, 0x7a, 0x10, 0x00,
+	0x00,
 }
 
 // Reference imports to suppress errors if they are not otherwise used.
@@ -1069,6 +1086,8 @@
 	// The default behavior of the device is to report all the supported events
 	// This configuration is persisted across reboots of the device or the device manager
 	UpdateEventsConfiguration(ctx context.Context, in *EventsConfigurationRequest, opts ...grpc.CallOption) (*EventsConfigurationResponse, error)
+	// Initiate the server streaming of the events
+	StreamEvents(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (NativeEventsManagementService_StreamEventsClient, error)
 }
 
 type nativeEventsManagementServiceClient struct {
@@ -1097,6 +1116,38 @@
 	return out, nil
 }
 
+func (c *nativeEventsManagementServiceClient) StreamEvents(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (NativeEventsManagementService_StreamEventsClient, error) {
+	stream, err := c.cc.NewStream(ctx, &_NativeEventsManagementService_serviceDesc.Streams[0], "/dmi.NativeEventsManagementService/StreamEvents", opts...)
+	if err != nil {
+		return nil, err
+	}
+	x := &nativeEventsManagementServiceStreamEventsClient{stream}
+	if err := x.ClientStream.SendMsg(in); err != nil {
+		return nil, err
+	}
+	if err := x.ClientStream.CloseSend(); err != nil {
+		return nil, err
+	}
+	return x, nil
+}
+
+type NativeEventsManagementService_StreamEventsClient interface {
+	Recv() (*Event, error)
+	grpc.ClientStream
+}
+
+type nativeEventsManagementServiceStreamEventsClient struct {
+	grpc.ClientStream
+}
+
+func (x *nativeEventsManagementServiceStreamEventsClient) Recv() (*Event, error) {
+	m := new(Event)
+	if err := x.ClientStream.RecvMsg(m); err != nil {
+		return nil, err
+	}
+	return m, nil
+}
+
 // NativeEventsManagementServiceServer is the server API for NativeEventsManagementService service.
 type NativeEventsManagementServiceServer interface {
 	// List the supported events for the passed device
@@ -1105,6 +1156,22 @@
 	// The default behavior of the device is to report all the supported events
 	// This configuration is persisted across reboots of the device or the device manager
 	UpdateEventsConfiguration(context.Context, *EventsConfigurationRequest) (*EventsConfigurationResponse, error)
+	// Initiate the server streaming of the events
+	StreamEvents(*empty.Empty, NativeEventsManagementService_StreamEventsServer) error
+}
+
+// UnimplementedNativeEventsManagementServiceServer can be embedded to have forward compatible implementations.
+type UnimplementedNativeEventsManagementServiceServer struct {
+}
+
+func (*UnimplementedNativeEventsManagementServiceServer) ListEvents(ctx context.Context, req *HardwareID) (*ListEventsResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method ListEvents not implemented")
+}
+func (*UnimplementedNativeEventsManagementServiceServer) UpdateEventsConfiguration(ctx context.Context, req *EventsConfigurationRequest) (*EventsConfigurationResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method UpdateEventsConfiguration not implemented")
+}
+func (*UnimplementedNativeEventsManagementServiceServer) StreamEvents(req *empty.Empty, srv NativeEventsManagementService_StreamEventsServer) error {
+	return status.Errorf(codes.Unimplemented, "method StreamEvents not implemented")
 }
 
 func RegisterNativeEventsManagementServiceServer(s *grpc.Server, srv NativeEventsManagementServiceServer) {
@@ -1147,6 +1214,27 @@
 	return interceptor(ctx, in, info, handler)
 }
 
+func _NativeEventsManagementService_StreamEvents_Handler(srv interface{}, stream grpc.ServerStream) error {
+	m := new(empty.Empty)
+	if err := stream.RecvMsg(m); err != nil {
+		return err
+	}
+	return srv.(NativeEventsManagementServiceServer).StreamEvents(m, &nativeEventsManagementServiceStreamEventsServer{stream})
+}
+
+type NativeEventsManagementService_StreamEventsServer interface {
+	Send(*Event) error
+	grpc.ServerStream
+}
+
+type nativeEventsManagementServiceStreamEventsServer struct {
+	grpc.ServerStream
+}
+
+func (x *nativeEventsManagementServiceStreamEventsServer) Send(m *Event) error {
+	return x.ServerStream.SendMsg(m)
+}
+
 var _NativeEventsManagementService_serviceDesc = grpc.ServiceDesc{
 	ServiceName: "dmi.NativeEventsManagementService",
 	HandlerType: (*NativeEventsManagementServiceServer)(nil),
@@ -1160,6 +1248,12 @@
 			Handler:    _NativeEventsManagementService_UpdateEventsConfiguration_Handler,
 		},
 	},
-	Streams:  []grpc.StreamDesc{},
+	Streams: []grpc.StreamDesc{
+		{
+			StreamName:    "StreamEvents",
+			Handler:       _NativeEventsManagementService_StreamEvents_Handler,
+			ServerStreams: true,
+		},
+	},
 	Metadata: "dmi/hw_events_mgmt_service.proto",
 }
diff --git a/vendor/github.com/opencord/device-management-interface/go/dmi/hw_management_service.pb.go b/vendor/github.com/opencord/device-management-interface/go/dmi/hw_management_service.pb.go
index 18d6108..bd81132 100644
--- a/vendor/github.com/opencord/device-management-interface/go/dmi/hw_management_service.pb.go
+++ b/vendor/github.com/opencord/device-management-interface/go/dmi/hw_management_service.pb.go
@@ -9,6 +9,8 @@
 	proto "github.com/golang/protobuf/proto"
 	empty "github.com/golang/protobuf/ptypes/empty"
 	grpc "google.golang.org/grpc"
+	codes "google.golang.org/grpc/codes"
+	status "google.golang.org/grpc/status"
 	math "math"
 )
 
@@ -137,6 +139,12 @@
 	StartManagingDeviceResponse_OPERATION_ALREADY_IN_PROGRESS StartManagingDeviceResponse_Reason = 2
 	StartManagingDeviceResponse_INVALID_PARAMS                StartManagingDeviceResponse_Reason = 3
 	StartManagingDeviceResponse_INTERNAL_ERROR                StartManagingDeviceResponse_Reason = 4
+	// AUTHENTICATION_FAILURE is returned when the device management software/server is not able to connect to the underlying
+	// hardware because of authentication failures
+	StartManagingDeviceResponse_AUTHENTICATION_FAILURE StartManagingDeviceResponse_Reason = 5
+	// INCOMPATIBLE_DEVICE is returned when there is a mismatch between the device management software/server and the underlying
+	// hardware
+	StartManagingDeviceResponse_INCOMPATIBLE_DEVICE StartManagingDeviceResponse_Reason = 6
 )
 
 var StartManagingDeviceResponse_Reason_name = map[int32]string{
@@ -145,6 +153,8 @@
 	2: "OPERATION_ALREADY_IN_PROGRESS",
 	3: "INVALID_PARAMS",
 	4: "INTERNAL_ERROR",
+	5: "AUTHENTICATION_FAILURE",
+	6: "INCOMPATIBLE_DEVICE",
 }
 
 var StartManagingDeviceResponse_Reason_value = map[string]int32{
@@ -153,6 +163,8 @@
 	"OPERATION_ALREADY_IN_PROGRESS": 2,
 	"INVALID_PARAMS":                3,
 	"INTERNAL_ERROR":                4,
+	"AUTHENTICATION_FAILURE":        5,
+	"INCOMPATIBLE_DEVICE":           6,
 }
 
 func (x StartManagingDeviceResponse_Reason) String() string {
@@ -190,6 +202,31 @@
 	return fileDescriptor_eae902e73066286d, []int{8, 0}
 }
 
+type ManagedDevicesResponse_Reason int32
+
+const (
+	ManagedDevicesResponse_UNDEFINED_REASON ManagedDevicesResponse_Reason = 0
+	ManagedDevicesResponse_INTERNAL_ERROR   ManagedDevicesResponse_Reason = 1
+)
+
+var ManagedDevicesResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "INTERNAL_ERROR",
+}
+
+var ManagedDevicesResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON": 0,
+	"INTERNAL_ERROR":   1,
+}
+
+func (x ManagedDevicesResponse_Reason) String() string {
+	return proto.EnumName(ManagedDevicesResponse_Reason_name, int32(x))
+}
+
+func (ManagedDevicesResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{10, 0}
+}
+
 type SetRemoteEndpointResponse_Reason int32
 
 const (
@@ -227,7 +264,7 @@
 }
 
 func (SetRemoteEndpointResponse_Reason) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{11, 0}
+	return fileDescriptor_eae902e73066286d, []int{12, 0}
 }
 
 type GetLoggingEndpointResponse_Reason int32
@@ -258,7 +295,7 @@
 }
 
 func (GetLoggingEndpointResponse_Reason) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{12, 0}
+	return fileDescriptor_eae902e73066286d, []int{13, 0}
 }
 
 type GetMsgBusEndpointResponse_Reason int32
@@ -286,7 +323,7 @@
 }
 
 func (GetMsgBusEndpointResponse_Reason) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{14, 0}
+	return fileDescriptor_eae902e73066286d, []int{15, 0}
 }
 
 type SetLogLevelResponse_Reason int32
@@ -320,7 +357,7 @@
 }
 
 func (SetLogLevelResponse_Reason) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{17, 0}
+	return fileDescriptor_eae902e73066286d, []int{18, 0}
 }
 
 type GetLogLevelResponse_Reason int32
@@ -354,7 +391,38 @@
 }
 
 func (GetLogLevelResponse_Reason) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{19, 0}
+	return fileDescriptor_eae902e73066286d, []int{20, 0}
+}
+
+type RebootDeviceResponse_Reason int32
+
+const (
+	RebootDeviceResponse_UNDEFINED_REASON   RebootDeviceResponse_Reason = 0
+	RebootDeviceResponse_UNKNOWN_DEVICE     RebootDeviceResponse_Reason = 1
+	RebootDeviceResponse_INTERNAL_ERROR     RebootDeviceResponse_Reason = 2
+	RebootDeviceResponse_DEVICE_UNREACHABLE RebootDeviceResponse_Reason = 3
+)
+
+var RebootDeviceResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "INTERNAL_ERROR",
+	3: "DEVICE_UNREACHABLE",
+}
+
+var RebootDeviceResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON":   0,
+	"UNKNOWN_DEVICE":     1,
+	"INTERNAL_ERROR":     2,
+	"DEVICE_UNREACHABLE": 3,
+}
+
+func (x RebootDeviceResponse_Reason) String() string {
+	return proto.EnumName(RebootDeviceResponse_Reason_name, int32(x))
+}
+
+func (RebootDeviceResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{24, 0}
 }
 
 type PhysicalInventoryRequest struct {
@@ -855,18 +923,67 @@
 	return ""
 }
 
+type ManagedDeviceInfo struct {
+	Info                 *ModifiableComponent `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"`
+	DeviceUuid           *Uuid                `protobuf:"bytes,2,opt,name=device_uuid,json=deviceUuid,proto3" json:"device_uuid,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
+	XXX_unrecognized     []byte               `json:"-"`
+	XXX_sizecache        int32                `json:"-"`
+}
+
+func (m *ManagedDeviceInfo) Reset()         { *m = ManagedDeviceInfo{} }
+func (m *ManagedDeviceInfo) String() string { return proto.CompactTextString(m) }
+func (*ManagedDeviceInfo) ProtoMessage()    {}
+func (*ManagedDeviceInfo) Descriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{9}
+}
+
+func (m *ManagedDeviceInfo) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_ManagedDeviceInfo.Unmarshal(m, b)
+}
+func (m *ManagedDeviceInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_ManagedDeviceInfo.Marshal(b, m, deterministic)
+}
+func (m *ManagedDeviceInfo) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_ManagedDeviceInfo.Merge(m, src)
+}
+func (m *ManagedDeviceInfo) XXX_Size() int {
+	return xxx_messageInfo_ManagedDeviceInfo.Size(m)
+}
+func (m *ManagedDeviceInfo) XXX_DiscardUnknown() {
+	xxx_messageInfo_ManagedDeviceInfo.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ManagedDeviceInfo proto.InternalMessageInfo
+
+func (m *ManagedDeviceInfo) GetInfo() *ModifiableComponent {
+	if m != nil {
+		return m.Info
+	}
+	return nil
+}
+
+func (m *ManagedDeviceInfo) GetDeviceUuid() *Uuid {
+	if m != nil {
+		return m.DeviceUuid
+	}
+	return nil
+}
+
 type ManagedDevicesResponse struct {
-	Devices              []*ModifiableComponent `protobuf:"bytes,1,rep,name=devices,proto3" json:"devices,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
-	XXX_unrecognized     []byte                 `json:"-"`
-	XXX_sizecache        int32                  `json:"-"`
+	Status               Status                        `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               ManagedDevicesResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.ManagedDevicesResponse_Reason" json:"reason,omitempty"`
+	Devices              []*ManagedDeviceInfo          `protobuf:"bytes,3,rep,name=devices,proto3" json:"devices,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                      `json:"-"`
+	XXX_unrecognized     []byte                        `json:"-"`
+	XXX_sizecache        int32                         `json:"-"`
 }
 
 func (m *ManagedDevicesResponse) Reset()         { *m = ManagedDevicesResponse{} }
 func (m *ManagedDevicesResponse) String() string { return proto.CompactTextString(m) }
 func (*ManagedDevicesResponse) ProtoMessage()    {}
 func (*ManagedDevicesResponse) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{9}
+	return fileDescriptor_eae902e73066286d, []int{10}
 }
 
 func (m *ManagedDevicesResponse) XXX_Unmarshal(b []byte) error {
@@ -887,7 +1004,21 @@
 
 var xxx_messageInfo_ManagedDevicesResponse proto.InternalMessageInfo
 
-func (m *ManagedDevicesResponse) GetDevices() []*ModifiableComponent {
+func (m *ManagedDevicesResponse) GetStatus() Status {
+	if m != nil {
+		return m.Status
+	}
+	return Status_UNDEFINED_STATUS
+}
+
+func (m *ManagedDevicesResponse) GetReason() ManagedDevicesResponse_Reason {
+	if m != nil {
+		return m.Reason
+	}
+	return ManagedDevicesResponse_UNDEFINED_REASON
+}
+
+func (m *ManagedDevicesResponse) GetDevices() []*ManagedDeviceInfo {
 	if m != nil {
 		return m.Devices
 	}
@@ -907,7 +1038,7 @@
 func (m *SetLoggingEndpointRequest) String() string { return proto.CompactTextString(m) }
 func (*SetLoggingEndpointRequest) ProtoMessage()    {}
 func (*SetLoggingEndpointRequest) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{10}
+	return fileDescriptor_eae902e73066286d, []int{11}
 }
 
 func (m *SetLoggingEndpointRequest) XXX_Unmarshal(b []byte) error {
@@ -962,7 +1093,7 @@
 func (m *SetRemoteEndpointResponse) String() string { return proto.CompactTextString(m) }
 func (*SetRemoteEndpointResponse) ProtoMessage()    {}
 func (*SetRemoteEndpointResponse) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{11}
+	return fileDescriptor_eae902e73066286d, []int{12}
 }
 
 func (m *SetRemoteEndpointResponse) XXX_Unmarshal(b []byte) error {
@@ -1019,7 +1150,7 @@
 func (m *GetLoggingEndpointResponse) String() string { return proto.CompactTextString(m) }
 func (*GetLoggingEndpointResponse) ProtoMessage()    {}
 func (*GetLoggingEndpointResponse) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{12}
+	return fileDescriptor_eae902e73066286d, []int{13}
 }
 
 func (m *GetLoggingEndpointResponse) XXX_Unmarshal(b []byte) error {
@@ -1086,7 +1217,7 @@
 func (m *SetMsgBusEndpointRequest) String() string { return proto.CompactTextString(m) }
 func (*SetMsgBusEndpointRequest) ProtoMessage()    {}
 func (*SetMsgBusEndpointRequest) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{13}
+	return fileDescriptor_eae902e73066286d, []int{14}
 }
 
 func (m *SetMsgBusEndpointRequest) XXX_Unmarshal(b []byte) error {
@@ -1128,7 +1259,7 @@
 func (m *GetMsgBusEndpointResponse) String() string { return proto.CompactTextString(m) }
 func (*GetMsgBusEndpointResponse) ProtoMessage()    {}
 func (*GetMsgBusEndpointResponse) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{14}
+	return fileDescriptor_eae902e73066286d, []int{15}
 }
 
 func (m *GetMsgBusEndpointResponse) XXX_Unmarshal(b []byte) error {
@@ -1189,7 +1320,7 @@
 func (m *EntitiesLogLevel) String() string { return proto.CompactTextString(m) }
 func (*EntitiesLogLevel) ProtoMessage()    {}
 func (*EntitiesLogLevel) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{15}
+	return fileDescriptor_eae902e73066286d, []int{16}
 }
 
 func (m *EntitiesLogLevel) XXX_Unmarshal(b []byte) error {
@@ -1236,7 +1367,7 @@
 func (m *SetLogLevelRequest) String() string { return proto.CompactTextString(m) }
 func (*SetLogLevelRequest) ProtoMessage()    {}
 func (*SetLogLevelRequest) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{16}
+	return fileDescriptor_eae902e73066286d, []int{17}
 }
 
 func (m *SetLogLevelRequest) XXX_Unmarshal(b []byte) error {
@@ -1285,7 +1416,7 @@
 func (m *SetLogLevelResponse) String() string { return proto.CompactTextString(m) }
 func (*SetLogLevelResponse) ProtoMessage()    {}
 func (*SetLogLevelResponse) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{17}
+	return fileDescriptor_eae902e73066286d, []int{18}
 }
 
 func (m *SetLogLevelResponse) XXX_Unmarshal(b []byte) error {
@@ -1346,7 +1477,7 @@
 func (m *GetLogLevelRequest) String() string { return proto.CompactTextString(m) }
 func (*GetLogLevelRequest) ProtoMessage()    {}
 func (*GetLogLevelRequest) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{18}
+	return fileDescriptor_eae902e73066286d, []int{19}
 }
 
 func (m *GetLogLevelRequest) XXX_Unmarshal(b []byte) error {
@@ -1396,7 +1527,7 @@
 func (m *GetLogLevelResponse) String() string { return proto.CompactTextString(m) }
 func (*GetLogLevelResponse) ProtoMessage()    {}
 func (*GetLogLevelResponse) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{19}
+	return fileDescriptor_eae902e73066286d, []int{20}
 }
 
 func (m *GetLogLevelResponse) XXX_Unmarshal(b []byte) error {
@@ -1463,7 +1594,7 @@
 func (m *GetLoggableEntitiesRequest) String() string { return proto.CompactTextString(m) }
 func (*GetLoggableEntitiesRequest) ProtoMessage()    {}
 func (*GetLoggableEntitiesRequest) Descriptor() ([]byte, []int) {
-	return fileDescriptor_eae902e73066286d, []int{20}
+	return fileDescriptor_eae902e73066286d, []int{21}
 }
 
 func (m *GetLoggableEntitiesRequest) XXX_Unmarshal(b []byte) error {
@@ -1491,17 +1622,152 @@
 	return nil
 }
 
+type Heartbeat struct {
+	HeartbeatSignature   uint32   `protobuf:"fixed32,1,opt,name=heartbeat_signature,json=heartbeatSignature,proto3" json:"heartbeat_signature,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
+}
+
+func (m *Heartbeat) Reset()         { *m = Heartbeat{} }
+func (m *Heartbeat) String() string { return proto.CompactTextString(m) }
+func (*Heartbeat) ProtoMessage()    {}
+func (*Heartbeat) Descriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{22}
+}
+
+func (m *Heartbeat) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_Heartbeat.Unmarshal(m, b)
+}
+func (m *Heartbeat) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_Heartbeat.Marshal(b, m, deterministic)
+}
+func (m *Heartbeat) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_Heartbeat.Merge(m, src)
+}
+func (m *Heartbeat) XXX_Size() int {
+	return xxx_messageInfo_Heartbeat.Size(m)
+}
+func (m *Heartbeat) XXX_DiscardUnknown() {
+	xxx_messageInfo_Heartbeat.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Heartbeat proto.InternalMessageInfo
+
+func (m *Heartbeat) GetHeartbeatSignature() uint32 {
+	if m != nil {
+		return m.HeartbeatSignature
+	}
+	return 0
+}
+
+type RebootDeviceRequest struct {
+	DeviceUuid           *Uuid    `protobuf:"bytes,1,opt,name=device_uuid,json=deviceUuid,proto3" json:"device_uuid,omitempty"`
+	XXX_NoUnkeyedLiteral struct{} `json:"-"`
+	XXX_unrecognized     []byte   `json:"-"`
+	XXX_sizecache        int32    `json:"-"`
+}
+
+func (m *RebootDeviceRequest) Reset()         { *m = RebootDeviceRequest{} }
+func (m *RebootDeviceRequest) String() string { return proto.CompactTextString(m) }
+func (*RebootDeviceRequest) ProtoMessage()    {}
+func (*RebootDeviceRequest) Descriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{23}
+}
+
+func (m *RebootDeviceRequest) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_RebootDeviceRequest.Unmarshal(m, b)
+}
+func (m *RebootDeviceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_RebootDeviceRequest.Marshal(b, m, deterministic)
+}
+func (m *RebootDeviceRequest) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_RebootDeviceRequest.Merge(m, src)
+}
+func (m *RebootDeviceRequest) XXX_Size() int {
+	return xxx_messageInfo_RebootDeviceRequest.Size(m)
+}
+func (m *RebootDeviceRequest) XXX_DiscardUnknown() {
+	xxx_messageInfo_RebootDeviceRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_RebootDeviceRequest proto.InternalMessageInfo
+
+func (m *RebootDeviceRequest) GetDeviceUuid() *Uuid {
+	if m != nil {
+		return m.DeviceUuid
+	}
+	return nil
+}
+
+type RebootDeviceResponse struct {
+	Status               Status                      `protobuf:"varint,3,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               RebootDeviceResponse_Reason `protobuf:"varint,4,opt,name=reason,proto3,enum=dmi.RebootDeviceResponse_Reason" json:"reason,omitempty"`
+	ReasonDetail         string                      `protobuf:"bytes,5,opt,name=reason_detail,json=reasonDetail,proto3" json:"reason_detail,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                    `json:"-"`
+	XXX_unrecognized     []byte                      `json:"-"`
+	XXX_sizecache        int32                       `json:"-"`
+}
+
+func (m *RebootDeviceResponse) Reset()         { *m = RebootDeviceResponse{} }
+func (m *RebootDeviceResponse) String() string { return proto.CompactTextString(m) }
+func (*RebootDeviceResponse) ProtoMessage()    {}
+func (*RebootDeviceResponse) Descriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{24}
+}
+
+func (m *RebootDeviceResponse) XXX_Unmarshal(b []byte) error {
+	return xxx_messageInfo_RebootDeviceResponse.Unmarshal(m, b)
+}
+func (m *RebootDeviceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+	return xxx_messageInfo_RebootDeviceResponse.Marshal(b, m, deterministic)
+}
+func (m *RebootDeviceResponse) XXX_Merge(src proto.Message) {
+	xxx_messageInfo_RebootDeviceResponse.Merge(m, src)
+}
+func (m *RebootDeviceResponse) XXX_Size() int {
+	return xxx_messageInfo_RebootDeviceResponse.Size(m)
+}
+func (m *RebootDeviceResponse) XXX_DiscardUnknown() {
+	xxx_messageInfo_RebootDeviceResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_RebootDeviceResponse proto.InternalMessageInfo
+
+func (m *RebootDeviceResponse) GetStatus() Status {
+	if m != nil {
+		return m.Status
+	}
+	return Status_UNDEFINED_STATUS
+}
+
+func (m *RebootDeviceResponse) GetReason() RebootDeviceResponse_Reason {
+	if m != nil {
+		return m.Reason
+	}
+	return RebootDeviceResponse_UNDEFINED_REASON
+}
+
+func (m *RebootDeviceResponse) GetReasonDetail() string {
+	if m != nil {
+		return m.ReasonDetail
+	}
+	return ""
+}
+
 func init() {
 	proto.RegisterEnum("dmi.PhysicalInventoryResponse_Reason", PhysicalInventoryResponse_Reason_name, PhysicalInventoryResponse_Reason_value)
 	proto.RegisterEnum("dmi.HWComponentInfoGetResponse_Reason", HWComponentInfoGetResponse_Reason_name, HWComponentInfoGetResponse_Reason_value)
 	proto.RegisterEnum("dmi.HWComponentInfoSetResponse_Reason", HWComponentInfoSetResponse_Reason_name, HWComponentInfoSetResponse_Reason_value)
 	proto.RegisterEnum("dmi.StartManagingDeviceResponse_Reason", StartManagingDeviceResponse_Reason_name, StartManagingDeviceResponse_Reason_value)
 	proto.RegisterEnum("dmi.StopManagingDeviceResponse_Reason", StopManagingDeviceResponse_Reason_name, StopManagingDeviceResponse_Reason_value)
+	proto.RegisterEnum("dmi.ManagedDevicesResponse_Reason", ManagedDevicesResponse_Reason_name, ManagedDevicesResponse_Reason_value)
 	proto.RegisterEnum("dmi.SetRemoteEndpointResponse_Reason", SetRemoteEndpointResponse_Reason_name, SetRemoteEndpointResponse_Reason_value)
 	proto.RegisterEnum("dmi.GetLoggingEndpointResponse_Reason", GetLoggingEndpointResponse_Reason_name, GetLoggingEndpointResponse_Reason_value)
 	proto.RegisterEnum("dmi.GetMsgBusEndpointResponse_Reason", GetMsgBusEndpointResponse_Reason_name, GetMsgBusEndpointResponse_Reason_value)
 	proto.RegisterEnum("dmi.SetLogLevelResponse_Reason", SetLogLevelResponse_Reason_name, SetLogLevelResponse_Reason_value)
 	proto.RegisterEnum("dmi.GetLogLevelResponse_Reason", GetLogLevelResponse_Reason_name, GetLogLevelResponse_Reason_value)
+	proto.RegisterEnum("dmi.RebootDeviceResponse_Reason", RebootDeviceResponse_Reason_name, RebootDeviceResponse_Reason_value)
 	proto.RegisterType((*PhysicalInventoryRequest)(nil), "dmi.PhysicalInventoryRequest")
 	proto.RegisterType((*PhysicalInventoryResponse)(nil), "dmi.PhysicalInventoryResponse")
 	proto.RegisterType((*HWComponentInfoGetRequest)(nil), "dmi.HWComponentInfoGetRequest")
@@ -1511,6 +1777,7 @@
 	proto.RegisterType((*StartManagingDeviceResponse)(nil), "dmi.StartManagingDeviceResponse")
 	proto.RegisterType((*StopManagingDeviceRequest)(nil), "dmi.StopManagingDeviceRequest")
 	proto.RegisterType((*StopManagingDeviceResponse)(nil), "dmi.StopManagingDeviceResponse")
+	proto.RegisterType((*ManagedDeviceInfo)(nil), "dmi.ManagedDeviceInfo")
 	proto.RegisterType((*ManagedDevicesResponse)(nil), "dmi.ManagedDevicesResponse")
 	proto.RegisterType((*SetLoggingEndpointRequest)(nil), "dmi.SetLoggingEndpointRequest")
 	proto.RegisterType((*SetRemoteEndpointResponse)(nil), "dmi.SetRemoteEndpointResponse")
@@ -1523,99 +1790,114 @@
 	proto.RegisterType((*GetLogLevelRequest)(nil), "dmi.GetLogLevelRequest")
 	proto.RegisterType((*GetLogLevelResponse)(nil), "dmi.GetLogLevelResponse")
 	proto.RegisterType((*GetLoggableEntitiesRequest)(nil), "dmi.GetLoggableEntitiesRequest")
+	proto.RegisterType((*Heartbeat)(nil), "dmi.Heartbeat")
+	proto.RegisterType((*RebootDeviceRequest)(nil), "dmi.RebootDeviceRequest")
+	proto.RegisterType((*RebootDeviceResponse)(nil), "dmi.RebootDeviceResponse")
 }
 
 func init() { proto.RegisterFile("dmi/hw_management_service.proto", fileDescriptor_eae902e73066286d) }
 
 var fileDescriptor_eae902e73066286d = []byte{
-	// 1380 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x58, 0xdd, 0x72, 0xdb, 0x44,
-	0x14, 0x46, 0x52, 0x92, 0xd6, 0x27, 0x6d, 0xea, 0x6c, 0xdb, 0xe0, 0xa8, 0xd3, 0x24, 0xa8, 0x53,
-	0xda, 0x02, 0xb5, 0x3b, 0xee, 0x05, 0xc3, 0x30, 0xfc, 0x38, 0xb1, 0xaa, 0x98, 0xda, 0x92, 0x67,
-	0xe5, 0x34, 0x53, 0x86, 0x41, 0xa3, 0x58, 0x1b, 0x47, 0x33, 0x96, 0x64, 0x2c, 0xd9, 0x9d, 0x3c,
-	0x00, 0x17, 0x3c, 0x02, 0x17, 0xcc, 0xf0, 0x06, 0x0c, 0x5c, 0x32, 0xbc, 0x01, 0xb7, 0x5c, 0x31,
-	0xdc, 0xf0, 0x08, 0xbc, 0x01, 0xe3, 0x5d, 0xc9, 0x3f, 0xb2, 0x64, 0x3b, 0x4e, 0x19, 0x7a, 0x67,
-	0xef, 0x7e, 0xfb, 0xe9, 0xec, 0xf9, 0xbe, 0x3d, 0x3a, 0x5a, 0xd8, 0xb5, 0x1c, 0xbb, 0x70, 0xf6,
-	0xca, 0x70, 0x4c, 0xd7, 0x6c, 0x11, 0x87, 0xb8, 0x81, 0xe1, 0x93, 0x6e, 0xdf, 0x6e, 0x92, 0x7c,
-	0xa7, 0xeb, 0x05, 0x1e, 0x12, 0x2c, 0xc7, 0x16, 0x37, 0x07, 0xa8, 0xa6, 0xe7, 0x38, 0x9e, 0xeb,
-	0xb3, 0x71, 0xf1, 0x1a, 0x5b, 0x18, 0xfe, 0xbb, 0xd3, 0xf2, 0xbc, 0x56, 0x9b, 0x14, 0xe8, 0xbf,
-	0x93, 0xde, 0x69, 0x81, 0x38, 0x9d, 0xe0, 0x9c, 0x4d, 0x4a, 0xcf, 0x20, 0x57, 0x3f, 0x3b, 0xf7,
-	0xed, 0xa6, 0xd9, 0xae, 0xb8, 0x7d, 0xe2, 0x06, 0x5e, 0xf7, 0x1c, 0x93, 0x6f, 0x7a, 0xc4, 0x0f,
-	0xd0, 0x7b, 0xb0, 0x6e, 0x91, 0xc1, 0xe3, 0x8c, 0x5e, 0xcf, 0xb6, 0x72, 0xdc, 0x1e, 0xf7, 0x70,
-	0xbd, 0x98, 0xc9, 0x5b, 0x8e, 0x9d, 0x3f, 0xea, 0xd9, 0x16, 0x06, 0x36, 0x3b, 0xf8, 0x2d, 0xfd,
-	0xcc, 0xc3, 0x76, 0x02, 0x91, 0xdf, 0xf1, 0x5c, 0x9f, 0xa0, 0x7b, 0xb0, 0xe6, 0x07, 0x66, 0xd0,
-	0xf3, 0x29, 0xc9, 0x46, 0x71, 0x9d, 0x92, 0xe8, 0x74, 0x08, 0x87, 0x53, 0xe8, 0x13, 0x58, 0xeb,
-	0x12, 0xd3, 0xf7, 0xdc, 0x1c, 0x4f, 0x41, 0xf7, 0x29, 0x28, 0x95, 0x34, 0x8f, 0x29, 0x18, 0x87,
-	0x8b, 0xd0, 0xfb, 0x90, 0xb1, 0x23, 0x4c, 0x4e, 0xa0, 0xb1, 0x5e, 0xa7, 0x0c, 0x87, 0x66, 0xd7,
-	0x7a, 0x65, 0x76, 0x09, 0x1e, 0xcd, 0xa3, 0x7b, 0x70, 0x9d, 0x2d, 0x33, 0x2c, 0x12, 0x98, 0x76,
-	0x3b, 0xb7, 0xb2, 0xc7, 0x3d, 0xcc, 0xe0, 0x6b, 0x6c, 0xb0, 0x4c, 0xc7, 0xa4, 0xaf, 0x61, 0x8d,
-	0x3d, 0x03, 0xdd, 0x82, 0xec, 0x91, 0x5a, 0x96, 0x9f, 0x55, 0x54, 0xb9, 0x6c, 0x60, 0xb9, 0xa4,
-	0x6b, 0x6a, 0xf6, 0x2d, 0x84, 0x60, 0xe3, 0x48, 0x7d, 0xae, 0x6a, 0xc7, 0xaa, 0x51, 0x96, 0x5f,
-	0x54, 0x0e, 0xe4, 0x2c, 0x37, 0x18, 0xab, 0xa8, 0x0d, 0x19, 0xab, 0xa5, 0xaa, 0x21, 0x63, 0xac,
-	0xe1, 0x2c, 0x8f, 0xb6, 0x00, 0xb1, 0x79, 0xe3, 0x48, 0xc5, 0x72, 0xe9, 0xe0, 0xb0, 0xb4, 0x5f,
-	0x95, 0xb3, 0x82, 0xf4, 0x23, 0x07, 0xdb, 0x87, 0xc7, 0x07, 0x9e, 0xd3, 0xf1, 0x5c, 0xe2, 0x06,
-	0x15, 0xf7, 0xd4, 0x53, 0x48, 0xb0, 0x44, 0xf6, 0xd1, 0x13, 0xd8, 0x68, 0x46, 0x34, 0x0c, 0xce,
-	0xc7, 0xe1, 0xd7, 0x87, 0x00, 0xba, 0xe2, 0xfe, 0xf8, 0x0a, 0xd7, 0x74, 0x08, 0x4d, 0x59, 0x66,
-	0x0c, 0xa6, 0x9a, 0x0e, 0x91, 0x7e, 0xe7, 0x41, 0x4c, 0x0a, 0xf1, 0x22, 0xba, 0x7e, 0x1a, 0xd3,
-	0xf5, 0x5d, 0xa6, 0x4a, 0x2a, 0x6b, 0x5c, 0xd8, 0x0f, 0x20, 0x33, 0x0c, 0x2a, 0x14, 0x76, 0x83,
-	0x52, 0x0c, 0x09, 0xf0, 0x08, 0xb0, 0x98, 0xb2, 0xbd, 0x25, 0x94, 0xbd, 0x0d, 0x9b, 0xd1, 0xd8,
-	0x81, 0x56, 0xab, 0x6b, 0xaa, 0xac, 0x36, 0xb2, 0x7c, 0x82, 0xe0, 0x42, 0x8a, 0xe0, 0x2b, 0xd2,
-	0x1f, 0xd3, 0x82, 0xeb, 0x6f, 0x96, 0xe0, 0xa8, 0x08, 0x57, 0x9a, 0x67, 0xa6, 0xdb, 0x22, 0x3e,
-	0x4d, 0xdc, 0x7a, 0x31, 0x47, 0x19, 0x6b, 0x9e, 0x65, 0x9f, 0xda, 0xe6, 0x49, 0x9b, 0x8c, 0x92,
-	0x1e, 0x01, 0xa5, 0x5f, 0xa6, 0x4d, 0xa2, 0xff, 0x27, 0x26, 0xd1, 0xd3, 0x4d, 0x32, 0x25, 0xbb,
-	0x90, 0x20, 0xfb, 0x77, 0xdc, 0x6b, 0xd6, 0xfd, 0x45, 0xa9, 0x5a, 0x29, 0x1b, 0xf5, 0x12, 0x2e,
-	0xd5, 0xf4, 0xac, 0x90, 0xe0, 0x85, 0x95, 0x14, 0x2f, 0xac, 0x4a, 0x7f, 0xf1, 0x70, 0x47, 0x0f,
-	0xcc, 0x6e, 0x50, 0x1b, 0x54, 0x77, 0xdb, 0x6d, 0x95, 0xa9, 0xba, 0x17, 0xcb, 0xda, 0x67, 0xb1,
-	0xac, 0x3d, 0x88, 0x40, 0x69, 0xb4, 0xf1, 0xb4, 0xc5, 0x3c, 0x27, 0xcc, 0xf2, 0xdc, 0x42, 0x27,
-	0xeb, 0xdb, 0x79, 0x29, 0x16, 0x61, 0x2b, 0xcc, 0x47, 0xa9, 0x8a, 0xe5, 0x52, 0xf9, 0xa5, 0x51,
-	0x2b, 0xa9, 0x25, 0x45, 0x2e, 0x67, 0x39, 0xf4, 0x0e, 0xdc, 0xd5, 0xea, 0x32, 0x2e, 0x35, 0x2a,
-	0x9a, 0x3a, 0x9c, 0xae, 0xa8, 0x46, 0x1d, 0x6b, 0x0a, 0x96, 0x75, 0x7d, 0xf1, 0xb4, 0x4b, 0x05,
-	0xd8, 0xd6, 0x03, 0xaf, 0x13, 0xcf, 0x02, 0x3b, 0x69, 0x08, 0x56, 0xe8, 0x09, 0xe0, 0xe8, 0x06,
-	0xe8, 0x6f, 0xe9, 0x4f, 0x0e, 0xc4, 0xa4, 0x15, 0x97, 0x37, 0x71, 0x3a, 0xeb, 0x52, 0x26, 0x2e,
-	0x5e, 0xdc, 0xc3, 0x52, 0x15, 0xb6, 0x68, 0x04, 0xc4, 0x62, 0x01, 0xf8, 0xc3, 0x7d, 0x15, 0xe1,
-	0x0a, 0x93, 0x78, 0xb0, 0x31, 0x61, 0xf6, 0x79, 0x0f, 0x81, 0xd2, 0x0f, 0x1c, 0x6c, 0xeb, 0x24,
-	0xa8, 0x7a, 0xad, 0xc1, 0x96, 0x64, 0xd7, 0xea, 0x78, 0xb6, 0xbb, 0x54, 0x19, 0x7b, 0x04, 0xd9,
-	0x36, 0x63, 0x31, 0x48, 0x48, 0x43, 0x53, 0x97, 0xc1, 0x37, 0xda, 0x93, 0xec, 0xe3, 0x50, 0xda,
-	0xb9, 0x34, 0xbd, 0x28, 0x3d, 0x11, 0xb4, 0x1e, 0x0e, 0x4b, 0x7f, 0xf3, 0x34, 0x3e, 0x4c, 0x1c,
-	0x2f, 0x20, 0xa3, 0xf0, 0x2e, 0xdf, 0x8b, 0xa4, 0x92, 0x2e, 0x25, 0xe4, 0xaf, 0xdc, 0x6b, 0xea,
-	0x2f, 0x44, 0xd8, 0xaa, 0x6a, 0x8a, 0x52, 0x51, 0x15, 0x43, 0x56, 0xcb, 0x75, 0xad, 0xa2, 0x36,
-	0x86, 0xaf, 0xa2, 0x7b, 0xb0, 0x3b, 0x35, 0x57, 0xc7, 0x5a, 0x43, 0x3b, 0xd0, 0x46, 0x35, 0x6a,
-	0x1b, 0x6e, 0xd7, 0x74, 0x65, 0xff, 0x48, 0x8f, 0xaf, 0x5f, 0x4d, 0x29, 0x5f, 0x6b, 0x83, 0xf2,
-	0x25, 0x2a, 0x09, 0x1e, 0xb8, 0xfc, 0x71, 0x49, 0x67, 0x8d, 0x67, 0x39, 0xc9, 0x3d, 0xc2, 0xe2,
-	0xee, 0x59, 0x49, 0x74, 0xcf, 0xb4, 0x76, 0xab, 0xff, 0x43, 0x6b, 0x78, 0x00, 0x39, 0x9d, 0x04,
-	0x35, 0xbf, 0xb5, 0xdf, 0xf3, 0xe3, 0x07, 0xec, 0x01, 0xdc, 0x70, 0xfc, 0xd6, 0x49, 0xcf, 0x1f,
-	0xed, 0x9a, 0x15, 0xb2, 0x0d, 0x36, 0x1c, 0xe1, 0xa5, 0xef, 0x79, 0xd8, 0x56, 0xa6, 0x59, 0x2e,
-	0x7f, 0x0e, 0x52, 0x49, 0xe3, 0x0a, 0x25, 0x84, 0x2a, 0x24, 0x85, 0xba, 0xd8, 0xbb, 0xe5, 0x8b,
-	0xf9, 0x49, 0x8f, 0x25, 0x98, 0x4b, 0x49, 0x30, 0x2f, 0xbd, 0x84, 0xac, 0xec, 0x06, 0x76, 0x60,
-	0x13, 0xbf, 0xea, 0xb5, 0xaa, 0xa4, 0x4f, 0xda, 0xe8, 0x11, 0x5c, 0x6d, 0x87, 0xbf, 0xc3, 0x9c,
-	0xb0, 0x0f, 0x88, 0x08, 0x80, 0x87, 0xd3, 0x48, 0x84, 0xab, 0x24, 0x5c, 0x9e, 0xe3, 0xf7, 0x84,
-	0x87, 0x19, 0x3c, 0xfc, 0x2f, 0xf5, 0x00, 0xb1, 0xea, 0xc8, 0x16, 0x2d, 0x51, 0x16, 0x9f, 0x42,
-	0xa6, 0x3d, 0xf8, 0x64, 0xeb, 0x93, 0x36, 0xa3, 0x5f, 0x2f, 0xde, 0xa6, 0xc8, 0x78, 0xc8, 0x78,
-	0x84, 0x93, 0x7e, 0xe3, 0xe1, 0xe6, 0xc4, 0x73, 0x43, 0x9d, 0x2f, 0xf2, 0xe0, 0x91, 0x27, 0xf8,
-	0x74, 0x4f, 0x7c, 0x38, 0xf4, 0x84, 0x40, 0x41, 0xbb, 0x51, 0x6d, 0x8c, 0x3f, 0x7a, 0x6e, 0x55,
-	0x4c, 0x12, 0xb9, 0xff, 0xfa, 0x4e, 0x56, 0x84, 0xab, 0x6a, 0x83, 0xe2, 0xd7, 0xa8, 0x34, 0x5e,
-	0xce, 0xe8, 0xcd, 0xbf, 0x02, 0xa4, 0x5c, 0x4e, 0xb5, 0x59, 0x9e, 0xf8, 0x87, 0x87, 0x9b, 0xca,
-	0x25, 0xc5, 0x61, 0xae, 0xa8, 0x2e, 0xe8, 0x0a, 0x86, 0x1b, 0x53, 0x54, 0x58, 0x44, 0xd1, 0x95,
-	0x31, 0x45, 0x95, 0x25, 0x14, 0x5d, 0x7d, 0x83, 0x14, 0x3d, 0x1c, 0xbe, 0xa1, 0x06, 0x7d, 0x4c,
-	0x94, 0xa4, 0x25, 0x94, 0x2d, 0xfe, 0x74, 0x15, 0xb6, 0x55, 0x33, 0xb0, 0xfb, 0xe4, 0xf0, 0xb8,
-	0x36, 0xbc, 0x8c, 0xd1, 0xd9, 0x5d, 0x0c, 0xd2, 0xe1, 0x66, 0x42, 0xc7, 0x8d, 0x52, 0x1b, 0x29,
-	0x71, 0x6f, 0x5e, 0x97, 0xfe, 0x84, 0x43, 0x47, 0x80, 0xa6, 0xfb, 0x46, 0xb4, 0x93, 0xda, 0x50,
-	0xd2, 0x4d, 0x89, 0xbb, 0x73, 0x1a, 0x4e, 0x74, 0x08, 0x9b, 0x83, 0xe2, 0x3d, 0xd1, 0x0b, 0xa2,
-	0xad, 0x3c, 0xbb, 0x21, 0xca, 0x47, 0x37, 0x44, 0x79, 0xd9, 0xe9, 0x04, 0xe7, 0xe2, 0x1d, 0xb6,
-	0x83, 0xe4, 0xc6, 0xf1, 0x18, 0x6e, 0x29, 0x24, 0x98, 0xba, 0x9d, 0x41, 0x77, 0xd3, 0x6e, 0x6d,
-	0x58, 0x84, 0x3b, 0xb3, 0x2f, 0x75, 0x9e, 0x70, 0xe8, 0x98, 0x1e, 0xc4, 0xd8, 0x97, 0x5f, 0xb8,
-	0xf3, 0xd4, 0xdb, 0x92, 0x70, 0xe7, 0xe9, 0x97, 0x0a, 0x61, 0x4a, 0x17, 0x24, 0xd6, 0xe7, 0x10,
-	0x8f, 0x7f, 0xde, 0x36, 0xa2, 0x72, 0x3f, 0xd1, 0x70, 0xec, 0x8c, 0x15, 0xc5, 0x84, 0x2e, 0x59,
-	0xdc, 0x99, 0xdd, 0x50, 0xa2, 0x67, 0x51, 0x39, 0x9a, 0x60, 0xbd, 0x31, 0x71, 0xa1, 0x55, 0x29,
-	0x8b, 0xbb, 0x73, 0x5a, 0x26, 0x84, 0x61, 0x73, 0xaa, 0x91, 0x08, 0x35, 0x4a, 0x6b, 0x30, 0xe6,
-	0xc6, 0xf6, 0x9c, 0x99, 0x68, 0x92, 0x33, 0xcd, 0x44, 0x3b, 0xb3, 0x3b, 0x06, 0x54, 0x8f, 0x0a,
-	0xe3, 0xc4, 0x29, 0x45, 0x13, 0x1b, 0x4b, 0x38, 0xbf, 0x62, 0x2e, 0xad, 0x46, 0xa1, 0xcf, 0x61,
-	0x7d, 0xec, 0x65, 0x84, 0xde, 0x9e, 0x7e, 0x3d, 0x8d, 0x33, 0xe8, 0xc9, 0x0c, 0xca, 0x14, 0x83,
-	0x92, 0xc6, 0x90, 0x10, 0xc3, 0xfe, 0xc7, 0x5f, 0x7e, 0xd4, 0xb2, 0x83, 0xb3, 0xde, 0x49, 0xbe,
-	0xe9, 0x39, 0x05, 0xaf, 0x43, 0xdc, 0xa6, 0xd7, 0xb5, 0x0a, 0xac, 0xa6, 0x3c, 0x1e, 0x5d, 0xe8,
-	0x3e, 0xb6, 0xdd, 0x80, 0x74, 0x4f, 0xcd, 0x26, 0x29, 0xf4, 0x9f, 0x16, 0x5a, 0x5e, 0xc1, 0x72,
-	0xec, 0x93, 0x35, 0x9a, 0xc2, 0xa7, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0xbf, 0x86, 0x1b, 0xa1,
-	0x00, 0x16, 0x00, 0x00,
+	// 1571 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0xcd, 0x6e, 0xdb, 0xc6,
+	0x16, 0xbe, 0x94, 0x6c, 0x27, 0x3a, 0x4e, 0x1c, 0x79, 0x9c, 0x38, 0x12, 0x83, 0xd8, 0xbe, 0x0c,
+	0x72, 0xe3, 0xdc, 0x9b, 0x48, 0x86, 0xb2, 0xb8, 0xb9, 0xff, 0x97, 0x96, 0x68, 0x8a, 0x8d, 0x44,
+	0x09, 0x43, 0x29, 0x46, 0x8a, 0xa2, 0x02, 0x2d, 0x8d, 0x65, 0xa2, 0x22, 0xa9, 0x8a, 0x94, 0x03,
+	0x3f, 0x42, 0x97, 0x5d, 0x76, 0x51, 0xa0, 0x4f, 0x50, 0xa0, 0x5d, 0x06, 0x7d, 0x83, 0x6e, 0xbb,
+	0x2a, 0x0a, 0x14, 0x7d, 0x84, 0x6e, 0xbb, 0x2a, 0x34, 0x43, 0xea, 0x87, 0x22, 0x65, 0x49, 0x4e,
+	0xd0, 0xec, 0xc4, 0x99, 0x33, 0x1f, 0x0f, 0xcf, 0xf7, 0xcd, 0x99, 0x33, 0x47, 0xb0, 0xdb, 0x32,
+	0x8d, 0xec, 0xd9, 0xeb, 0x86, 0xa9, 0x5b, 0x7a, 0x9b, 0x98, 0xc4, 0x72, 0x1b, 0x0e, 0xe9, 0x9d,
+	0x1b, 0x4d, 0x92, 0xe9, 0xf6, 0x6c, 0xd7, 0x46, 0xf1, 0x96, 0x69, 0xf0, 0x9b, 0x03, 0xab, 0xa6,
+	0x6d, 0x9a, 0xb6, 0xe5, 0xb0, 0x71, 0xfe, 0x06, 0x5b, 0xe8, 0x3d, 0xdd, 0x6b, 0xdb, 0x76, 0xbb,
+	0x43, 0xb2, 0xf4, 0xe9, 0xa4, 0x7f, 0x9a, 0x25, 0x66, 0xd7, 0xbd, 0x60, 0x93, 0xc2, 0x11, 0xa4,
+	0xaa, 0x67, 0x17, 0x8e, 0xd1, 0xd4, 0x3b, 0x8a, 0x75, 0x4e, 0x2c, 0xd7, 0xee, 0x5d, 0x60, 0xf2,
+	0x69, 0x9f, 0x38, 0x2e, 0xfa, 0x2b, 0xac, 0xb7, 0xc8, 0xe0, 0x75, 0x8d, 0x7e, 0xdf, 0x68, 0xa5,
+	0xb8, 0x3d, 0x6e, 0x7f, 0x3d, 0x97, 0xc8, 0xb4, 0x4c, 0x23, 0x53, 0xef, 0x1b, 0x2d, 0x0c, 0x6c,
+	0x76, 0xf0, 0x5b, 0xf8, 0x26, 0x06, 0xe9, 0x10, 0x20, 0xa7, 0x6b, 0x5b, 0x0e, 0x41, 0x0f, 0x60,
+	0xcd, 0x71, 0x75, 0xb7, 0xef, 0x50, 0x90, 0x8d, 0xdc, 0x3a, 0x05, 0xd1, 0xe8, 0x10, 0xf6, 0xa6,
+	0xd0, 0x7f, 0x60, 0xad, 0x47, 0x74, 0xc7, 0xb6, 0x52, 0x31, 0x6a, 0xf4, 0x90, 0x1a, 0x45, 0x82,
+	0x66, 0x30, 0x35, 0xc6, 0xde, 0x22, 0xf4, 0x37, 0x48, 0x18, 0xbe, 0x4d, 0x2a, 0x4e, 0x7d, 0xbd,
+	0x49, 0x11, 0x8a, 0x7a, 0xaf, 0xf5, 0x5a, 0xef, 0x11, 0x3c, 0x9a, 0x47, 0x0f, 0xe0, 0x26, 0x5b,
+	0xd6, 0x68, 0x11, 0x57, 0x37, 0x3a, 0xa9, 0x95, 0x3d, 0x6e, 0x3f, 0x81, 0x6f, 0xb0, 0xc1, 0x02,
+	0x1d, 0x13, 0x3e, 0x86, 0x35, 0xf6, 0x0e, 0x74, 0x1b, 0x92, 0x75, 0xb5, 0x20, 0x1d, 0x29, 0xaa,
+	0x54, 0x68, 0x60, 0x49, 0xd4, 0x2a, 0x6a, 0xf2, 0x4f, 0x08, 0xc1, 0x46, 0x5d, 0x7d, 0xa1, 0x56,
+	0x8e, 0xd5, 0x46, 0x41, 0x7a, 0xa9, 0xe4, 0xa5, 0x24, 0x37, 0x18, 0x53, 0xd4, 0x9a, 0x84, 0x55,
+	0xb1, 0xd4, 0x90, 0x30, 0xae, 0xe0, 0x64, 0x0c, 0x6d, 0x03, 0x62, 0xf3, 0x8d, 0xba, 0x8a, 0x25,
+	0x31, 0x5f, 0x14, 0x0f, 0x4b, 0x52, 0x32, 0x2e, 0x7c, 0xc5, 0x41, 0xba, 0x78, 0x9c, 0xb7, 0xcd,
+	0xae, 0x6d, 0x11, 0xcb, 0x55, 0xac, 0x53, 0x5b, 0x26, 0xee, 0x12, 0xd1, 0x47, 0x07, 0xb0, 0xd1,
+	0xf4, 0x61, 0x98, 0x79, 0x2c, 0x68, 0x7e, 0x73, 0x68, 0x40, 0x57, 0x3c, 0x1c, 0x5f, 0x61, 0xe9,
+	0x26, 0xa1, 0x21, 0x4b, 0x8c, 0x99, 0xa9, 0xba, 0x49, 0x84, 0xef, 0x63, 0xc0, 0x87, 0xb9, 0xb8,
+	0x08, 0xaf, 0xff, 0x0d, 0xf0, 0xfa, 0x17, 0xc6, 0x4a, 0x24, 0x6a, 0x90, 0xd8, 0x27, 0x90, 0x18,
+	0x3a, 0xe5, 0x11, 0xbb, 0x41, 0x21, 0x86, 0x00, 0x78, 0x64, 0x30, 0x1f, 0xb3, 0xfd, 0x25, 0x98,
+	0xbd, 0x03, 0x9b, 0xfe, 0x58, 0xbe, 0x52, 0xae, 0x56, 0x54, 0x49, 0xad, 0x25, 0x63, 0x21, 0x84,
+	0xc7, 0x23, 0x08, 0x5f, 0x11, 0x7e, 0x98, 0x26, 0x5c, 0x7b, 0xbf, 0x08, 0x47, 0x39, 0xb8, 0xd6,
+	0x3c, 0xd3, 0xad, 0x36, 0x71, 0x68, 0xe0, 0xd6, 0x73, 0x29, 0x8a, 0x58, 0xb6, 0x5b, 0xc6, 0xa9,
+	0xa1, 0x9f, 0x74, 0xc8, 0x28, 0xe8, 0xbe, 0xa1, 0xf0, 0xed, 0xb4, 0x48, 0xb4, 0x77, 0x22, 0x12,
+	0x2d, 0x5a, 0x24, 0x53, 0xb4, 0xc7, 0x43, 0x68, 0xff, 0x8c, 0x7b, 0xcb, 0xbc, 0xbf, 0x14, 0x4b,
+	0x4a, 0xa1, 0x51, 0x15, 0xb1, 0x58, 0xd6, 0x92, 0xf1, 0x10, 0x2d, 0xac, 0x44, 0x68, 0x61, 0x55,
+	0xf8, 0x3c, 0x0e, 0xf7, 0x34, 0x57, 0xef, 0xb9, 0xe5, 0x41, 0x76, 0x37, 0xac, 0x76, 0x81, 0xb2,
+	0xbb, 0x58, 0xd4, 0xfe, 0x17, 0x88, 0xda, 0x23, 0xdf, 0x28, 0x0a, 0x36, 0x18, 0xb6, 0x80, 0xe6,
+	0xe2, 0xb3, 0x34, 0x37, 0xd7, 0xce, 0x7a, 0x73, 0x59, 0x88, 0x79, 0xd8, 0xf6, 0xe2, 0x21, 0x96,
+	0xb0, 0x24, 0x16, 0x5e, 0x35, 0xca, 0xa2, 0x2a, 0xca, 0x52, 0x21, 0xc9, 0xa1, 0x3f, 0xc3, 0xfd,
+	0x4a, 0x55, 0xc2, 0x62, 0x4d, 0xa9, 0xa8, 0xc3, 0x69, 0x45, 0x6d, 0x54, 0x71, 0x45, 0xc6, 0x92,
+	0xa6, 0x2d, 0x10, 0x76, 0x1e, 0xb6, 0xc5, 0x7a, 0xad, 0x28, 0xa9, 0x35, 0x25, 0xcf, 0xf0, 0x8e,
+	0x44, 0xa5, 0x54, 0xc7, 0x52, 0x72, 0x15, 0xdd, 0x85, 0x2d, 0x45, 0x1d, 0x70, 0x29, 0xd6, 0x94,
+	0xc3, 0x92, 0xe4, 0x53, 0xbd, 0x26, 0x64, 0x21, 0xad, 0xb9, 0x76, 0x37, 0x18, 0x3a, 0xb6, 0x3d,
+	0x11, 0xac, 0xd0, 0x6d, 0xc3, 0xd1, 0xaf, 0xa6, 0xbf, 0x85, 0x1f, 0x39, 0xe0, 0xc3, 0x56, 0x5c,
+	0x5d, 0xf9, 0xd1, 0xa8, 0x4b, 0x29, 0x3f, 0xb7, 0xb8, 0xf0, 0x05, 0x13, 0x36, 0xa9, 0x07, 0xa4,
+	0xc5, 0x1c, 0x18, 0xec, 0x40, 0xf4, 0x04, 0x56, 0x0c, 0xeb, 0xd4, 0xf6, 0xb2, 0x53, 0x74, 0x72,
+	0xa0, 0x56, 0x41, 0x79, 0xc5, 0x66, 0x55, 0x10, 0x3f, 0x73, 0xb0, 0x3d, 0xf1, 0x3e, 0x67, 0xb1,
+	0x38, 0xfe, 0x33, 0x10, 0x47, 0x81, 0xf9, 0x16, 0x8a, 0x18, 0x8c, 0xe1, 0x01, 0x5c, 0x63, 0x9e,
+	0x38, 0xa9, 0xf8, 0x5e, 0x7c, 0x7f, 0x3d, 0xb7, 0x3d, 0xbd, 0x78, 0xf0, 0xf9, 0xd8, 0x37, 0x9b,
+	0x27, 0xa0, 0x01, 0x4d, 0x72, 0xc2, 0x97, 0x1c, 0xa4, 0x35, 0xe2, 0x96, 0xec, 0xf6, 0x80, 0x55,
+	0xc9, 0x6a, 0x75, 0x6d, 0xc3, 0x5a, 0x2a, 0xfd, 0x3f, 0x86, 0x64, 0x87, 0xa1, 0x34, 0x88, 0x07,
+	0x43, 0xbf, 0x3a, 0x81, 0x6f, 0x75, 0x26, 0xd1, 0xc7, 0x4d, 0x69, 0xc5, 0xd7, 0xb4, 0x7d, 0x85,
+	0xf8, 0xa6, 0x55, 0x6f, 0x58, 0xf8, 0x25, 0x46, 0xfd, 0xc3, 0xc4, 0xb4, 0x5d, 0x32, 0x72, 0xef,
+	0xea, 0x35, 0x5c, 0x24, 0xe8, 0x52, 0x5a, 0x7e, 0xc3, 0xbd, 0xa5, 0xba, 0x8c, 0x87, 0xed, 0x52,
+	0x45, 0x96, 0x15, 0x55, 0x6e, 0x48, 0x6a, 0xa1, 0x5a, 0x51, 0xd4, 0xda, 0xf0, 0x08, 0x7f, 0x00,
+	0xbb, 0x53, 0x73, 0x55, 0x5c, 0xa9, 0x55, 0xf2, 0x95, 0x51, 0x92, 0x49, 0xc3, 0x9d, 0xb2, 0x26,
+	0x1f, 0xd6, 0xb5, 0xe0, 0xfa, 0xd5, 0x88, 0xb4, 0xbf, 0x26, 0xfc, 0x14, 0x03, 0x5e, 0x0e, 0xd1,
+	0xc0, 0xd5, 0x33, 0x46, 0x34, 0x6a, 0x30, 0xca, 0x61, 0xea, 0x89, 0xcf, 0xaf, 0x9e, 0x95, 0x50,
+	0xf5, 0x4c, 0x73, 0xb7, 0xfa, 0x07, 0x94, 0xd4, 0x79, 0x48, 0x69, 0xc4, 0x2d, 0x3b, 0xed, 0xc3,
+	0xbe, 0x13, 0xdc, 0x60, 0x8f, 0xe0, 0x96, 0xe9, 0xb4, 0x4f, 0xfa, 0xce, 0xe8, 0xab, 0x59, 0x2e,
+	0xdf, 0x60, 0xc3, 0xbe, 0xbd, 0xf0, 0x45, 0x0c, 0xd2, 0xf2, 0x34, 0xca, 0xd5, 0xf7, 0x41, 0x24,
+	0x68, 0x90, 0xa1, 0x10, 0x57, 0xe3, 0x61, 0xae, 0xce, 0x77, 0x26, 0x7f, 0xb0, 0x78, 0xae, 0x8a,
+	0x08, 0x70, 0x4c, 0x78, 0x05, 0x49, 0xc9, 0x72, 0x0d, 0xd7, 0x20, 0x4e, 0xc9, 0x6e, 0x97, 0xc8,
+	0x39, 0xe9, 0xa0, 0xc7, 0x70, 0xbd, 0xe3, 0xfd, 0xf6, 0x62, 0xc2, 0x2e, 0x5e, 0xbe, 0x01, 0x1e,
+	0x4e, 0x23, 0x1e, 0xae, 0x13, 0x6f, 0x79, 0x2a, 0xb6, 0x17, 0xdf, 0x4f, 0xe0, 0xe1, 0xb3, 0xd0,
+	0x07, 0xc4, 0xb2, 0x23, 0x5b, 0xb4, 0x44, 0x5a, 0x7c, 0x06, 0x89, 0xce, 0xe0, 0xaa, 0x7b, 0x4e,
+	0x3a, 0x0c, 0x7e, 0x3d, 0x77, 0x87, 0x5a, 0x06, 0x5d, 0xc6, 0x23, 0x3b, 0xe1, 0xbb, 0x18, 0x6c,
+	0x4d, 0xbc, 0xd7, 0xe3, 0x79, 0x91, 0x17, 0x8f, 0x34, 0x11, 0x8b, 0xd6, 0xc4, 0xdf, 0x87, 0x9a,
+	0x88, 0x53, 0xa3, 0x5d, 0x3f, 0x37, 0x06, 0x5f, 0x7d, 0x69, 0x56, 0x0c, 0x23, 0xf9, 0xfc, 0xed,
+	0xed, 0x2c, 0xdf, 0xae, 0x54, 0x19, 0x24, 0xbf, 0x9a, 0x52, 0x7b, 0x35, 0xe3, 0x4e, 0xf3, 0x11,
+	0x20, 0xf9, 0x6a, 0xac, 0xcd, 0xd2, 0xc4, 0xaf, 0x31, 0xd8, 0x92, 0xaf, 0x48, 0x0e, 0x53, 0x45,
+	0x69, 0x4e, 0x55, 0x30, 0xbb, 0x31, 0x46, 0xe3, 0xf3, 0x30, 0xba, 0x32, 0xc6, 0xa8, 0xbc, 0x04,
+	0xa3, 0xab, 0xef, 0x11, 0xa3, 0xc5, 0xe1, 0x09, 0x35, 0x28, 0xe9, 0xfc, 0x20, 0x2d, 0xd3, 0x14,
+	0xfa, 0x37, 0x24, 0x8a, 0x44, 0xef, 0xb9, 0x27, 0x44, 0x77, 0x51, 0x16, 0xb6, 0xce, 0xfc, 0x87,
+	0x86, 0x63, 0xb4, 0x2d, 0xdd, 0xed, 0xf7, 0x58, 0x39, 0x7d, 0x0d, 0xa3, 0xe1, 0x94, 0xe6, 0xcf,
+	0x08, 0x22, 0x6c, 0x61, 0x72, 0x62, 0xdb, 0xee, 0x64, 0x1d, 0xbe, 0x88, 0x03, 0xbf, 0x71, 0x70,
+	0x7b, 0x12, 0x63, 0x2a, 0x89, 0xcf, 0xa0, 0xf7, 0x79, 0x80, 0xde, 0x3d, 0x6a, 0x14, 0x86, 0xb7,
+	0x14, 0xbf, 0xef, 0xf8, 0x2c, 0xcc, 0x7d, 0x9d, 0x80, 0xb4, 0xaa, 0xbb, 0xc6, 0x39, 0x29, 0x1e,
+	0x97, 0x87, 0x2d, 0x44, 0x8d, 0x75, 0x10, 0x91, 0x06, 0x5b, 0x21, 0xf7, 0x44, 0x14, 0x59, 0xd1,
+	0xf3, 0x7b, 0x97, 0xdd, 0x2d, 0x0f, 0x38, 0x54, 0x07, 0x34, 0x7d, 0x71, 0x41, 0x3b, 0x91, 0x37,
+	0x1a, 0xca, 0x28, 0xbf, 0x7b, 0xc9, 0x8d, 0x07, 0x15, 0x61, 0x73, 0x70, 0x74, 0x4e, 0x94, 0xf2,
+	0x68, 0x3b, 0xc3, 0xfa, 0x9a, 0x19, 0xbf, 0xaf, 0x99, 0x91, 0xcc, 0xae, 0x7b, 0xc1, 0xdf, 0x9b,
+	0x51, 0xf7, 0xa3, 0x63, 0xb8, 0x2d, 0x13, 0x77, 0xaa, 0xa7, 0x88, 0xee, 0x47, 0xf5, 0x1a, 0x99,
+	0x87, 0x3b, 0xb3, 0x5b, 0x91, 0x07, 0x1c, 0x3a, 0xa6, 0x69, 0x30, 0xd0, 0xaf, 0xf0, 0xbe, 0x3c,
+	0xb2, 0xc7, 0xe7, 0x7d, 0x79, 0x74, 0x2b, 0xcc, 0x0b, 0xe9, 0x9c, 0xc0, 0xda, 0x25, 0xc0, 0xe3,
+	0x4d, 0x99, 0x9a, 0x7f, 0xd8, 0x4e, 0x94, 0x7b, 0x3b, 0x63, 0x47, 0x52, 0xc8, 0x1d, 0x85, 0xdf,
+	0x99, 0x5d, 0xce, 0xa3, 0x23, 0xff, 0x30, 0x98, 0x40, 0xbd, 0x35, 0xd1, 0x86, 0x55, 0x0a, 0xfc,
+	0xee, 0x25, 0x05, 0x2b, 0xc2, 0xb0, 0x39, 0x55, 0xc6, 0x79, 0x1c, 0x45, 0x95, 0x77, 0x97, 0xfa,
+	0xf6, 0x82, 0x89, 0x68, 0x12, 0x33, 0x4a, 0x44, 0x3b, 0xb3, 0xeb, 0x35, 0x54, 0xf5, 0x8f, 0xa5,
+	0x89, 0x1c, 0x89, 0x26, 0x3e, 0x2c, 0x24, 0x7b, 0xf2, 0xa9, 0xa8, 0x13, 0x02, 0xfd, 0x1f, 0xd6,
+	0xc7, 0x4a, 0x01, 0x74, 0x77, 0xba, 0x38, 0x18, 0x47, 0xd0, 0xc2, 0x11, 0xe4, 0x29, 0x04, 0x39,
+	0x0a, 0x21, 0xcc, 0x87, 0xe7, 0xb0, 0x31, 0xcc, 0xd7, 0xf9, 0x33, 0xd2, 0xfc, 0x24, 0x32, 0x3e,
+	0xac, 0x01, 0x3b, 0x4a, 0xee, 0x79, 0xb8, 0x31, 0x9e, 0x17, 0xbd, 0x34, 0x12, 0x92, 0xbe, 0xf9,
+	0x74, 0x64, 0x12, 0x3d, 0xfc, 0xd7, 0x87, 0xff, 0x68, 0x1b, 0xee, 0x59, 0xff, 0x24, 0xd3, 0xb4,
+	0xcd, 0xac, 0xdd, 0x25, 0x56, 0xd3, 0xee, 0xb5, 0xb2, 0x2c, 0x9f, 0x3f, 0x1d, 0xfd, 0x0b, 0xf2,
+	0xd4, 0xb0, 0x5c, 0xd2, 0x3b, 0xd5, 0x9b, 0x24, 0x7b, 0xfe, 0x2c, 0xdb, 0xb6, 0xb3, 0x2d, 0xd3,
+	0x38, 0x59, 0xa3, 0x1e, 0x3e, 0xfb, 0x3d, 0x00, 0x00, 0xff, 0xff, 0x80, 0x19, 0x9e, 0xf1, 0x35,
+	0x19, 0x00, 0x00,
 }
 
 // Reference imports to suppress errors if they are not otherwise used.
@@ -1671,6 +1953,10 @@
 	// Gets the configured log level for a certain entity on a certain device.
 	// If no entity is specified in the request all the entities with their log level should be returned.
 	GetLogLevel(ctx context.Context, in *GetLogLevelRequest, opts ...grpc.CallOption) (*GetLogLevelResponse, error)
+	// Performs the heartbeat check
+	HeartbeatCheck(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*Heartbeat, error)
+	// Performs the reboot of the device
+	RebootDevice(ctx context.Context, in *RebootDeviceRequest, opts ...grpc.CallOption) (*RebootDeviceResponse, error)
 }
 
 type nativeHWManagementServiceClient struct {
@@ -1867,6 +2153,24 @@
 	return out, nil
 }
 
+func (c *nativeHWManagementServiceClient) HeartbeatCheck(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*Heartbeat, error) {
+	out := new(Heartbeat)
+	err := c.cc.Invoke(ctx, "/dmi.NativeHWManagementService/HeartbeatCheck", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *nativeHWManagementServiceClient) RebootDevice(ctx context.Context, in *RebootDeviceRequest, opts ...grpc.CallOption) (*RebootDeviceResponse, error) {
+	out := new(RebootDeviceResponse)
+	err := c.cc.Invoke(ctx, "/dmi.NativeHWManagementService/RebootDevice", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 // NativeHWManagementServiceServer is the server API for NativeHWManagementService service.
 type NativeHWManagementServiceServer interface {
 	// Initializes context for a device and sets up required states
@@ -1910,6 +2214,60 @@
 	// Gets the configured log level for a certain entity on a certain device.
 	// If no entity is specified in the request all the entities with their log level should be returned.
 	GetLogLevel(context.Context, *GetLogLevelRequest) (*GetLogLevelResponse, error)
+	// Performs the heartbeat check
+	HeartbeatCheck(context.Context, *empty.Empty) (*Heartbeat, error)
+	// Performs the reboot of the device
+	RebootDevice(context.Context, *RebootDeviceRequest) (*RebootDeviceResponse, error)
+}
+
+// UnimplementedNativeHWManagementServiceServer can be embedded to have forward compatible implementations.
+type UnimplementedNativeHWManagementServiceServer struct {
+}
+
+func (*UnimplementedNativeHWManagementServiceServer) StartManagingDevice(req *ModifiableComponent, srv NativeHWManagementService_StartManagingDeviceServer) error {
+	return status.Errorf(codes.Unimplemented, "method StartManagingDevice not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) StopManagingDevice(ctx context.Context, req *StopManagingDeviceRequest) (*StopManagingDeviceResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method StopManagingDevice not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) GetManagedDevices(ctx context.Context, req *empty.Empty) (*ManagedDevicesResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method GetManagedDevices not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) GetPhysicalInventory(req *PhysicalInventoryRequest, srv NativeHWManagementService_GetPhysicalInventoryServer) error {
+	return status.Errorf(codes.Unimplemented, "method GetPhysicalInventory not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) GetHWComponentInfo(req *HWComponentInfoGetRequest, srv NativeHWManagementService_GetHWComponentInfoServer) error {
+	return status.Errorf(codes.Unimplemented, "method GetHWComponentInfo not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) SetHWComponentInfo(ctx context.Context, req *HWComponentInfoSetRequest) (*HWComponentInfoSetResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method SetHWComponentInfo not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) SetLoggingEndpoint(ctx context.Context, req *SetLoggingEndpointRequest) (*SetRemoteEndpointResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method SetLoggingEndpoint not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) GetLoggingEndpoint(ctx context.Context, req *HardwareID) (*GetLoggingEndpointResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method GetLoggingEndpoint not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) SetMsgBusEndpoint(ctx context.Context, req *SetMsgBusEndpointRequest) (*SetRemoteEndpointResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method SetMsgBusEndpoint not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) GetMsgBusEndpoint(ctx context.Context, req *empty.Empty) (*GetMsgBusEndpointResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method GetMsgBusEndpoint not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) GetLoggableEntities(ctx context.Context, req *GetLoggableEntitiesRequest) (*GetLogLevelResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method GetLoggableEntities not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) SetLogLevel(ctx context.Context, req *SetLogLevelRequest) (*SetLogLevelResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method SetLogLevel not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) GetLogLevel(ctx context.Context, req *GetLogLevelRequest) (*GetLogLevelResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method GetLogLevel not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) HeartbeatCheck(ctx context.Context, req *empty.Empty) (*Heartbeat, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method HeartbeatCheck not implemented")
+}
+func (*UnimplementedNativeHWManagementServiceServer) RebootDevice(ctx context.Context, req *RebootDeviceRequest) (*RebootDeviceResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method RebootDevice not implemented")
 }
 
 func RegisterNativeHWManagementServiceServer(s *grpc.Server, srv NativeHWManagementServiceServer) {
@@ -2159,6 +2517,42 @@
 	return interceptor(ctx, in, info, handler)
 }
 
+func _NativeHWManagementService_HeartbeatCheck_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(empty.Empty)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(NativeHWManagementServiceServer).HeartbeatCheck(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/dmi.NativeHWManagementService/HeartbeatCheck",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(NativeHWManagementServiceServer).HeartbeatCheck(ctx, req.(*empty.Empty))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _NativeHWManagementService_RebootDevice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(RebootDeviceRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(NativeHWManagementServiceServer).RebootDevice(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/dmi.NativeHWManagementService/RebootDevice",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(NativeHWManagementServiceServer).RebootDevice(ctx, req.(*RebootDeviceRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 var _NativeHWManagementService_serviceDesc = grpc.ServiceDesc{
 	ServiceName: "dmi.NativeHWManagementService",
 	HandlerType: (*NativeHWManagementServiceServer)(nil),
@@ -2203,6 +2597,14 @@
 			MethodName: "GetLogLevel",
 			Handler:    _NativeHWManagementService_GetLogLevel_Handler,
 		},
+		{
+			MethodName: "HeartbeatCheck",
+			Handler:    _NativeHWManagementService_HeartbeatCheck_Handler,
+		},
+		{
+			MethodName: "RebootDevice",
+			Handler:    _NativeHWManagementService_RebootDevice_Handler,
+		},
 	},
 	Streams: []grpc.StreamDesc{
 		{
diff --git a/vendor/github.com/opencord/device-management-interface/go/dmi/hw_metrics_mgmt_service.pb.go b/vendor/github.com/opencord/device-management-interface/go/dmi/hw_metrics_mgmt_service.pb.go
index b812950..93426b0 100644
--- a/vendor/github.com/opencord/device-management-interface/go/dmi/hw_metrics_mgmt_service.pb.go
+++ b/vendor/github.com/opencord/device-management-interface/go/dmi/hw_metrics_mgmt_service.pb.go
@@ -7,7 +7,10 @@
 	context "context"
 	fmt "fmt"
 	proto "github.com/golang/protobuf/proto"
+	empty "github.com/golang/protobuf/ptypes/empty"
 	grpc "google.golang.org/grpc"
+	codes "google.golang.org/grpc/codes"
+	status "google.golang.org/grpc/status"
 	math "math"
 )
 
@@ -585,7 +588,7 @@
 	return ""
 }
 
-// The Metrics are conveyed to external systems by submitting them on a kafka bus.
+// The Metrics are conveyed to external systems either by submitting them on a message bus or using gRPC server streaming.
 // The topic to which are Metrics are submitted would be configured as startup
 // configuration of the components
 type Metric struct {
@@ -772,82 +775,85 @@
 func init() { proto.RegisterFile("dmi/hw_metrics_mgmt_service.proto", fileDescriptor_6b6c2f1384c11ff5) }
 
 var fileDescriptor_6b6c2f1384c11ff5 = []byte{
-	// 1198 bytes of a gzipped FileDescriptorProto
+	// 1242 bytes of a gzipped FileDescriptorProto
 	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0x4d, 0x6f, 0xdb, 0x46,
-	0x13, 0x36, 0xa9, 0xc4, 0x89, 0x57, 0xb6, 0x42, 0xaf, 0xf3, 0xa1, 0x38, 0xc9, 0x1b, 0x59, 0xc1,
-	0x5b, 0x08, 0x69, 0x23, 0x07, 0x0e, 0x8a, 0x7e, 0xe5, 0x50, 0x9a, 0xdc, 0xd8, 0x44, 0x28, 0x4a,
-	0x58, 0x91, 0x72, 0xd2, 0x43, 0x17, 0x1b, 0x71, 0x23, 0x13, 0x10, 0x49, 0x95, 0xa4, 0x9c, 0x9f,
-	0x50, 0xf4, 0xd6, 0xb4, 0xe8, 0x4f, 0x68, 0x4f, 0xfd, 0xfe, 0x01, 0xbd, 0x15, 0xe8, 0xe7, 0xbd,
-	0xfd, 0x1f, 0x6d, 0x81, 0xde, 0x0a, 0xee, 0x52, 0xca, 0x5a, 0x96, 0x9b, 0xba, 0xe8, 0x4d, 0x7a,
-	0xe6, 0x99, 0x99, 0x67, 0x66, 0x96, 0xb3, 0x0b, 0x36, 0xfc, 0x30, 0xd8, 0xdc, 0x7f, 0x42, 0x42,
-	0x96, 0x25, 0x41, 0x3f, 0x25, 0xe1, 0x20, 0xcc, 0x48, 0xca, 0x92, 0x83, 0xa0, 0xcf, 0x9a, 0xa3,
-	0x24, 0xce, 0x62, 0x58, 0xf2, 0xc3, 0x60, 0x7d, 0x35, 0xe7, 0xf5, 0xe3, 0x30, 0x8c, 0xa3, 0x54,
-	0xe0, 0xeb, 0xcb, 0xc2, 0x55, 0xfc, 0xab, 0xbf, 0xab, 0x80, 0xe5, 0x16, 0x0f, 0x62, 0xc4, 0xd1,
-	0xe3, 0x60, 0x00, 0x6f, 0x81, 0x25, 0x11, 0x94, 0x04, 0x7e, 0x55, 0xa9, 0x29, 0x8d, 0xca, 0x96,
-	0xd6, 0xf4, 0xc3, 0xa0, 0x29, 0x58, 0x0e, 0x0d, 0x59, 0x8a, 0xcf, 0x0a, 0x8a, 0xe5, 0xc3, 0x1b,
-	0x60, 0x25, 0x48, 0x49, 0x9f, 0xfb, 0x8e, 0x13, 0xe6, 0x57, 0xd5, 0x9a, 0xd2, 0x38, 0x8b, 0x97,
-	0x83, 0xd4, 0x98, 0x62, 0x39, 0x69, 0x14, 0x0f, 0x87, 0x24, 0x88, 0x32, 0x96, 0x1c, 0xd0, 0x61,
-	0xb5, 0x54, 0x53, 0x1a, 0x2b, 0x78, 0x39, 0x07, 0xad, 0x02, 0xab, 0xdf, 0x05, 0x2b, 0x22, 0x45,
-	0xe1, 0x09, 0x5f, 0x04, 0x67, 0x8a, 0xf2, 0xaa, 0x4a, 0xad, 0xd4, 0x28, 0x6f, 0xad, 0x4a, 0x3a,
-	0x04, 0x07, 0x4f, 0x18, 0xf5, 0x4f, 0x54, 0xb0, 0x66, 0x07, 0x69, 0x56, 0x84, 0xc0, 0x2c, 0x1d,
-	0xc5, 0x51, 0xca, 0xe0, 0x0d, 0xb0, 0x98, 0x66, 0x34, 0x1b, 0xa7, 0x45, 0x2d, 0x65, 0x1e, 0xa3,
-	0xcb, 0x21, 0x5c, 0x98, 0xe0, 0x2b, 0x60, 0x31, 0x61, 0x34, 0x8d, 0x23, 0xae, 0xbe, 0xb2, 0x75,
-	0x9d, 0x93, 0xe6, 0x84, 0x6b, 0x62, 0x4e, 0xc3, 0x05, 0x1d, 0xbe, 0xf4, 0x4c, 0x62, 0x5e, 0x52,
-	0x79, 0x0b, 0x4a, 0x12, 0xd3, 0x19, 0x8d, 0x79, 0x1b, 0x84, 0x1f, 0xf1, 0x59, 0x46, 0x83, 0x61,
-	0xf5, 0x54, 0x4d, 0x69, 0x2c, 0xe1, 0x65, 0x01, 0x9a, 0x1c, 0xab, 0xbf, 0x0d, 0x16, 0x45, 0x12,
-	0x78, 0x1e, 0x68, 0x9e, 0x63, 0xa2, 0x7b, 0x96, 0x83, 0x4c, 0x82, 0x91, 0xde, 0x6d, 0x3b, 0xda,
-	0x02, 0x84, 0xa0, 0xe2, 0x39, 0xf7, 0x9d, 0xf6, 0x9e, 0x43, 0x4c, 0xd4, 0xb3, 0x0c, 0xa4, 0x29,
-	0x39, 0x66, 0x39, 0x2e, 0xc2, 0x8e, 0x6e, 0x13, 0x84, 0x71, 0x1b, 0x6b, 0x2a, 0xbc, 0x08, 0xa0,
-	0xb0, 0x13, 0xcf, 0xc1, 0x48, 0x37, 0x76, 0xf5, 0x6d, 0x1b, 0x69, 0xa5, 0xfa, 0xd7, 0x0a, 0xb8,
-	0x72, 0x48, 0xdf, 0x38, 0xa1, 0x59, 0x10, 0x47, 0x98, 0xbd, 0x33, 0x66, 0x69, 0x06, 0x6f, 0x82,
-	0xb2, 0xcf, 0xf2, 0x63, 0x44, 0xc6, 0xe3, 0xe2, 0x04, 0x94, 0xb7, 0x96, 0x78, 0x59, 0xde, 0x38,
-	0xf0, 0x31, 0x10, 0xd6, 0xfc, 0x37, 0x6c, 0x82, 0x33, 0xfd, 0x7d, 0x1a, 0x0d, 0x58, 0xca, 0x1b,
-	0x37, 0xb7, 0xfc, 0xdd, 0x05, 0x3c, 0x21, 0xc1, 0x9b, 0x40, 0x4b, 0x58, 0xca, 0x32, 0x92, 0xc5,
-	0xc4, 0x67, 0x8f, 0xe9, 0x78, 0x98, 0xf1, 0xbe, 0x9d, 0xdd, 0x5d, 0xc0, 0x15, 0x6e, 0x71, 0x63,
-	0x53, 0xe0, 0xdb, 0x65, 0xb0, 0x14, 0x8f, 0x98, 0xd0, 0x56, 0xff, 0x46, 0x05, 0x57, 0xe7, 0x8b,
-	0x3e, 0xc9, 0x98, 0xdf, 0x9c, 0x19, 0x73, 0xe3, 0xa8, 0xda, 0x99, 0xb8, 0xb3, 0xf3, 0x3e, 0x32,
-	0xc1, 0xd2, 0x9c, 0x09, 0x3e, 0x55, 0xfe, 0xa3, 0x11, 0x5e, 0x03, 0x97, 0x3b, 0x6d, 0xdb, 0x26,
-	0xdc, 0xd0, 0xd3, 0x6d, 0xe2, 0x39, 0x5d, 0xaf, 0xd3, 0x69, 0x63, 0x17, 0x99, 0x5a, 0x49, 0xb8,
-	0xf4, 0x74, 0xdb, 0x32, 0x49, 0x0b, 0xb9, 0xd8, 0x32, 0xb4, 0x53, 0xc7, 0x4c, 0xfd, 0x74, 0xfd,
-	0x23, 0x05, 0x54, 0x44, 0xa1, 0x2d, 0x96, 0x51, 0x93, 0x66, 0xf4, 0x44, 0x83, 0xbe, 0x0d, 0x2a,
-	0xfd, 0x38, 0x1c, 0xc5, 0x11, 0x8b, 0x32, 0x41, 0x57, 0x67, 0xe9, 0x2b, 0x53, 0x02, 0xf7, 0xf8,
-	0xbf, 0xec, 0x11, 0xd1, 0x90, 0x15, 0xad, 0x7a, 0x46, 0xcb, 0x37, 0x49, 0xfd, 0x63, 0x05, 0x2c,
-	0x0a, 0x5d, 0x27, 0x5d, 0x3c, 0x77, 0xc1, 0xb9, 0x82, 0x1e, 0xb2, 0x8c, 0xfa, 0x34, 0xa3, 0x85,
-	0xa6, 0x35, 0xc9, 0x69, 0x52, 0x2c, 0xae, 0x84, 0xd3, 0xff, 0x39, 0x15, 0x36, 0xc1, 0xe9, 0x03,
-	0x3a, 0x1c, 0xb3, 0xe2, 0xb3, 0xad, 0x72, 0x1f, 0x63, 0x22, 0xad, 0xcb, 0xa2, 0x34, 0x4e, 0xb8,
-	0xa3, 0xa0, 0xd5, 0x53, 0xa0, 0xed, 0xb0, 0x62, 0x1b, 0x4c, 0xbe, 0x94, 0xdb, 0x5c, 0x30, 0x25,
-	0x3c, 0xb7, 0x72, 0x7c, 0xee, 0x5c, 0xb3, 0x68, 0xf9, 0xa1, 0x12, 0xd5, 0xe7, 0x95, 0x58, 0xff,
-	0x56, 0x05, 0xab, 0x52, 0xd6, 0x93, 0x1c, 0xf5, 0x97, 0x67, 0x8e, 0xfa, 0x35, 0x4e, 0x3a, 0x12,
-	0xec, 0xe8, 0xf9, 0x5e, 0x14, 0xd9, 0x8b, 0xbe, 0x94, 0x25, 0x75, 0xb8, 0x30, 0xfd, 0xb3, 0x35,
-	0xf6, 0xde, 0xbf, 0xf9, 0x08, 0x2e, 0x80, 0xd5, 0x09, 0x66, 0xb4, 0x5b, 0x9d, 0xb6, 0x83, 0x1c,
-	0x57, 0x53, 0xe7, 0x7c, 0x1b, 0x27, 0x3a, 0xfc, 0x37, 0x7f, 0x3d, 0x0d, 0xca, 0x52, 0x87, 0xe1,
-	0x65, 0x70, 0x41, 0xf8, 0x10, 0x47, 0x6f, 0xe5, 0xe4, 0x42, 0x9c, 0xb6, 0x90, 0x6b, 0x2d, 0x4c,
-	0xf7, 0x74, 0x87, 0x74, 0x3b, 0x08, 0x99, 0x9a, 0x02, 0xd7, 0xc0, 0xb9, 0x02, 0x35, 0x3a, 0x1e,
-	0x71, 0x51, 0xab, 0xa3, 0xf9, 0xf0, 0x3a, 0xb8, 0x22, 0x81, 0x5e, 0x57, 0xdf, 0x41, 0xa4, 0x83,
-	0xb0, 0x81, 0x1c, 0x57, 0xdf, 0x41, 0x1a, 0x83, 0x57, 0xc1, 0xa5, 0x82, 0xe0, 0x62, 0xdd, 0xe9,
-	0x1a, 0xc8, 0xea, 0x21, 0x2c, 0xbc, 0xbf, 0x53, 0xe0, 0x75, 0xb0, 0x3e, 0xc7, 0xda, 0x6b, 0xdb,
-	0xdc, 0xfb, 0x7b, 0xe5, 0x18, 0xf7, 0x6d, 0x4b, 0xef, 0x6a, 0x3f, 0x28, 0xb0, 0x36, 0xcd, 0x2e,
-	0x5b, 0xf1, 0x03, 0xd2, 0x69, 0xef, 0x21, 0xac, 0xfd, 0x78, 0x1c, 0xc3, 0x9d, 0x30, 0x7e, 0x52,
-	0x60, 0x1d, 0x5c, 0x9b, 0xc3, 0xd8, 0xd3, 0x7b, 0xc8, 0x46, 0xce, 0x8e, 0xbb, 0xab, 0xfd, 0x9c,
-	0x8f, 0x64, 0xd2, 0x10, 0xd3, 0xea, 0xde, 0x17, 0xea, 0x3f, 0x55, 0xe1, 0x65, 0x70, 0x5e, 0x86,
-	0x0d, 0xbd, 0xa3, 0x1b, 0x96, 0xfb, 0x50, 0xfb, 0x2c, 0xbf, 0x78, 0x56, 0x65, 0x13, 0x6f, 0x8c,
-	0xf6, 0xb9, 0x0a, 0x37, 0xc0, 0xd5, 0x23, 0xb8, 0xdc, 0xb0, 0x2f, 0x54, 0xf8, 0x02, 0xd8, 0x90,
-	0x29, 0x18, 0xe9, 0x26, 0xd9, 0xc3, 0x96, 0x7b, 0x88, 0xf7, 0xa5, 0x0a, 0x1b, 0xe0, 0x86, 0xcc,
-	0xbb, 0xa7, 0x7b, 0xb6, 0xfb, 0x90, 0x18, 0xc8, 0xb6, 0xbb, 0x32, 0xf3, 0x2b, 0x15, 0x9e, 0x9f,
-	0x4e, 0x0e, 0xeb, 0x2d, 0xa1, 0xfe, 0xfd, 0x12, 0xac, 0x82, 0x35, 0x09, 0x9d, 0x8a, 0x7f, 0x5a,
-	0x92, 0xca, 0xcd, 0x2d, 0x42, 0xfb, 0x07, 0x25, 0xa9, 0x97, 0x53, 0x58, 0x4e, 0xf4, 0xa1, 0xec,
-	0xc8, 0xdb, 0x4b, 0x5a, 0xfa, 0x03, 0xed, 0xb7, 0x12, 0xbc, 0x04, 0xe0, 0x21, 0x58, 0x44, 0xfc,
-	0xbd, 0x24, 0xf5, 0x5e, 0x32, 0xc8, 0x31, 0xff, 0x90, 0x39, 0x96, 0xe3, 0x20, 0x4c, 0xba, 0x1e,
-	0xc6, 0x6d, 0xcf, 0x31, 0x2d, 0x67, 0x47, 0x94, 0xf2, 0xcb, 0xa9, 0xad, 0x3f, 0x15, 0xf0, 0x3f,
-	0x87, 0x66, 0xc1, 0x01, 0x2b, 0xee, 0xb1, 0x16, 0x8d, 0xe8, 0x80, 0x85, 0x7c, 0x8b, 0xf1, 0xe7,
-	0x20, 0x7c, 0x15, 0x94, 0xa5, 0xa7, 0x0c, 0x3c, 0xc7, 0xbf, 0xe9, 0x5d, 0x9a, 0xf8, 0x4f, 0x68,
-	0xc2, 0x2c, 0x73, 0xbd, 0x7a, 0xdc, 0x6b, 0x07, 0x52, 0xb0, 0xee, 0x8d, 0x7c, 0x9a, 0xb1, 0x79,
-	0x77, 0x24, 0xac, 0xfd, 0xcd, 0xf5, 0xc9, 0x37, 0xe4, 0xfa, 0xc6, 0x73, 0x2f, 0x58, 0xf8, 0x3a,
-	0x58, 0x9a, 0x6e, 0x25, 0x78, 0x61, 0x76, 0x4b, 0x89, 0x30, 0x17, 0xe7, 0x2f, 0xaf, 0xed, 0x37,
-	0xde, 0x7a, 0x6d, 0x10, 0x64, 0xfb, 0xe3, 0x47, 0xcd, 0x7e, 0x1c, 0x6e, 0xc6, 0x23, 0x16, 0xf5,
-	0xe3, 0xc4, 0xdf, 0x14, 0xf7, 0xd6, 0xad, 0x70, 0xda, 0x88, 0x5b, 0xfc, 0xdd, 0xf9, 0x98, 0xf6,
-	0xd9, 0xe6, 0xc1, 0x9d, 0xcd, 0x41, 0xbc, 0xe9, 0x87, 0xc1, 0xa3, 0x45, 0xfe, 0xfe, 0xbd, 0xf3,
-	0x57, 0x00, 0x00, 0x00, 0xff, 0xff, 0xa4, 0xee, 0x26, 0xad, 0x4a, 0x0b, 0x00, 0x00,
+	0x13, 0x36, 0xa9, 0xc4, 0x89, 0x57, 0xb6, 0x42, 0xaf, 0xf3, 0xa1, 0x28, 0xc9, 0x1b, 0x59, 0xc1,
+	0x5b, 0x08, 0x69, 0x23, 0x05, 0x0e, 0xfa, 0x9d, 0x43, 0x69, 0x72, 0x63, 0x13, 0x91, 0x28, 0x61,
+	0x45, 0xda, 0x49, 0x0f, 0x5d, 0x6c, 0xc4, 0xb5, 0x4c, 0x40, 0x24, 0x55, 0x92, 0x72, 0xd0, 0x5f,
+	0x50, 0xf4, 0xd6, 0xb4, 0xe8, 0x4f, 0x68, 0x4f, 0xfd, 0x4a, 0x7f, 0x40, 0x6f, 0x05, 0xfa, 0x79,
+	0x6f, 0xff, 0x47, 0xdb, 0x73, 0xc1, 0x5d, 0x4a, 0x59, 0xcb, 0x72, 0x53, 0x17, 0xbd, 0x49, 0xcf,
+	0x3c, 0x33, 0xf3, 0xcc, 0xcc, 0x72, 0x76, 0xc1, 0xba, 0x17, 0xf8, 0xcd, 0xfd, 0xc7, 0x24, 0x60,
+	0x69, 0xec, 0xf7, 0x13, 0x12, 0x0c, 0x82, 0x94, 0x24, 0x2c, 0x3e, 0xf0, 0xfb, 0xac, 0x31, 0x8a,
+	0xa3, 0x34, 0x82, 0x05, 0x2f, 0xf0, 0x2b, 0xab, 0x19, 0xaf, 0x1f, 0x05, 0x41, 0x14, 0x26, 0x02,
+	0xaf, 0x2c, 0x0b, 0xd7, 0xfc, 0xdf, 0x95, 0x41, 0x14, 0x0d, 0x86, 0xac, 0xc9, 0xff, 0x3d, 0x1a,
+	0xef, 0x35, 0x59, 0x30, 0x4a, 0xdf, 0x13, 0xc6, 0xda, 0xfb, 0x0a, 0x58, 0x6e, 0xf3, 0x0c, 0x46,
+	0x14, 0xee, 0xf9, 0x03, 0x78, 0x0b, 0x2c, 0x89, 0x8c, 0xc4, 0xf7, 0xca, 0x4a, 0x55, 0xa9, 0x97,
+	0x36, 0xb4, 0x86, 0x17, 0xf8, 0x0d, 0xc1, 0xb2, 0x69, 0xc0, 0x12, 0x7c, 0x56, 0x50, 0x2c, 0x0f,
+	0xde, 0x00, 0x2b, 0x7e, 0x42, 0xfa, 0xdc, 0x77, 0x1c, 0x33, 0xaf, 0xac, 0x56, 0x95, 0xfa, 0x59,
+	0xbc, 0xec, 0x27, 0xc6, 0x14, 0xcb, 0x48, 0xa3, 0x68, 0x38, 0x24, 0x7e, 0x98, 0xb2, 0xf8, 0x80,
+	0x0e, 0xcb, 0x85, 0xaa, 0x52, 0x5f, 0xc1, 0xcb, 0x19, 0x68, 0xe5, 0x58, 0xed, 0x2e, 0x58, 0x11,
+	0x29, 0x72, 0x4f, 0xf8, 0x22, 0x38, 0x93, 0xd7, 0x5e, 0x56, 0xaa, 0x85, 0x7a, 0x71, 0x63, 0x55,
+	0xd2, 0x21, 0x38, 0x78, 0xc2, 0xa8, 0x7d, 0xa6, 0x82, 0xb5, 0x96, 0x9f, 0xa4, 0x79, 0x08, 0xcc,
+	0x92, 0x51, 0x14, 0x26, 0x0c, 0xde, 0x00, 0x8b, 0x49, 0x4a, 0xd3, 0x71, 0x92, 0xd7, 0x52, 0xe4,
+	0x31, 0x7a, 0x1c, 0xc2, 0xb9, 0x09, 0xbe, 0x0a, 0x16, 0x63, 0x46, 0x93, 0x28, 0xe4, 0xea, 0x4b,
+	0x1b, 0xd7, 0x39, 0x69, 0x4e, 0xb8, 0x06, 0xe6, 0x34, 0x9c, 0xd3, 0xe1, 0x4b, 0xcf, 0x24, 0x66,
+	0x25, 0x15, 0x37, 0xa0, 0x24, 0x31, 0x99, 0xd1, 0x98, 0xb5, 0x41, 0xf8, 0x11, 0x8f, 0xa5, 0xd4,
+	0x1f, 0x96, 0x4f, 0x55, 0x95, 0xfa, 0x12, 0x5e, 0x16, 0xa0, 0xc9, 0xb1, 0xda, 0x3b, 0x60, 0x51,
+	0x24, 0x81, 0xe7, 0x81, 0xe6, 0xda, 0x26, 0xba, 0x67, 0xd9, 0xc8, 0x24, 0x18, 0xe9, 0xbd, 0x8e,
+	0xad, 0x2d, 0x40, 0x08, 0x4a, 0xae, 0x7d, 0xdf, 0xee, 0xec, 0xda, 0xc4, 0x44, 0x3b, 0x96, 0x81,
+	0x34, 0x25, 0xc3, 0x2c, 0xdb, 0x41, 0xd8, 0xd6, 0x5b, 0x04, 0x61, 0xdc, 0xc1, 0x9a, 0x0a, 0x2f,
+	0x02, 0x28, 0xec, 0xc4, 0xb5, 0x31, 0xd2, 0x8d, 0x6d, 0x7d, 0xb3, 0x85, 0xb4, 0x42, 0xed, 0x1b,
+	0x05, 0x5c, 0x39, 0xa4, 0x6f, 0x1c, 0xd3, 0xd4, 0x8f, 0x42, 0xcc, 0xde, 0x1d, 0xb3, 0x24, 0x85,
+	0x37, 0x41, 0xd1, 0x63, 0xd9, 0x19, 0x23, 0xe3, 0x71, 0x7e, 0x02, 0x8a, 0x1b, 0x4b, 0xbc, 0x2c,
+	0x77, 0xec, 0x7b, 0x18, 0x08, 0x6b, 0xf6, 0x1b, 0x36, 0xc0, 0x99, 0xfe, 0x3e, 0x0d, 0x07, 0x2c,
+	0xe1, 0x8d, 0x9b, 0x5b, 0xfe, 0xf6, 0x02, 0x9e, 0x90, 0xe0, 0x4d, 0xa0, 0xc5, 0x2c, 0x61, 0x29,
+	0x49, 0x23, 0xe2, 0xb1, 0x3d, 0x3a, 0x1e, 0xa6, 0xbc, 0x6f, 0x67, 0xb7, 0x17, 0x70, 0x89, 0x5b,
+	0x9c, 0xc8, 0x14, 0xf8, 0x66, 0x11, 0x2c, 0x45, 0x23, 0x26, 0xb4, 0xd5, 0xbe, 0x55, 0xc1, 0xd5,
+	0xf9, 0xa2, 0x4f, 0x32, 0xe6, 0xb7, 0x66, 0xc6, 0x5c, 0x3f, 0xaa, 0x76, 0x26, 0xee, 0xec, 0xbc,
+	0x8f, 0x4c, 0xb0, 0x30, 0x67, 0x82, 0x4f, 0x94, 0xff, 0x68, 0x84, 0xd7, 0xc0, 0xe5, 0x6e, 0xa7,
+	0xd5, 0x22, 0xdc, 0xb0, 0xa3, 0xb7, 0x88, 0x6b, 0xf7, 0xdc, 0x6e, 0xb7, 0x83, 0x1d, 0x64, 0x6a,
+	0x05, 0xe1, 0xb2, 0xa3, 0xb7, 0x2c, 0x93, 0xb4, 0x91, 0x83, 0x2d, 0x43, 0x3b, 0x75, 0xcc, 0xd4,
+	0x4f, 0xd7, 0x3e, 0x51, 0x40, 0x49, 0x14, 0xda, 0x66, 0x29, 0x35, 0x69, 0x4a, 0x4f, 0x34, 0xe8,
+	0xdb, 0xa0, 0xd4, 0x8f, 0x82, 0x51, 0x14, 0xb2, 0x30, 0x15, 0x74, 0x75, 0x96, 0xbe, 0x32, 0x25,
+	0x70, 0x8f, 0xff, 0xcb, 0x1e, 0x21, 0x0d, 0x58, 0xde, 0xaa, 0x67, 0xb4, 0x6c, 0x93, 0xd4, 0x3e,
+	0x55, 0xc0, 0xa2, 0xd0, 0x75, 0xd2, 0xc5, 0x73, 0x17, 0x9c, 0xcb, 0xe9, 0x01, 0x4b, 0xa9, 0x47,
+	0x53, 0x9a, 0x6b, 0x5a, 0x93, 0x9c, 0x26, 0xc5, 0xe2, 0x52, 0x30, 0xfd, 0x9f, 0x51, 0x61, 0x03,
+	0x9c, 0x3e, 0xa0, 0xc3, 0x31, 0xcb, 0x3f, 0xdb, 0x32, 0xf7, 0x31, 0x26, 0xd2, 0x7a, 0x2c, 0x4c,
+	0xa2, 0x98, 0x3b, 0x0a, 0x5a, 0x2d, 0x01, 0xda, 0x16, 0xcb, 0xb7, 0xc1, 0xe4, 0x4b, 0xb9, 0xcd,
+	0x05, 0x53, 0xc2, 0x73, 0x2b, 0xc7, 0xe7, 0xce, 0x34, 0x8b, 0x96, 0x1f, 0x2a, 0x51, 0x7d, 0x5e,
+	0x89, 0xb5, 0xef, 0x54, 0xb0, 0x2a, 0x65, 0x3d, 0xc9, 0x51, 0x7f, 0x79, 0xe6, 0xa8, 0x5f, 0xe3,
+	0xa4, 0x23, 0xc1, 0x8e, 0x9e, 0xef, 0x45, 0x91, 0x3d, 0xef, 0x4b, 0x51, 0x52, 0x87, 0x73, 0xd3,
+	0x3f, 0x5b, 0x63, 0x1f, 0xfc, 0x9b, 0x8f, 0xe0, 0x02, 0x58, 0x9d, 0x60, 0x46, 0xa7, 0xdd, 0xed,
+	0xd8, 0xc8, 0x76, 0x34, 0x75, 0xce, 0xb7, 0x71, 0xa2, 0xc3, 0x7f, 0xf3, 0xb7, 0xd3, 0xa0, 0x28,
+	0x75, 0x18, 0x5e, 0x06, 0x17, 0x84, 0x0f, 0xb1, 0xf5, 0x76, 0x46, 0xce, 0xc5, 0x69, 0x0b, 0x99,
+	0xd6, 0xdc, 0x74, 0x4f, 0xb7, 0x49, 0xaf, 0x8b, 0x90, 0xa9, 0x29, 0x70, 0x0d, 0x9c, 0xcb, 0x51,
+	0xa3, 0xeb, 0x12, 0x07, 0xb5, 0xbb, 0x9a, 0x07, 0xaf, 0x83, 0x2b, 0x12, 0xe8, 0xf6, 0xf4, 0x2d,
+	0x44, 0xba, 0x08, 0x1b, 0xc8, 0x76, 0xf4, 0x2d, 0xa4, 0x31, 0x78, 0x15, 0x5c, 0xca, 0x09, 0x0e,
+	0xd6, 0xed, 0x9e, 0x81, 0xac, 0x1d, 0x84, 0x85, 0xf7, 0xf7, 0x0a, 0xbc, 0x0e, 0x2a, 0x73, 0xac,
+	0x3b, 0x9d, 0x16, 0xf7, 0xfe, 0x41, 0x39, 0xc6, 0x7d, 0xd3, 0xd2, 0x7b, 0xda, 0x8f, 0x0a, 0xac,
+	0x4e, 0xb3, 0xcb, 0x56, 0xfc, 0x80, 0x74, 0x3b, 0xbb, 0x08, 0x6b, 0x3f, 0x1d, 0xc7, 0x70, 0x26,
+	0x8c, 0x9f, 0x15, 0x58, 0x03, 0xd7, 0xe6, 0x30, 0x76, 0xf5, 0x1d, 0xd4, 0x42, 0xf6, 0x96, 0xb3,
+	0xad, 0xfd, 0x92, 0x8d, 0x64, 0xd2, 0x10, 0xd3, 0xea, 0xdd, 0x17, 0xea, 0x3f, 0x57, 0xe1, 0x65,
+	0x70, 0x5e, 0x86, 0x0d, 0xbd, 0xab, 0x1b, 0x96, 0xf3, 0x50, 0xfb, 0x22, 0xbb, 0x78, 0x56, 0x65,
+	0x13, 0x6f, 0x8c, 0xf6, 0xa5, 0x0a, 0xd7, 0xc1, 0xd5, 0x23, 0xb8, 0xdc, 0xb0, 0xaf, 0x54, 0xf8,
+	0x02, 0x58, 0x97, 0x29, 0x18, 0xe9, 0x26, 0xd9, 0xc5, 0x96, 0x73, 0x88, 0xf7, 0xb5, 0x0a, 0xeb,
+	0xe0, 0x86, 0xcc, 0xbb, 0xa7, 0xbb, 0x2d, 0xe7, 0x21, 0x31, 0x50, 0xab, 0xd5, 0x93, 0x99, 0x4f,
+	0x55, 0x78, 0x7e, 0x3a, 0x39, 0xac, 0xb7, 0x85, 0xfa, 0x0f, 0x0b, 0xb0, 0x0c, 0xd6, 0x24, 0x74,
+	0x2a, 0xfe, 0x49, 0x41, 0x2a, 0x37, 0xb3, 0x08, 0xed, 0x1f, 0x15, 0xa4, 0x5e, 0x4e, 0x61, 0x39,
+	0xd1, 0xc7, 0xb2, 0x23, 0x6f, 0x2f, 0x69, 0xeb, 0x0f, 0xb4, 0xdf, 0x0b, 0xf0, 0x12, 0x80, 0x87,
+	0x60, 0x11, 0xf1, 0x8f, 0x82, 0xd4, 0x7b, 0xc9, 0x20, 0xc7, 0xfc, 0x53, 0xe6, 0x58, 0xb6, 0x8d,
+	0x30, 0xe9, 0xb9, 0x18, 0x77, 0x5c, 0xdb, 0xb4, 0xec, 0x2d, 0x51, 0xca, 0xaf, 0xa7, 0x36, 0x9e,
+	0xaa, 0xe0, 0x7f, 0x36, 0x4d, 0xfd, 0x03, 0x96, 0xdf, 0x63, 0x6d, 0x1a, 0xd2, 0x01, 0x0b, 0xf8,
+	0x16, 0xe3, 0x6f, 0x45, 0xf8, 0x1a, 0x28, 0x4a, 0x4f, 0x19, 0x78, 0x8e, 0x7f, 0xd3, 0xdb, 0x34,
+	0xf6, 0x1e, 0xd3, 0x98, 0x59, 0x66, 0xa5, 0x7c, 0xdc, 0x6b, 0x07, 0x52, 0x50, 0x71, 0x47, 0x1e,
+	0x4d, 0xd9, 0xbc, 0x3b, 0x12, 0x56, 0xff, 0xe6, 0xfa, 0xe4, 0x1b, 0xb2, 0xb2, 0xfe, 0xdc, 0x0b,
+	0x16, 0xbe, 0x01, 0x96, 0xa6, 0x5b, 0x09, 0x5e, 0x98, 0xdd, 0x52, 0x22, 0xcc, 0xc5, 0xf9, 0xcb,
+	0x0b, 0xbe, 0x02, 0x56, 0x7a, 0x69, 0xcc, 0x68, 0x30, 0x29, 0xed, 0x62, 0x43, 0x3c, 0x75, 0x1b,
+	0x93, 0xa7, 0x6e, 0x03, 0x65, 0x4f, 0xdd, 0x8a, 0xbc, 0xc6, 0x6e, 0x2b, 0x9b, 0x6f, 0xbe, 0xfd,
+	0xfa, 0xc0, 0x4f, 0xf7, 0xc7, 0x8f, 0x1a, 0xfd, 0x28, 0x68, 0x46, 0x23, 0x16, 0xf6, 0xa3, 0xd8,
+	0x6b, 0x8a, 0xfb, 0xee, 0x56, 0x30, 0x6d, 0xe0, 0x2d, 0xfe, 0x5e, 0xdd, 0xa3, 0x7d, 0xd6, 0x3c,
+	0xb8, 0xd3, 0x1c, 0x44, 0x4d, 0x2f, 0xf0, 0x1f, 0x2d, 0xf2, 0xd8, 0x77, 0xfe, 0x0a, 0x00, 0x00,
+	0xff, 0xff, 0x04, 0xda, 0xd9, 0x9e, 0x9f, 0x0b, 0x00, 0x00,
 }
 
 // Reference imports to suppress errors if they are not otherwise used.
@@ -874,6 +880,8 @@
 	UpdateMetricsConfiguration(ctx context.Context, in *MetricsConfigurationRequest, opts ...grpc.CallOption) (*MetricsConfigurationResponse, error)
 	// Get the instantenous value of a metric
 	GetMetric(ctx context.Context, in *GetMetricRequest, opts ...grpc.CallOption) (*GetMetricResponse, error)
+	// Initiate the server streaming of the metrics
+	StreamMetrics(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (NativeMetricsManagementService_StreamMetricsClient, error)
 }
 
 type nativeMetricsManagementServiceClient struct {
@@ -911,6 +919,38 @@
 	return out, nil
 }
 
+func (c *nativeMetricsManagementServiceClient) StreamMetrics(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (NativeMetricsManagementService_StreamMetricsClient, error) {
+	stream, err := c.cc.NewStream(ctx, &_NativeMetricsManagementService_serviceDesc.Streams[0], "/dmi.NativeMetricsManagementService/StreamMetrics", opts...)
+	if err != nil {
+		return nil, err
+	}
+	x := &nativeMetricsManagementServiceStreamMetricsClient{stream}
+	if err := x.ClientStream.SendMsg(in); err != nil {
+		return nil, err
+	}
+	if err := x.ClientStream.CloseSend(); err != nil {
+		return nil, err
+	}
+	return x, nil
+}
+
+type NativeMetricsManagementService_StreamMetricsClient interface {
+	Recv() (*Metric, error)
+	grpc.ClientStream
+}
+
+type nativeMetricsManagementServiceStreamMetricsClient struct {
+	grpc.ClientStream
+}
+
+func (x *nativeMetricsManagementServiceStreamMetricsClient) Recv() (*Metric, error) {
+	m := new(Metric)
+	if err := x.ClientStream.RecvMsg(m); err != nil {
+		return nil, err
+	}
+	return m, nil
+}
+
 // NativeMetricsManagementServiceServer is the server API for NativeMetricsManagementService service.
 type NativeMetricsManagementServiceServer interface {
 	// List the supported metrics for the passed device.
@@ -925,6 +965,25 @@
 	UpdateMetricsConfiguration(context.Context, *MetricsConfigurationRequest) (*MetricsConfigurationResponse, error)
 	// Get the instantenous value of a metric
 	GetMetric(context.Context, *GetMetricRequest) (*GetMetricResponse, error)
+	// Initiate the server streaming of the metrics
+	StreamMetrics(*empty.Empty, NativeMetricsManagementService_StreamMetricsServer) error
+}
+
+// UnimplementedNativeMetricsManagementServiceServer can be embedded to have forward compatible implementations.
+type UnimplementedNativeMetricsManagementServiceServer struct {
+}
+
+func (*UnimplementedNativeMetricsManagementServiceServer) ListMetrics(ctx context.Context, req *HardwareID) (*ListMetricsResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method ListMetrics not implemented")
+}
+func (*UnimplementedNativeMetricsManagementServiceServer) UpdateMetricsConfiguration(ctx context.Context, req *MetricsConfigurationRequest) (*MetricsConfigurationResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method UpdateMetricsConfiguration not implemented")
+}
+func (*UnimplementedNativeMetricsManagementServiceServer) GetMetric(ctx context.Context, req *GetMetricRequest) (*GetMetricResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method GetMetric not implemented")
+}
+func (*UnimplementedNativeMetricsManagementServiceServer) StreamMetrics(req *empty.Empty, srv NativeMetricsManagementService_StreamMetricsServer) error {
+	return status.Errorf(codes.Unimplemented, "method StreamMetrics not implemented")
 }
 
 func RegisterNativeMetricsManagementServiceServer(s *grpc.Server, srv NativeMetricsManagementServiceServer) {
@@ -985,6 +1044,27 @@
 	return interceptor(ctx, in, info, handler)
 }
 
+func _NativeMetricsManagementService_StreamMetrics_Handler(srv interface{}, stream grpc.ServerStream) error {
+	m := new(empty.Empty)
+	if err := stream.RecvMsg(m); err != nil {
+		return err
+	}
+	return srv.(NativeMetricsManagementServiceServer).StreamMetrics(m, &nativeMetricsManagementServiceStreamMetricsServer{stream})
+}
+
+type NativeMetricsManagementService_StreamMetricsServer interface {
+	Send(*Metric) error
+	grpc.ServerStream
+}
+
+type nativeMetricsManagementServiceStreamMetricsServer struct {
+	grpc.ServerStream
+}
+
+func (x *nativeMetricsManagementServiceStreamMetricsServer) Send(m *Metric) error {
+	return x.ServerStream.SendMsg(m)
+}
+
 var _NativeMetricsManagementService_serviceDesc = grpc.ServiceDesc{
 	ServiceName: "dmi.NativeMetricsManagementService",
 	HandlerType: (*NativeMetricsManagementServiceServer)(nil),
@@ -1002,6 +1082,12 @@
 			Handler:    _NativeMetricsManagementService_GetMetric_Handler,
 		},
 	},
-	Streams:  []grpc.StreamDesc{},
+	Streams: []grpc.StreamDesc{
+		{
+			StreamName:    "StreamMetrics",
+			Handler:       _NativeMetricsManagementService_StreamMetrics_Handler,
+			ServerStreams: true,
+		},
+	},
 	Metadata: "dmi/hw_metrics_mgmt_service.proto",
 }
diff --git a/vendor/github.com/opencord/device-management-interface/go/dmi/sw_management_service.pb.go b/vendor/github.com/opencord/device-management-interface/go/dmi/sw_management_service.pb.go
index 7dbb089..db176be 100644
--- a/vendor/github.com/opencord/device-management-interface/go/dmi/sw_management_service.pb.go
+++ b/vendor/github.com/opencord/device-management-interface/go/dmi/sw_management_service.pb.go
@@ -8,6 +8,8 @@
 	fmt "fmt"
 	proto "github.com/golang/protobuf/proto"
 	grpc "google.golang.org/grpc"
+	codes "google.golang.org/grpc/codes"
+	status "google.golang.org/grpc/status"
 	math "math"
 )
 
@@ -773,6 +775,29 @@
 	GetStartupConfigurationInfo(context.Context, *StartupConfigInfoRequest) (*StartupConfigInfoResponse, error)
 }
 
+// UnimplementedNativeSoftwareManagementServiceServer can be embedded to have forward compatible implementations.
+type UnimplementedNativeSoftwareManagementServiceServer struct {
+}
+
+func (*UnimplementedNativeSoftwareManagementServiceServer) GetSoftwareVersion(ctx context.Context, req *HardwareID) (*GetSoftwareVersionInformationResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method GetSoftwareVersion not implemented")
+}
+func (*UnimplementedNativeSoftwareManagementServiceServer) DownloadImage(req *DownloadImageRequest, srv NativeSoftwareManagementService_DownloadImageServer) error {
+	return status.Errorf(codes.Unimplemented, "method DownloadImage not implemented")
+}
+func (*UnimplementedNativeSoftwareManagementServiceServer) ActivateImage(req *HardwareID, srv NativeSoftwareManagementService_ActivateImageServer) error {
+	return status.Errorf(codes.Unimplemented, "method ActivateImage not implemented")
+}
+func (*UnimplementedNativeSoftwareManagementServiceServer) RevertToStandbyImage(req *HardwareID, srv NativeSoftwareManagementService_RevertToStandbyImageServer) error {
+	return status.Errorf(codes.Unimplemented, "method RevertToStandbyImage not implemented")
+}
+func (*UnimplementedNativeSoftwareManagementServiceServer) UpdateStartupConfiguration(req *ConfigRequest, srv NativeSoftwareManagementService_UpdateStartupConfigurationServer) error {
+	return status.Errorf(codes.Unimplemented, "method UpdateStartupConfiguration not implemented")
+}
+func (*UnimplementedNativeSoftwareManagementServiceServer) GetStartupConfigurationInfo(ctx context.Context, req *StartupConfigInfoRequest) (*StartupConfigInfoResponse, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method GetStartupConfigurationInfo not implemented")
+}
+
 func RegisterNativeSoftwareManagementServiceServer(s *grpc.Server, srv NativeSoftwareManagementServiceServer) {
 	s.RegisterService(&_NativeSoftwareManagementService_serviceDesc, srv)
 }
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 1b25546..98b7010 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -74,7 +74,7 @@
 github.com/olekukonko/tablewriter
 # github.com/opencord/cordctl v0.0.0-20190909161711-01e9c1f04bf4
 github.com/opencord/cordctl/pkg/format
-# github.com/opencord/device-management-interface v0.11.0
+# github.com/opencord/device-management-interface v1.2.1
 github.com/opencord/device-management-interface/go/dmi
 # github.com/opencord/omci-lib-go/v2 v2.1.2
 github.com/opencord/omci-lib-go/v2
