// Code generated by protoc-gen-go. DO NOT EDIT.
// source: voltha_protos/openolt.proto

package openolt

import (
	context "context"
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	tech_profile "github.com/opencord/voltha-protos/v2/go/tech_profile"
	_ "google.golang.org/genproto/googleapis/api/annotations"
	grpc "google.golang.org/grpc"
	math "math"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package

// SchedulerConfig from public import voltha_protos/tech_profile.proto
type SchedulerConfig = tech_profile.SchedulerConfig

// TrafficShapingInfo from public import voltha_protos/tech_profile.proto
type TrafficShapingInfo = tech_profile.TrafficShapingInfo

// TrafficScheduler from public import voltha_protos/tech_profile.proto
type TrafficScheduler = tech_profile.TrafficScheduler

// TrafficSchedulers from public import voltha_protos/tech_profile.proto
type TrafficSchedulers = tech_profile.TrafficSchedulers

// TailDropDiscardConfig from public import voltha_protos/tech_profile.proto
type TailDropDiscardConfig = tech_profile.TailDropDiscardConfig

// RedDiscardConfig from public import voltha_protos/tech_profile.proto
type RedDiscardConfig = tech_profile.RedDiscardConfig

// WRedDiscardConfig from public import voltha_protos/tech_profile.proto
type WRedDiscardConfig = tech_profile.WRedDiscardConfig

// DiscardConfig from public import voltha_protos/tech_profile.proto
type DiscardConfig = tech_profile.DiscardConfig
type DiscardConfig_TailDropDiscardConfig = tech_profile.DiscardConfig_TailDropDiscardConfig
type DiscardConfig_RedDiscardConfig = tech_profile.DiscardConfig_RedDiscardConfig
type DiscardConfig_WredDiscardConfig = tech_profile.DiscardConfig_WredDiscardConfig

// TrafficQueue from public import voltha_protos/tech_profile.proto
type TrafficQueue = tech_profile.TrafficQueue

// TrafficQueues from public import voltha_protos/tech_profile.proto
type TrafficQueues = tech_profile.TrafficQueues

// Direction from public import voltha_protos/tech_profile.proto
type Direction = tech_profile.Direction

var Direction_name = tech_profile.Direction_name
var Direction_value = tech_profile.Direction_value

const Direction_UPSTREAM = Direction(tech_profile.Direction_UPSTREAM)
const Direction_DOWNSTREAM = Direction(tech_profile.Direction_DOWNSTREAM)
const Direction_BIDIRECTIONAL = Direction(tech_profile.Direction_BIDIRECTIONAL)

// SchedulingPolicy from public import voltha_protos/tech_profile.proto
type SchedulingPolicy = tech_profile.SchedulingPolicy

var SchedulingPolicy_name = tech_profile.SchedulingPolicy_name
var SchedulingPolicy_value = tech_profile.SchedulingPolicy_value

const SchedulingPolicy_WRR = SchedulingPolicy(tech_profile.SchedulingPolicy_WRR)
const SchedulingPolicy_StrictPriority = SchedulingPolicy(tech_profile.SchedulingPolicy_StrictPriority)
const SchedulingPolicy_Hybrid = SchedulingPolicy(tech_profile.SchedulingPolicy_Hybrid)

// AdditionalBW from public import voltha_protos/tech_profile.proto
type AdditionalBW = tech_profile.AdditionalBW

var AdditionalBW_name = tech_profile.AdditionalBW_name
var AdditionalBW_value = tech_profile.AdditionalBW_value

const AdditionalBW_AdditionalBW_None = AdditionalBW(tech_profile.AdditionalBW_AdditionalBW_None)
const AdditionalBW_AdditionalBW_NA = AdditionalBW(tech_profile.AdditionalBW_AdditionalBW_NA)
const AdditionalBW_AdditionalBW_BestEffort = AdditionalBW(tech_profile.AdditionalBW_AdditionalBW_BestEffort)
const AdditionalBW_AdditionalBW_Auto = AdditionalBW(tech_profile.AdditionalBW_AdditionalBW_Auto)

// DiscardPolicy from public import voltha_protos/tech_profile.proto
type DiscardPolicy = tech_profile.DiscardPolicy

var DiscardPolicy_name = tech_profile.DiscardPolicy_name
var DiscardPolicy_value = tech_profile.DiscardPolicy_value

const DiscardPolicy_TailDrop = DiscardPolicy(tech_profile.DiscardPolicy_TailDrop)
const DiscardPolicy_WTailDrop = DiscardPolicy(tech_profile.DiscardPolicy_WTailDrop)
const DiscardPolicy_Red = DiscardPolicy(tech_profile.DiscardPolicy_Red)
const DiscardPolicy_WRed = DiscardPolicy(tech_profile.DiscardPolicy_WRed)

// InferredAdditionBWIndication from public import voltha_protos/tech_profile.proto
type InferredAdditionBWIndication = tech_profile.InferredAdditionBWIndication

var InferredAdditionBWIndication_name = tech_profile.InferredAdditionBWIndication_name
var InferredAdditionBWIndication_value = tech_profile.InferredAdditionBWIndication_value

const InferredAdditionBWIndication_InferredAdditionBWIndication_None = InferredAdditionBWIndication(tech_profile.InferredAdditionBWIndication_InferredAdditionBWIndication_None)
const InferredAdditionBWIndication_InferredAdditionBWIndication_Assured = InferredAdditionBWIndication(tech_profile.InferredAdditionBWIndication_InferredAdditionBWIndication_Assured)
const InferredAdditionBWIndication_InferredAdditionBWIndication_BestEffort = InferredAdditionBWIndication(tech_profile.InferredAdditionBWIndication_InferredAdditionBWIndication_BestEffort)

type DeviceInfo_DeviceResourceRanges_Pool_PoolType int32

const (
	DeviceInfo_DeviceResourceRanges_Pool_ONU_ID     DeviceInfo_DeviceResourceRanges_Pool_PoolType = 0
	DeviceInfo_DeviceResourceRanges_Pool_ALLOC_ID   DeviceInfo_DeviceResourceRanges_Pool_PoolType = 1
	DeviceInfo_DeviceResourceRanges_Pool_GEMPORT_ID DeviceInfo_DeviceResourceRanges_Pool_PoolType = 2
	DeviceInfo_DeviceResourceRanges_Pool_FLOW_ID    DeviceInfo_DeviceResourceRanges_Pool_PoolType = 3
)

var DeviceInfo_DeviceResourceRanges_Pool_PoolType_name = map[int32]string{
	0: "ONU_ID",
	1: "ALLOC_ID",
	2: "GEMPORT_ID",
	3: "FLOW_ID",
}

var DeviceInfo_DeviceResourceRanges_Pool_PoolType_value = map[string]int32{
	"ONU_ID":     0,
	"ALLOC_ID":   1,
	"GEMPORT_ID": 2,
	"FLOW_ID":    3,
}

func (x DeviceInfo_DeviceResourceRanges_Pool_PoolType) String() string {
	return proto.EnumName(DeviceInfo_DeviceResourceRanges_Pool_PoolType_name, int32(x))
}

func (DeviceInfo_DeviceResourceRanges_Pool_PoolType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{15, 0, 0, 0}
}

type DeviceInfo_DeviceResourceRanges_Pool_SharingType int32

const (
	DeviceInfo_DeviceResourceRanges_Pool_DEDICATED_PER_INTF           DeviceInfo_DeviceResourceRanges_Pool_SharingType = 0
	DeviceInfo_DeviceResourceRanges_Pool_SHARED_BY_ALL_INTF_ALL_TECH  DeviceInfo_DeviceResourceRanges_Pool_SharingType = 1
	DeviceInfo_DeviceResourceRanges_Pool_SHARED_BY_ALL_INTF_SAME_TECH DeviceInfo_DeviceResourceRanges_Pool_SharingType = 2
)

var DeviceInfo_DeviceResourceRanges_Pool_SharingType_name = map[int32]string{
	0: "DEDICATED_PER_INTF",
	1: "SHARED_BY_ALL_INTF_ALL_TECH",
	2: "SHARED_BY_ALL_INTF_SAME_TECH",
}

var DeviceInfo_DeviceResourceRanges_Pool_SharingType_value = map[string]int32{
	"DEDICATED_PER_INTF":           0,
	"SHARED_BY_ALL_INTF_ALL_TECH":  1,
	"SHARED_BY_ALL_INTF_SAME_TECH": 2,
}

func (x DeviceInfo_DeviceResourceRanges_Pool_SharingType) String() string {
	return proto.EnumName(DeviceInfo_DeviceResourceRanges_Pool_SharingType_name, int32(x))
}

func (DeviceInfo_DeviceResourceRanges_Pool_SharingType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{15, 0, 0, 1}
}

type Indication struct {
	// Types that are valid to be assigned to Data:
	//	*Indication_OltInd
	//	*Indication_IntfInd
	//	*Indication_IntfOperInd
	//	*Indication_OnuDiscInd
	//	*Indication_OnuInd
	//	*Indication_OmciInd
	//	*Indication_PktInd
	//	*Indication_PortStats
	//	*Indication_FlowStats
	//	*Indication_AlarmInd
	Data                 isIndication_Data `protobuf_oneof:"data"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *Indication) Reset()         { *m = Indication{} }
func (m *Indication) String() string { return proto.CompactTextString(m) }
func (*Indication) ProtoMessage()    {}
func (*Indication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{0}
}

func (m *Indication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Indication.Unmarshal(m, b)
}
func (m *Indication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Indication.Marshal(b, m, deterministic)
}
func (m *Indication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Indication.Merge(m, src)
}
func (m *Indication) XXX_Size() int {
	return xxx_messageInfo_Indication.Size(m)
}
func (m *Indication) XXX_DiscardUnknown() {
	xxx_messageInfo_Indication.DiscardUnknown(m)
}

var xxx_messageInfo_Indication proto.InternalMessageInfo

type isIndication_Data interface {
	isIndication_Data()
}

type Indication_OltInd struct {
	OltInd *OltIndication `protobuf:"bytes,1,opt,name=olt_ind,json=oltInd,proto3,oneof"`
}

type Indication_IntfInd struct {
	IntfInd *IntfIndication `protobuf:"bytes,2,opt,name=intf_ind,json=intfInd,proto3,oneof"`
}

type Indication_IntfOperInd struct {
	IntfOperInd *IntfOperIndication `protobuf:"bytes,3,opt,name=intf_oper_ind,json=intfOperInd,proto3,oneof"`
}

type Indication_OnuDiscInd struct {
	OnuDiscInd *OnuDiscIndication `protobuf:"bytes,4,opt,name=onu_disc_ind,json=onuDiscInd,proto3,oneof"`
}

type Indication_OnuInd struct {
	OnuInd *OnuIndication `protobuf:"bytes,5,opt,name=onu_ind,json=onuInd,proto3,oneof"`
}

type Indication_OmciInd struct {
	OmciInd *OmciIndication `protobuf:"bytes,6,opt,name=omci_ind,json=omciInd,proto3,oneof"`
}

type Indication_PktInd struct {
	PktInd *PacketIndication `protobuf:"bytes,7,opt,name=pkt_ind,json=pktInd,proto3,oneof"`
}

type Indication_PortStats struct {
	PortStats *PortStatistics `protobuf:"bytes,8,opt,name=port_stats,json=portStats,proto3,oneof"`
}

type Indication_FlowStats struct {
	FlowStats *FlowStatistics `protobuf:"bytes,9,opt,name=flow_stats,json=flowStats,proto3,oneof"`
}

type Indication_AlarmInd struct {
	AlarmInd *AlarmIndication `protobuf:"bytes,10,opt,name=alarm_ind,json=alarmInd,proto3,oneof"`
}

func (*Indication_OltInd) isIndication_Data() {}

func (*Indication_IntfInd) isIndication_Data() {}

func (*Indication_IntfOperInd) isIndication_Data() {}

func (*Indication_OnuDiscInd) isIndication_Data() {}

func (*Indication_OnuInd) isIndication_Data() {}

func (*Indication_OmciInd) isIndication_Data() {}

func (*Indication_PktInd) isIndication_Data() {}

func (*Indication_PortStats) isIndication_Data() {}

func (*Indication_FlowStats) isIndication_Data() {}

func (*Indication_AlarmInd) isIndication_Data() {}

func (m *Indication) GetData() isIndication_Data {
	if m != nil {
		return m.Data
	}
	return nil
}

func (m *Indication) GetOltInd() *OltIndication {
	if x, ok := m.GetData().(*Indication_OltInd); ok {
		return x.OltInd
	}
	return nil
}

func (m *Indication) GetIntfInd() *IntfIndication {
	if x, ok := m.GetData().(*Indication_IntfInd); ok {
		return x.IntfInd
	}
	return nil
}

func (m *Indication) GetIntfOperInd() *IntfOperIndication {
	if x, ok := m.GetData().(*Indication_IntfOperInd); ok {
		return x.IntfOperInd
	}
	return nil
}

func (m *Indication) GetOnuDiscInd() *OnuDiscIndication {
	if x, ok := m.GetData().(*Indication_OnuDiscInd); ok {
		return x.OnuDiscInd
	}
	return nil
}

func (m *Indication) GetOnuInd() *OnuIndication {
	if x, ok := m.GetData().(*Indication_OnuInd); ok {
		return x.OnuInd
	}
	return nil
}

func (m *Indication) GetOmciInd() *OmciIndication {
	if x, ok := m.GetData().(*Indication_OmciInd); ok {
		return x.OmciInd
	}
	return nil
}

func (m *Indication) GetPktInd() *PacketIndication {
	if x, ok := m.GetData().(*Indication_PktInd); ok {
		return x.PktInd
	}
	return nil
}

func (m *Indication) GetPortStats() *PortStatistics {
	if x, ok := m.GetData().(*Indication_PortStats); ok {
		return x.PortStats
	}
	return nil
}

func (m *Indication) GetFlowStats() *FlowStatistics {
	if x, ok := m.GetData().(*Indication_FlowStats); ok {
		return x.FlowStats
	}
	return nil
}

func (m *Indication) GetAlarmInd() *AlarmIndication {
	if x, ok := m.GetData().(*Indication_AlarmInd); ok {
		return x.AlarmInd
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*Indication) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*Indication_OltInd)(nil),
		(*Indication_IntfInd)(nil),
		(*Indication_IntfOperInd)(nil),
		(*Indication_OnuDiscInd)(nil),
		(*Indication_OnuInd)(nil),
		(*Indication_OmciInd)(nil),
		(*Indication_PktInd)(nil),
		(*Indication_PortStats)(nil),
		(*Indication_FlowStats)(nil),
		(*Indication_AlarmInd)(nil),
	}
}

type AlarmIndication struct {
	// Types that are valid to be assigned to Data:
	//	*AlarmIndication_LosInd
	//	*AlarmIndication_DyingGaspInd
	//	*AlarmIndication_OnuAlarmInd
	//	*AlarmIndication_OnuStartupFailInd
	//	*AlarmIndication_OnuSignalDegradeInd
	//	*AlarmIndication_OnuDriftOfWindowInd
	//	*AlarmIndication_OnuLossOmciInd
	//	*AlarmIndication_OnuSignalsFailInd
	//	*AlarmIndication_OnuTiwiInd
	//	*AlarmIndication_OnuActivationFailInd
	//	*AlarmIndication_OnuProcessingErrorInd
	Data                 isAlarmIndication_Data `protobuf_oneof:"data"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *AlarmIndication) Reset()         { *m = AlarmIndication{} }
func (m *AlarmIndication) String() string { return proto.CompactTextString(m) }
func (*AlarmIndication) ProtoMessage()    {}
func (*AlarmIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{1}
}

func (m *AlarmIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AlarmIndication.Unmarshal(m, b)
}
func (m *AlarmIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AlarmIndication.Marshal(b, m, deterministic)
}
func (m *AlarmIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AlarmIndication.Merge(m, src)
}
func (m *AlarmIndication) XXX_Size() int {
	return xxx_messageInfo_AlarmIndication.Size(m)
}
func (m *AlarmIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_AlarmIndication.DiscardUnknown(m)
}

var xxx_messageInfo_AlarmIndication proto.InternalMessageInfo

type isAlarmIndication_Data interface {
	isAlarmIndication_Data()
}

type AlarmIndication_LosInd struct {
	LosInd *LosIndication `protobuf:"bytes,1,opt,name=los_ind,json=losInd,proto3,oneof"`
}

type AlarmIndication_DyingGaspInd struct {
	DyingGaspInd *DyingGaspIndication `protobuf:"bytes,2,opt,name=dying_gasp_ind,json=dyingGaspInd,proto3,oneof"`
}

type AlarmIndication_OnuAlarmInd struct {
	OnuAlarmInd *OnuAlarmIndication `protobuf:"bytes,3,opt,name=onu_alarm_ind,json=onuAlarmInd,proto3,oneof"`
}

type AlarmIndication_OnuStartupFailInd struct {
	OnuStartupFailInd *OnuStartupFailureIndication `protobuf:"bytes,4,opt,name=onu_startup_fail_ind,json=onuStartupFailInd,proto3,oneof"`
}

type AlarmIndication_OnuSignalDegradeInd struct {
	OnuSignalDegradeInd *OnuSignalDegradeIndication `protobuf:"bytes,5,opt,name=onu_signal_degrade_ind,json=onuSignalDegradeInd,proto3,oneof"`
}

type AlarmIndication_OnuDriftOfWindowInd struct {
	OnuDriftOfWindowInd *OnuDriftOfWindowIndication `protobuf:"bytes,6,opt,name=onu_drift_of_window_ind,json=onuDriftOfWindowInd,proto3,oneof"`
}

type AlarmIndication_OnuLossOmciInd struct {
	OnuLossOmciInd *OnuLossOfOmciChannelIndication `protobuf:"bytes,7,opt,name=onu_loss_omci_ind,json=onuLossOmciInd,proto3,oneof"`
}

type AlarmIndication_OnuSignalsFailInd struct {
	OnuSignalsFailInd *OnuSignalsFailureIndication `protobuf:"bytes,8,opt,name=onu_signals_fail_ind,json=onuSignalsFailInd,proto3,oneof"`
}

type AlarmIndication_OnuTiwiInd struct {
	OnuTiwiInd *OnuTransmissionInterferenceWarning `protobuf:"bytes,9,opt,name=onu_tiwi_ind,json=onuTiwiInd,proto3,oneof"`
}

type AlarmIndication_OnuActivationFailInd struct {
	OnuActivationFailInd *OnuActivationFailureIndication `protobuf:"bytes,10,opt,name=onu_activation_fail_ind,json=onuActivationFailInd,proto3,oneof"`
}

type AlarmIndication_OnuProcessingErrorInd struct {
	OnuProcessingErrorInd *OnuProcessingErrorIndication `protobuf:"bytes,11,opt,name=onu_processing_error_ind,json=onuProcessingErrorInd,proto3,oneof"`
}

func (*AlarmIndication_LosInd) isAlarmIndication_Data() {}

func (*AlarmIndication_DyingGaspInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuAlarmInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuStartupFailInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuSignalDegradeInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuDriftOfWindowInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuLossOmciInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuSignalsFailInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuTiwiInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuActivationFailInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuProcessingErrorInd) isAlarmIndication_Data() {}

func (m *AlarmIndication) GetData() isAlarmIndication_Data {
	if m != nil {
		return m.Data
	}
	return nil
}

func (m *AlarmIndication) GetLosInd() *LosIndication {
	if x, ok := m.GetData().(*AlarmIndication_LosInd); ok {
		return x.LosInd
	}
	return nil
}

func (m *AlarmIndication) GetDyingGaspInd() *DyingGaspIndication {
	if x, ok := m.GetData().(*AlarmIndication_DyingGaspInd); ok {
		return x.DyingGaspInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuAlarmInd() *OnuAlarmIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuAlarmInd); ok {
		return x.OnuAlarmInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuStartupFailInd() *OnuStartupFailureIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuStartupFailInd); ok {
		return x.OnuStartupFailInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuSignalDegradeInd() *OnuSignalDegradeIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuSignalDegradeInd); ok {
		return x.OnuSignalDegradeInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuDriftOfWindowInd() *OnuDriftOfWindowIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuDriftOfWindowInd); ok {
		return x.OnuDriftOfWindowInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuLossOmciInd() *OnuLossOfOmciChannelIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuLossOmciInd); ok {
		return x.OnuLossOmciInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuSignalsFailInd() *OnuSignalsFailureIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuSignalsFailInd); ok {
		return x.OnuSignalsFailInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuTiwiInd() *OnuTransmissionInterferenceWarning {
	if x, ok := m.GetData().(*AlarmIndication_OnuTiwiInd); ok {
		return x.OnuTiwiInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuActivationFailInd() *OnuActivationFailureIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuActivationFailInd); ok {
		return x.OnuActivationFailInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuProcessingErrorInd() *OnuProcessingErrorIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuProcessingErrorInd); ok {
		return x.OnuProcessingErrorInd
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*AlarmIndication) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*AlarmIndication_LosInd)(nil),
		(*AlarmIndication_DyingGaspInd)(nil),
		(*AlarmIndication_OnuAlarmInd)(nil),
		(*AlarmIndication_OnuStartupFailInd)(nil),
		(*AlarmIndication_OnuSignalDegradeInd)(nil),
		(*AlarmIndication_OnuDriftOfWindowInd)(nil),
		(*AlarmIndication_OnuLossOmciInd)(nil),
		(*AlarmIndication_OnuSignalsFailInd)(nil),
		(*AlarmIndication_OnuTiwiInd)(nil),
		(*AlarmIndication_OnuActivationFailInd)(nil),
		(*AlarmIndication_OnuProcessingErrorInd)(nil),
	}
}

type OltIndication struct {
	OperState            string   `protobuf:"bytes,1,opt,name=oper_state,json=operState,proto3" json:"oper_state,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OltIndication) Reset()         { *m = OltIndication{} }
func (m *OltIndication) String() string { return proto.CompactTextString(m) }
func (*OltIndication) ProtoMessage()    {}
func (*OltIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{2}
}

func (m *OltIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OltIndication.Unmarshal(m, b)
}
func (m *OltIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OltIndication.Marshal(b, m, deterministic)
}
func (m *OltIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OltIndication.Merge(m, src)
}
func (m *OltIndication) XXX_Size() int {
	return xxx_messageInfo_OltIndication.Size(m)
}
func (m *OltIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_OltIndication.DiscardUnknown(m)
}

var xxx_messageInfo_OltIndication proto.InternalMessageInfo

func (m *OltIndication) GetOperState() string {
	if m != nil {
		return m.OperState
	}
	return ""
}

type IntfIndication struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OperState            string   `protobuf:"bytes,2,opt,name=oper_state,json=operState,proto3" json:"oper_state,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *IntfIndication) Reset()         { *m = IntfIndication{} }
func (m *IntfIndication) String() string { return proto.CompactTextString(m) }
func (*IntfIndication) ProtoMessage()    {}
func (*IntfIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{3}
}

func (m *IntfIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_IntfIndication.Unmarshal(m, b)
}
func (m *IntfIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_IntfIndication.Marshal(b, m, deterministic)
}
func (m *IntfIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_IntfIndication.Merge(m, src)
}
func (m *IntfIndication) XXX_Size() int {
	return xxx_messageInfo_IntfIndication.Size(m)
}
func (m *IntfIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_IntfIndication.DiscardUnknown(m)
}

var xxx_messageInfo_IntfIndication proto.InternalMessageInfo

func (m *IntfIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *IntfIndication) GetOperState() string {
	if m != nil {
		return m.OperState
	}
	return ""
}

type OnuDiscIndication struct {
	IntfId               uint32        `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	SerialNumber         *SerialNumber `protobuf:"bytes,2,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *OnuDiscIndication) Reset()         { *m = OnuDiscIndication{} }
func (m *OnuDiscIndication) String() string { return proto.CompactTextString(m) }
func (*OnuDiscIndication) ProtoMessage()    {}
func (*OnuDiscIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{4}
}

func (m *OnuDiscIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OnuDiscIndication.Unmarshal(m, b)
}
func (m *OnuDiscIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OnuDiscIndication.Marshal(b, m, deterministic)
}
func (m *OnuDiscIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OnuDiscIndication.Merge(m, src)
}
func (m *OnuDiscIndication) XXX_Size() int {
	return xxx_messageInfo_OnuDiscIndication.Size(m)
}
func (m *OnuDiscIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_OnuDiscIndication.DiscardUnknown(m)
}

var xxx_messageInfo_OnuDiscIndication proto.InternalMessageInfo

func (m *OnuDiscIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OnuDiscIndication) GetSerialNumber() *SerialNumber {
	if m != nil {
		return m.SerialNumber
	}
	return nil
}

type OnuIndication struct {
	IntfId               uint32        `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32        `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	OperState            string        `protobuf:"bytes,3,opt,name=oper_state,json=operState,proto3" json:"oper_state,omitempty"`
	AdminState           string        `protobuf:"bytes,5,opt,name=admin_state,json=adminState,proto3" json:"admin_state,omitempty"`
	SerialNumber         *SerialNumber `protobuf:"bytes,4,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *OnuIndication) Reset()         { *m = OnuIndication{} }
func (m *OnuIndication) String() string { return proto.CompactTextString(m) }
func (*OnuIndication) ProtoMessage()    {}
func (*OnuIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{5}
}

func (m *OnuIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OnuIndication.Unmarshal(m, b)
}
func (m *OnuIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OnuIndication.Marshal(b, m, deterministic)
}
func (m *OnuIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OnuIndication.Merge(m, src)
}
func (m *OnuIndication) XXX_Size() int {
	return xxx_messageInfo_OnuIndication.Size(m)
}
func (m *OnuIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_OnuIndication.DiscardUnknown(m)
}

var xxx_messageInfo_OnuIndication proto.InternalMessageInfo

func (m *OnuIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OnuIndication) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *OnuIndication) GetOperState() string {
	if m != nil {
		return m.OperState
	}
	return ""
}

func (m *OnuIndication) GetAdminState() string {
	if m != nil {
		return m.AdminState
	}
	return ""
}

func (m *OnuIndication) GetSerialNumber() *SerialNumber {
	if m != nil {
		return m.SerialNumber
	}
	return nil
}

type IntfOperIndication struct {
	Type                 string   `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	IntfId               uint32   `protobuf:"fixed32,2,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OperState            string   `protobuf:"bytes,3,opt,name=oper_state,json=operState,proto3" json:"oper_state,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *IntfOperIndication) Reset()         { *m = IntfOperIndication{} }
func (m *IntfOperIndication) String() string { return proto.CompactTextString(m) }
func (*IntfOperIndication) ProtoMessage()    {}
func (*IntfOperIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{6}
}

func (m *IntfOperIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_IntfOperIndication.Unmarshal(m, b)
}
func (m *IntfOperIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_IntfOperIndication.Marshal(b, m, deterministic)
}
func (m *IntfOperIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_IntfOperIndication.Merge(m, src)
}
func (m *IntfOperIndication) XXX_Size() int {
	return xxx_messageInfo_IntfOperIndication.Size(m)
}
func (m *IntfOperIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_IntfOperIndication.DiscardUnknown(m)
}

var xxx_messageInfo_IntfOperIndication proto.InternalMessageInfo

func (m *IntfOperIndication) GetType() string {
	if m != nil {
		return m.Type
	}
	return ""
}

func (m *IntfOperIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *IntfOperIndication) GetOperState() string {
	if m != nil {
		return m.OperState
	}
	return ""
}

type OmciIndication struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	Pkt                  []byte   `protobuf:"bytes,3,opt,name=pkt,proto3" json:"pkt,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OmciIndication) Reset()         { *m = OmciIndication{} }
func (m *OmciIndication) String() string { return proto.CompactTextString(m) }
func (*OmciIndication) ProtoMessage()    {}
func (*OmciIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{7}
}

func (m *OmciIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OmciIndication.Unmarshal(m, b)
}
func (m *OmciIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OmciIndication.Marshal(b, m, deterministic)
}
func (m *OmciIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OmciIndication.Merge(m, src)
}
func (m *OmciIndication) XXX_Size() int {
	return xxx_messageInfo_OmciIndication.Size(m)
}
func (m *OmciIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_OmciIndication.DiscardUnknown(m)
}

var xxx_messageInfo_OmciIndication proto.InternalMessageInfo

func (m *OmciIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OmciIndication) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *OmciIndication) GetPkt() []byte {
	if m != nil {
		return m.Pkt
	}
	return nil
}

type PacketIndication struct {
	IntfType             string   `protobuf:"bytes,5,opt,name=intf_type,json=intfType,proto3" json:"intf_type,omitempty"`
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	GemportId            uint32   `protobuf:"fixed32,2,opt,name=gemport_id,json=gemportId,proto3" json:"gemport_id,omitempty"`
	FlowId               uint32   `protobuf:"fixed32,3,opt,name=flow_id,json=flowId,proto3" json:"flow_id,omitempty"`
	PortNo               uint32   `protobuf:"fixed32,6,opt,name=port_no,json=portNo,proto3" json:"port_no,omitempty"`
	Cookie               uint64   `protobuf:"fixed64,7,opt,name=cookie,proto3" json:"cookie,omitempty"`
	Pkt                  []byte   `protobuf:"bytes,4,opt,name=pkt,proto3" json:"pkt,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PacketIndication) Reset()         { *m = PacketIndication{} }
func (m *PacketIndication) String() string { return proto.CompactTextString(m) }
func (*PacketIndication) ProtoMessage()    {}
func (*PacketIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{8}
}

func (m *PacketIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PacketIndication.Unmarshal(m, b)
}
func (m *PacketIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PacketIndication.Marshal(b, m, deterministic)
}
func (m *PacketIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PacketIndication.Merge(m, src)
}
func (m *PacketIndication) XXX_Size() int {
	return xxx_messageInfo_PacketIndication.Size(m)
}
func (m *PacketIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_PacketIndication.DiscardUnknown(m)
}

var xxx_messageInfo_PacketIndication proto.InternalMessageInfo

func (m *PacketIndication) GetIntfType() string {
	if m != nil {
		return m.IntfType
	}
	return ""
}

func (m *PacketIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *PacketIndication) GetGemportId() uint32 {
	if m != nil {
		return m.GemportId
	}
	return 0
}

func (m *PacketIndication) GetFlowId() uint32 {
	if m != nil {
		return m.FlowId
	}
	return 0
}

func (m *PacketIndication) GetPortNo() uint32 {
	if m != nil {
		return m.PortNo
	}
	return 0
}

func (m *PacketIndication) GetCookie() uint64 {
	if m != nil {
		return m.Cookie
	}
	return 0
}

func (m *PacketIndication) GetPkt() []byte {
	if m != nil {
		return m.Pkt
	}
	return nil
}

type Interface struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Interface) Reset()         { *m = Interface{} }
func (m *Interface) String() string { return proto.CompactTextString(m) }
func (*Interface) ProtoMessage()    {}
func (*Interface) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{9}
}

func (m *Interface) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Interface.Unmarshal(m, b)
}
func (m *Interface) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Interface.Marshal(b, m, deterministic)
}
func (m *Interface) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Interface.Merge(m, src)
}
func (m *Interface) XXX_Size() int {
	return xxx_messageInfo_Interface.Size(m)
}
func (m *Interface) XXX_DiscardUnknown() {
	xxx_messageInfo_Interface.DiscardUnknown(m)
}

var xxx_messageInfo_Interface proto.InternalMessageInfo

func (m *Interface) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

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_c072e7aa0dfd74d5, []int{10}
}

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 Onu struct {
	IntfId               uint32        `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32        `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	SerialNumber         *SerialNumber `protobuf:"bytes,3,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"`
	Pir                  uint32        `protobuf:"fixed32,4,opt,name=pir,proto3" json:"pir,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *Onu) Reset()         { *m = Onu{} }
func (m *Onu) String() string { return proto.CompactTextString(m) }
func (*Onu) ProtoMessage()    {}
func (*Onu) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{11}
}

func (m *Onu) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Onu.Unmarshal(m, b)
}
func (m *Onu) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Onu.Marshal(b, m, deterministic)
}
func (m *Onu) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Onu.Merge(m, src)
}
func (m *Onu) XXX_Size() int {
	return xxx_messageInfo_Onu.Size(m)
}
func (m *Onu) XXX_DiscardUnknown() {
	xxx_messageInfo_Onu.DiscardUnknown(m)
}

var xxx_messageInfo_Onu proto.InternalMessageInfo

func (m *Onu) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *Onu) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *Onu) GetSerialNumber() *SerialNumber {
	if m != nil {
		return m.SerialNumber
	}
	return nil
}

func (m *Onu) GetPir() uint32 {
	if m != nil {
		return m.Pir
	}
	return 0
}

type OmciMsg struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	Pkt                  []byte   `protobuf:"bytes,3,opt,name=pkt,proto3" json:"pkt,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OmciMsg) Reset()         { *m = OmciMsg{} }
func (m *OmciMsg) String() string { return proto.CompactTextString(m) }
func (*OmciMsg) ProtoMessage()    {}
func (*OmciMsg) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{12}
}

func (m *OmciMsg) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OmciMsg.Unmarshal(m, b)
}
func (m *OmciMsg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OmciMsg.Marshal(b, m, deterministic)
}
func (m *OmciMsg) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OmciMsg.Merge(m, src)
}
func (m *OmciMsg) XXX_Size() int {
	return xxx_messageInfo_OmciMsg.Size(m)
}
func (m *OmciMsg) XXX_DiscardUnknown() {
	xxx_messageInfo_OmciMsg.DiscardUnknown(m)
}

var xxx_messageInfo_OmciMsg proto.InternalMessageInfo

func (m *OmciMsg) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OmciMsg) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *OmciMsg) GetPkt() []byte {
	if m != nil {
		return m.Pkt
	}
	return nil
}

type OnuPacket struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	PortNo               uint32   `protobuf:"fixed32,4,opt,name=port_no,json=portNo,proto3" json:"port_no,omitempty"`
	GemportId            uint32   `protobuf:"fixed32,5,opt,name=gemport_id,json=gemportId,proto3" json:"gemport_id,omitempty"`
	Pkt                  []byte   `protobuf:"bytes,3,opt,name=pkt,proto3" json:"pkt,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OnuPacket) Reset()         { *m = OnuPacket{} }
func (m *OnuPacket) String() string { return proto.CompactTextString(m) }
func (*OnuPacket) ProtoMessage()    {}
func (*OnuPacket) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{13}
}

func (m *OnuPacket) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OnuPacket.Unmarshal(m, b)
}
func (m *OnuPacket) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OnuPacket.Marshal(b, m, deterministic)
}
func (m *OnuPacket) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OnuPacket.Merge(m, src)
}
func (m *OnuPacket) XXX_Size() int {
	return xxx_messageInfo_OnuPacket.Size(m)
}
func (m *OnuPacket) XXX_DiscardUnknown() {
	xxx_messageInfo_OnuPacket.DiscardUnknown(m)
}

var xxx_messageInfo_OnuPacket proto.InternalMessageInfo

func (m *OnuPacket) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OnuPacket) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *OnuPacket) GetPortNo() uint32 {
	if m != nil {
		return m.PortNo
	}
	return 0
}

func (m *OnuPacket) GetGemportId() uint32 {
	if m != nil {
		return m.GemportId
	}
	return 0
}

func (m *OnuPacket) GetPkt() []byte {
	if m != nil {
		return m.Pkt
	}
	return nil
}

type UplinkPacket struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	Pkt                  []byte   `protobuf:"bytes,2,opt,name=pkt,proto3" json:"pkt,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UplinkPacket) Reset()         { *m = UplinkPacket{} }
func (m *UplinkPacket) String() string { return proto.CompactTextString(m) }
func (*UplinkPacket) ProtoMessage()    {}
func (*UplinkPacket) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{14}
}

func (m *UplinkPacket) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UplinkPacket.Unmarshal(m, b)
}
func (m *UplinkPacket) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UplinkPacket.Marshal(b, m, deterministic)
}
func (m *UplinkPacket) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UplinkPacket.Merge(m, src)
}
func (m *UplinkPacket) XXX_Size() int {
	return xxx_messageInfo_UplinkPacket.Size(m)
}
func (m *UplinkPacket) XXX_DiscardUnknown() {
	xxx_messageInfo_UplinkPacket.DiscardUnknown(m)
}

var xxx_messageInfo_UplinkPacket proto.InternalMessageInfo

func (m *UplinkPacket) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *UplinkPacket) GetPkt() []byte {
	if m != nil {
		return m.Pkt
	}
	return nil
}

type DeviceInfo struct {
	Vendor             string `protobuf:"bytes,1,opt,name=vendor,proto3" json:"vendor,omitempty"`
	Model              string `protobuf:"bytes,2,opt,name=model,proto3" json:"model,omitempty"`
	HardwareVersion    string `protobuf:"bytes,3,opt,name=hardware_version,json=hardwareVersion,proto3" json:"hardware_version,omitempty"`
	FirmwareVersion    string `protobuf:"bytes,4,opt,name=firmware_version,json=firmwareVersion,proto3" json:"firmware_version,omitempty"`
	DeviceId           string `protobuf:"bytes,16,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
	DeviceSerialNumber string `protobuf:"bytes,17,opt,name=device_serial_number,json=deviceSerialNumber,proto3" json:"device_serial_number,omitempty"`
	// Total number of pon intf ports on the device
	PonPorts uint32 `protobuf:"fixed32,12,opt,name=pon_ports,json=ponPorts,proto3" json:"pon_ports,omitempty"`
	// If using global per-device technology profile. To be deprecated
	Technology           string                             `protobuf:"bytes,5,opt,name=technology,proto3" json:"technology,omitempty"`
	OnuIdStart           uint32                             `protobuf:"fixed32,6,opt,name=onu_id_start,json=onuIdStart,proto3" json:"onu_id_start,omitempty"`
	OnuIdEnd             uint32                             `protobuf:"fixed32,7,opt,name=onu_id_end,json=onuIdEnd,proto3" json:"onu_id_end,omitempty"`
	AllocIdStart         uint32                             `protobuf:"fixed32,8,opt,name=alloc_id_start,json=allocIdStart,proto3" json:"alloc_id_start,omitempty"`
	AllocIdEnd           uint32                             `protobuf:"fixed32,9,opt,name=alloc_id_end,json=allocIdEnd,proto3" json:"alloc_id_end,omitempty"`
	GemportIdStart       uint32                             `protobuf:"fixed32,10,opt,name=gemport_id_start,json=gemportIdStart,proto3" json:"gemport_id_start,omitempty"`
	GemportIdEnd         uint32                             `protobuf:"fixed32,11,opt,name=gemport_id_end,json=gemportIdEnd,proto3" json:"gemport_id_end,omitempty"`
	FlowIdStart          uint32                             `protobuf:"fixed32,13,opt,name=flow_id_start,json=flowIdStart,proto3" json:"flow_id_start,omitempty"`
	FlowIdEnd            uint32                             `protobuf:"fixed32,14,opt,name=flow_id_end,json=flowIdEnd,proto3" json:"flow_id_end,omitempty"`
	Ranges               []*DeviceInfo_DeviceResourceRanges `protobuf:"bytes,15,rep,name=ranges,proto3" json:"ranges,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                           `json:"-"`
	XXX_unrecognized     []byte                             `json:"-"`
	XXX_sizecache        int32                              `json:"-"`
}

func (m *DeviceInfo) Reset()         { *m = DeviceInfo{} }
func (m *DeviceInfo) String() string { return proto.CompactTextString(m) }
func (*DeviceInfo) ProtoMessage()    {}
func (*DeviceInfo) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{15}
}

func (m *DeviceInfo) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeviceInfo.Unmarshal(m, b)
}
func (m *DeviceInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeviceInfo.Marshal(b, m, deterministic)
}
func (m *DeviceInfo) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeviceInfo.Merge(m, src)
}
func (m *DeviceInfo) XXX_Size() int {
	return xxx_messageInfo_DeviceInfo.Size(m)
}
func (m *DeviceInfo) XXX_DiscardUnknown() {
	xxx_messageInfo_DeviceInfo.DiscardUnknown(m)
}

var xxx_messageInfo_DeviceInfo proto.InternalMessageInfo

func (m *DeviceInfo) GetVendor() string {
	if m != nil {
		return m.Vendor
	}
	return ""
}

func (m *DeviceInfo) GetModel() string {
	if m != nil {
		return m.Model
	}
	return ""
}

func (m *DeviceInfo) GetHardwareVersion() string {
	if m != nil {
		return m.HardwareVersion
	}
	return ""
}

func (m *DeviceInfo) GetFirmwareVersion() string {
	if m != nil {
		return m.FirmwareVersion
	}
	return ""
}

func (m *DeviceInfo) GetDeviceId() string {
	if m != nil {
		return m.DeviceId
	}
	return ""
}

func (m *DeviceInfo) GetDeviceSerialNumber() string {
	if m != nil {
		return m.DeviceSerialNumber
	}
	return ""
}

func (m *DeviceInfo) GetPonPorts() uint32 {
	if m != nil {
		return m.PonPorts
	}
	return 0
}

func (m *DeviceInfo) GetTechnology() string {
	if m != nil {
		return m.Technology
	}
	return ""
}

func (m *DeviceInfo) GetOnuIdStart() uint32 {
	if m != nil {
		return m.OnuIdStart
	}
	return 0
}

func (m *DeviceInfo) GetOnuIdEnd() uint32 {
	if m != nil {
		return m.OnuIdEnd
	}
	return 0
}

func (m *DeviceInfo) GetAllocIdStart() uint32 {
	if m != nil {
		return m.AllocIdStart
	}
	return 0
}

func (m *DeviceInfo) GetAllocIdEnd() uint32 {
	if m != nil {
		return m.AllocIdEnd
	}
	return 0
}

func (m *DeviceInfo) GetGemportIdStart() uint32 {
	if m != nil {
		return m.GemportIdStart
	}
	return 0
}

func (m *DeviceInfo) GetGemportIdEnd() uint32 {
	if m != nil {
		return m.GemportIdEnd
	}
	return 0
}

func (m *DeviceInfo) GetFlowIdStart() uint32 {
	if m != nil {
		return m.FlowIdStart
	}
	return 0
}

func (m *DeviceInfo) GetFlowIdEnd() uint32 {
	if m != nil {
		return m.FlowIdEnd
	}
	return 0
}

func (m *DeviceInfo) GetRanges() []*DeviceInfo_DeviceResourceRanges {
	if m != nil {
		return m.Ranges
	}
	return nil
}

type DeviceInfo_DeviceResourceRanges struct {
	// List of 0 or more intf_ids that use the same technology and pools.
	// If 0 intf_ids supplied, it implies ALL interfaces
	IntfIds []uint32 `protobuf:"fixed32,1,rep,packed,name=intf_ids,json=intfIds,proto3" json:"intf_ids,omitempty"`
	// Technology profile for this pool
	Technology           string                                  `protobuf:"bytes,2,opt,name=technology,proto3" json:"technology,omitempty"`
	Pools                []*DeviceInfo_DeviceResourceRanges_Pool `protobuf:"bytes,3,rep,name=pools,proto3" json:"pools,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                                `json:"-"`
	XXX_unrecognized     []byte                                  `json:"-"`
	XXX_sizecache        int32                                   `json:"-"`
}

func (m *DeviceInfo_DeviceResourceRanges) Reset()         { *m = DeviceInfo_DeviceResourceRanges{} }
func (m *DeviceInfo_DeviceResourceRanges) String() string { return proto.CompactTextString(m) }
func (*DeviceInfo_DeviceResourceRanges) ProtoMessage()    {}
func (*DeviceInfo_DeviceResourceRanges) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{15, 0}
}

func (m *DeviceInfo_DeviceResourceRanges) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeviceInfo_DeviceResourceRanges.Unmarshal(m, b)
}
func (m *DeviceInfo_DeviceResourceRanges) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeviceInfo_DeviceResourceRanges.Marshal(b, m, deterministic)
}
func (m *DeviceInfo_DeviceResourceRanges) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeviceInfo_DeviceResourceRanges.Merge(m, src)
}
func (m *DeviceInfo_DeviceResourceRanges) XXX_Size() int {
	return xxx_messageInfo_DeviceInfo_DeviceResourceRanges.Size(m)
}
func (m *DeviceInfo_DeviceResourceRanges) XXX_DiscardUnknown() {
	xxx_messageInfo_DeviceInfo_DeviceResourceRanges.DiscardUnknown(m)
}

var xxx_messageInfo_DeviceInfo_DeviceResourceRanges proto.InternalMessageInfo

func (m *DeviceInfo_DeviceResourceRanges) GetIntfIds() []uint32 {
	if m != nil {
		return m.IntfIds
	}
	return nil
}

func (m *DeviceInfo_DeviceResourceRanges) GetTechnology() string {
	if m != nil {
		return m.Technology
	}
	return ""
}

func (m *DeviceInfo_DeviceResourceRanges) GetPools() []*DeviceInfo_DeviceResourceRanges_Pool {
	if m != nil {
		return m.Pools
	}
	return nil
}

type DeviceInfo_DeviceResourceRanges_Pool struct {
	Type                 DeviceInfo_DeviceResourceRanges_Pool_PoolType    `protobuf:"varint,1,opt,name=type,proto3,enum=openolt.DeviceInfo_DeviceResourceRanges_Pool_PoolType" json:"type,omitempty"`
	Sharing              DeviceInfo_DeviceResourceRanges_Pool_SharingType `protobuf:"varint,2,opt,name=sharing,proto3,enum=openolt.DeviceInfo_DeviceResourceRanges_Pool_SharingType" json:"sharing,omitempty"`
	Start                uint32                                           `protobuf:"fixed32,3,opt,name=start,proto3" json:"start,omitempty"`
	End                  uint32                                           `protobuf:"fixed32,4,opt,name=end,proto3" json:"end,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                                         `json:"-"`
	XXX_unrecognized     []byte                                           `json:"-"`
	XXX_sizecache        int32                                            `json:"-"`
}

func (m *DeviceInfo_DeviceResourceRanges_Pool) Reset()         { *m = DeviceInfo_DeviceResourceRanges_Pool{} }
func (m *DeviceInfo_DeviceResourceRanges_Pool) String() string { return proto.CompactTextString(m) }
func (*DeviceInfo_DeviceResourceRanges_Pool) ProtoMessage()    {}
func (*DeviceInfo_DeviceResourceRanges_Pool) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{15, 0, 0}
}

func (m *DeviceInfo_DeviceResourceRanges_Pool) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeviceInfo_DeviceResourceRanges_Pool.Unmarshal(m, b)
}
func (m *DeviceInfo_DeviceResourceRanges_Pool) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeviceInfo_DeviceResourceRanges_Pool.Marshal(b, m, deterministic)
}
func (m *DeviceInfo_DeviceResourceRanges_Pool) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeviceInfo_DeviceResourceRanges_Pool.Merge(m, src)
}
func (m *DeviceInfo_DeviceResourceRanges_Pool) XXX_Size() int {
	return xxx_messageInfo_DeviceInfo_DeviceResourceRanges_Pool.Size(m)
}
func (m *DeviceInfo_DeviceResourceRanges_Pool) XXX_DiscardUnknown() {
	xxx_messageInfo_DeviceInfo_DeviceResourceRanges_Pool.DiscardUnknown(m)
}

var xxx_messageInfo_DeviceInfo_DeviceResourceRanges_Pool proto.InternalMessageInfo

func (m *DeviceInfo_DeviceResourceRanges_Pool) GetType() DeviceInfo_DeviceResourceRanges_Pool_PoolType {
	if m != nil {
		return m.Type
	}
	return DeviceInfo_DeviceResourceRanges_Pool_ONU_ID
}

func (m *DeviceInfo_DeviceResourceRanges_Pool) GetSharing() DeviceInfo_DeviceResourceRanges_Pool_SharingType {
	if m != nil {
		return m.Sharing
	}
	return DeviceInfo_DeviceResourceRanges_Pool_DEDICATED_PER_INTF
}

func (m *DeviceInfo_DeviceResourceRanges_Pool) GetStart() uint32 {
	if m != nil {
		return m.Start
	}
	return 0
}

func (m *DeviceInfo_DeviceResourceRanges_Pool) GetEnd() uint32 {
	if m != nil {
		return m.End
	}
	return 0
}

type Classifier struct {
	OTpid                uint32   `protobuf:"fixed32,1,opt,name=o_tpid,json=oTpid,proto3" json:"o_tpid,omitempty"`
	OVid                 uint32   `protobuf:"fixed32,2,opt,name=o_vid,json=oVid,proto3" json:"o_vid,omitempty"`
	ITpid                uint32   `protobuf:"fixed32,3,opt,name=i_tpid,json=iTpid,proto3" json:"i_tpid,omitempty"`
	IVid                 uint32   `protobuf:"fixed32,4,opt,name=i_vid,json=iVid,proto3" json:"i_vid,omitempty"`
	OPbits               uint32   `protobuf:"fixed32,5,opt,name=o_pbits,json=oPbits,proto3" json:"o_pbits,omitempty"`
	IPbits               uint32   `protobuf:"fixed32,6,opt,name=i_pbits,json=iPbits,proto3" json:"i_pbits,omitempty"`
	EthType              uint32   `protobuf:"fixed32,7,opt,name=eth_type,json=ethType,proto3" json:"eth_type,omitempty"`
	DstMac               []byte   `protobuf:"bytes,8,opt,name=dst_mac,json=dstMac,proto3" json:"dst_mac,omitempty"`
	SrcMac               []byte   `protobuf:"bytes,9,opt,name=src_mac,json=srcMac,proto3" json:"src_mac,omitempty"`
	IpProto              uint32   `protobuf:"fixed32,10,opt,name=ip_proto,json=ipProto,proto3" json:"ip_proto,omitempty"`
	DstIp                uint32   `protobuf:"fixed32,11,opt,name=dst_ip,json=dstIp,proto3" json:"dst_ip,omitempty"`
	SrcIp                uint32   `protobuf:"fixed32,12,opt,name=src_ip,json=srcIp,proto3" json:"src_ip,omitempty"`
	SrcPort              uint32   `protobuf:"fixed32,13,opt,name=src_port,json=srcPort,proto3" json:"src_port,omitempty"`
	DstPort              uint32   `protobuf:"fixed32,14,opt,name=dst_port,json=dstPort,proto3" json:"dst_port,omitempty"`
	PktTagType           string   `protobuf:"bytes,15,opt,name=pkt_tag_type,json=pktTagType,proto3" json:"pkt_tag_type,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Classifier) Reset()         { *m = Classifier{} }
func (m *Classifier) String() string { return proto.CompactTextString(m) }
func (*Classifier) ProtoMessage()    {}
func (*Classifier) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{16}
}

func (m *Classifier) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Classifier.Unmarshal(m, b)
}
func (m *Classifier) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Classifier.Marshal(b, m, deterministic)
}
func (m *Classifier) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Classifier.Merge(m, src)
}
func (m *Classifier) XXX_Size() int {
	return xxx_messageInfo_Classifier.Size(m)
}
func (m *Classifier) XXX_DiscardUnknown() {
	xxx_messageInfo_Classifier.DiscardUnknown(m)
}

var xxx_messageInfo_Classifier proto.InternalMessageInfo

func (m *Classifier) GetOTpid() uint32 {
	if m != nil {
		return m.OTpid
	}
	return 0
}

func (m *Classifier) GetOVid() uint32 {
	if m != nil {
		return m.OVid
	}
	return 0
}

func (m *Classifier) GetITpid() uint32 {
	if m != nil {
		return m.ITpid
	}
	return 0
}

func (m *Classifier) GetIVid() uint32 {
	if m != nil {
		return m.IVid
	}
	return 0
}

func (m *Classifier) GetOPbits() uint32 {
	if m != nil {
		return m.OPbits
	}
	return 0
}

func (m *Classifier) GetIPbits() uint32 {
	if m != nil {
		return m.IPbits
	}
	return 0
}

func (m *Classifier) GetEthType() uint32 {
	if m != nil {
		return m.EthType
	}
	return 0
}

func (m *Classifier) GetDstMac() []byte {
	if m != nil {
		return m.DstMac
	}
	return nil
}

func (m *Classifier) GetSrcMac() []byte {
	if m != nil {
		return m.SrcMac
	}
	return nil
}

func (m *Classifier) GetIpProto() uint32 {
	if m != nil {
		return m.IpProto
	}
	return 0
}

func (m *Classifier) GetDstIp() uint32 {
	if m != nil {
		return m.DstIp
	}
	return 0
}

func (m *Classifier) GetSrcIp() uint32 {
	if m != nil {
		return m.SrcIp
	}
	return 0
}

func (m *Classifier) GetSrcPort() uint32 {
	if m != nil {
		return m.SrcPort
	}
	return 0
}

func (m *Classifier) GetDstPort() uint32 {
	if m != nil {
		return m.DstPort
	}
	return 0
}

func (m *Classifier) GetPktTagType() string {
	if m != nil {
		return m.PktTagType
	}
	return ""
}

type ActionCmd struct {
	AddOuterTag          bool     `protobuf:"varint,1,opt,name=add_outer_tag,json=addOuterTag,proto3" json:"add_outer_tag,omitempty"`
	RemoveOuterTag       bool     `protobuf:"varint,2,opt,name=remove_outer_tag,json=removeOuterTag,proto3" json:"remove_outer_tag,omitempty"`
	TrapToHost           bool     `protobuf:"varint,3,opt,name=trap_to_host,json=trapToHost,proto3" json:"trap_to_host,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ActionCmd) Reset()         { *m = ActionCmd{} }
func (m *ActionCmd) String() string { return proto.CompactTextString(m) }
func (*ActionCmd) ProtoMessage()    {}
func (*ActionCmd) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{17}
}

func (m *ActionCmd) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ActionCmd.Unmarshal(m, b)
}
func (m *ActionCmd) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ActionCmd.Marshal(b, m, deterministic)
}
func (m *ActionCmd) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ActionCmd.Merge(m, src)
}
func (m *ActionCmd) XXX_Size() int {
	return xxx_messageInfo_ActionCmd.Size(m)
}
func (m *ActionCmd) XXX_DiscardUnknown() {
	xxx_messageInfo_ActionCmd.DiscardUnknown(m)
}

var xxx_messageInfo_ActionCmd proto.InternalMessageInfo

func (m *ActionCmd) GetAddOuterTag() bool {
	if m != nil {
		return m.AddOuterTag
	}
	return false
}

func (m *ActionCmd) GetRemoveOuterTag() bool {
	if m != nil {
		return m.RemoveOuterTag
	}
	return false
}

func (m *ActionCmd) GetTrapToHost() bool {
	if m != nil {
		return m.TrapToHost
	}
	return false
}

type Action struct {
	Cmd                  *ActionCmd `protobuf:"bytes,1,opt,name=cmd,proto3" json:"cmd,omitempty"`
	OVid                 uint32     `protobuf:"fixed32,2,opt,name=o_vid,json=oVid,proto3" json:"o_vid,omitempty"`
	OPbits               uint32     `protobuf:"fixed32,3,opt,name=o_pbits,json=oPbits,proto3" json:"o_pbits,omitempty"`
	OTpid                uint32     `protobuf:"fixed32,4,opt,name=o_tpid,json=oTpid,proto3" json:"o_tpid,omitempty"`
	IVid                 uint32     `protobuf:"fixed32,5,opt,name=i_vid,json=iVid,proto3" json:"i_vid,omitempty"`
	IPbits               uint32     `protobuf:"fixed32,6,opt,name=i_pbits,json=iPbits,proto3" json:"i_pbits,omitempty"`
	ITpid                uint32     `protobuf:"fixed32,7,opt,name=i_tpid,json=iTpid,proto3" json:"i_tpid,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *Action) Reset()         { *m = Action{} }
func (m *Action) String() string { return proto.CompactTextString(m) }
func (*Action) ProtoMessage()    {}
func (*Action) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{18}
}

func (m *Action) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Action.Unmarshal(m, b)
}
func (m *Action) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Action.Marshal(b, m, deterministic)
}
func (m *Action) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Action.Merge(m, src)
}
func (m *Action) XXX_Size() int {
	return xxx_messageInfo_Action.Size(m)
}
func (m *Action) XXX_DiscardUnknown() {
	xxx_messageInfo_Action.DiscardUnknown(m)
}

var xxx_messageInfo_Action proto.InternalMessageInfo

func (m *Action) GetCmd() *ActionCmd {
	if m != nil {
		return m.Cmd
	}
	return nil
}

func (m *Action) GetOVid() uint32 {
	if m != nil {
		return m.OVid
	}
	return 0
}

func (m *Action) GetOPbits() uint32 {
	if m != nil {
		return m.OPbits
	}
	return 0
}

func (m *Action) GetOTpid() uint32 {
	if m != nil {
		return m.OTpid
	}
	return 0
}

func (m *Action) GetIVid() uint32 {
	if m != nil {
		return m.IVid
	}
	return 0
}

func (m *Action) GetIPbits() uint32 {
	if m != nil {
		return m.IPbits
	}
	return 0
}

func (m *Action) GetITpid() uint32 {
	if m != nil {
		return m.ITpid
	}
	return 0
}

type Flow struct {
	AccessIntfId         int32       `protobuf:"fixed32,1,opt,name=access_intf_id,json=accessIntfId,proto3" json:"access_intf_id,omitempty"`
	OnuId                int32       `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	UniId                int32       `protobuf:"fixed32,11,opt,name=uni_id,json=uniId,proto3" json:"uni_id,omitempty"`
	FlowId               uint32      `protobuf:"fixed32,3,opt,name=flow_id,json=flowId,proto3" json:"flow_id,omitempty"`
	FlowType             string      `protobuf:"bytes,4,opt,name=flow_type,json=flowType,proto3" json:"flow_type,omitempty"`
	AllocId              int32       `protobuf:"fixed32,10,opt,name=alloc_id,json=allocId,proto3" json:"alloc_id,omitempty"`
	NetworkIntfId        int32       `protobuf:"fixed32,5,opt,name=network_intf_id,json=networkIntfId,proto3" json:"network_intf_id,omitempty"`
	GemportId            int32       `protobuf:"fixed32,6,opt,name=gemport_id,json=gemportId,proto3" json:"gemport_id,omitempty"`
	Classifier           *Classifier `protobuf:"bytes,7,opt,name=classifier,proto3" json:"classifier,omitempty"`
	Action               *Action     `protobuf:"bytes,8,opt,name=action,proto3" json:"action,omitempty"`
	Priority             int32       `protobuf:"fixed32,9,opt,name=priority,proto3" json:"priority,omitempty"`
	Cookie               uint64      `protobuf:"fixed64,12,opt,name=cookie,proto3" json:"cookie,omitempty"`
	PortNo               uint32      `protobuf:"fixed32,13,opt,name=port_no,json=portNo,proto3" json:"port_no,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *Flow) Reset()         { *m = Flow{} }
func (m *Flow) String() string { return proto.CompactTextString(m) }
func (*Flow) ProtoMessage()    {}
func (*Flow) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{19}
}

func (m *Flow) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Flow.Unmarshal(m, b)
}
func (m *Flow) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Flow.Marshal(b, m, deterministic)
}
func (m *Flow) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Flow.Merge(m, src)
}
func (m *Flow) XXX_Size() int {
	return xxx_messageInfo_Flow.Size(m)
}
func (m *Flow) XXX_DiscardUnknown() {
	xxx_messageInfo_Flow.DiscardUnknown(m)
}

var xxx_messageInfo_Flow proto.InternalMessageInfo

func (m *Flow) GetAccessIntfId() int32 {
	if m != nil {
		return m.AccessIntfId
	}
	return 0
}

func (m *Flow) GetOnuId() int32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *Flow) GetUniId() int32 {
	if m != nil {
		return m.UniId
	}
	return 0
}

func (m *Flow) GetFlowId() uint32 {
	if m != nil {
		return m.FlowId
	}
	return 0
}

func (m *Flow) GetFlowType() string {
	if m != nil {
		return m.FlowType
	}
	return ""
}

func (m *Flow) GetAllocId() int32 {
	if m != nil {
		return m.AllocId
	}
	return 0
}

func (m *Flow) GetNetworkIntfId() int32 {
	if m != nil {
		return m.NetworkIntfId
	}
	return 0
}

func (m *Flow) GetGemportId() int32 {
	if m != nil {
		return m.GemportId
	}
	return 0
}

func (m *Flow) GetClassifier() *Classifier {
	if m != nil {
		return m.Classifier
	}
	return nil
}

func (m *Flow) GetAction() *Action {
	if m != nil {
		return m.Action
	}
	return nil
}

func (m *Flow) GetPriority() int32 {
	if m != nil {
		return m.Priority
	}
	return 0
}

func (m *Flow) GetCookie() uint64 {
	if m != nil {
		return m.Cookie
	}
	return 0
}

func (m *Flow) GetPortNo() uint32 {
	if m != nil {
		return m.PortNo
	}
	return 0
}

type SerialNumber struct {
	VendorId             []byte   `protobuf:"bytes,1,opt,name=vendor_id,json=vendorId,proto3" json:"vendor_id,omitempty"`
	VendorSpecific       []byte   `protobuf:"bytes,2,opt,name=vendor_specific,json=vendorSpecific,proto3" json:"vendor_specific,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SerialNumber) Reset()         { *m = SerialNumber{} }
func (m *SerialNumber) String() string { return proto.CompactTextString(m) }
func (*SerialNumber) ProtoMessage()    {}
func (*SerialNumber) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{20}
}

func (m *SerialNumber) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SerialNumber.Unmarshal(m, b)
}
func (m *SerialNumber) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SerialNumber.Marshal(b, m, deterministic)
}
func (m *SerialNumber) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SerialNumber.Merge(m, src)
}
func (m *SerialNumber) XXX_Size() int {
	return xxx_messageInfo_SerialNumber.Size(m)
}
func (m *SerialNumber) XXX_DiscardUnknown() {
	xxx_messageInfo_SerialNumber.DiscardUnknown(m)
}

var xxx_messageInfo_SerialNumber proto.InternalMessageInfo

func (m *SerialNumber) GetVendorId() []byte {
	if m != nil {
		return m.VendorId
	}
	return nil
}

func (m *SerialNumber) GetVendorSpecific() []byte {
	if m != nil {
		return m.VendorSpecific
	}
	return nil
}

type PortStatistics struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	RxBytes              uint64   `protobuf:"fixed64,2,opt,name=rx_bytes,json=rxBytes,proto3" json:"rx_bytes,omitempty"`
	RxPackets            uint64   `protobuf:"fixed64,3,opt,name=rx_packets,json=rxPackets,proto3" json:"rx_packets,omitempty"`
	RxUcastPackets       uint64   `protobuf:"fixed64,4,opt,name=rx_ucast_packets,json=rxUcastPackets,proto3" json:"rx_ucast_packets,omitempty"`
	RxMcastPackets       uint64   `protobuf:"fixed64,5,opt,name=rx_mcast_packets,json=rxMcastPackets,proto3" json:"rx_mcast_packets,omitempty"`
	RxBcastPackets       uint64   `protobuf:"fixed64,6,opt,name=rx_bcast_packets,json=rxBcastPackets,proto3" json:"rx_bcast_packets,omitempty"`
	RxErrorPackets       uint64   `protobuf:"fixed64,7,opt,name=rx_error_packets,json=rxErrorPackets,proto3" json:"rx_error_packets,omitempty"`
	TxBytes              uint64   `protobuf:"fixed64,8,opt,name=tx_bytes,json=txBytes,proto3" json:"tx_bytes,omitempty"`
	TxPackets            uint64   `protobuf:"fixed64,9,opt,name=tx_packets,json=txPackets,proto3" json:"tx_packets,omitempty"`
	TxUcastPackets       uint64   `protobuf:"fixed64,10,opt,name=tx_ucast_packets,json=txUcastPackets,proto3" json:"tx_ucast_packets,omitempty"`
	TxMcastPackets       uint64   `protobuf:"fixed64,11,opt,name=tx_mcast_packets,json=txMcastPackets,proto3" json:"tx_mcast_packets,omitempty"`
	TxBcastPackets       uint64   `protobuf:"fixed64,12,opt,name=tx_bcast_packets,json=txBcastPackets,proto3" json:"tx_bcast_packets,omitempty"`
	TxErrorPackets       uint64   `protobuf:"fixed64,13,opt,name=tx_error_packets,json=txErrorPackets,proto3" json:"tx_error_packets,omitempty"`
	RxCrcErrors          uint64   `protobuf:"fixed64,14,opt,name=rx_crc_errors,json=rxCrcErrors,proto3" json:"rx_crc_errors,omitempty"`
	BipErrors            uint64   `protobuf:"fixed64,15,opt,name=bip_errors,json=bipErrors,proto3" json:"bip_errors,omitempty"`
	Timestamp            uint32   `protobuf:"fixed32,16,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PortStatistics) Reset()         { *m = PortStatistics{} }
func (m *PortStatistics) String() string { return proto.CompactTextString(m) }
func (*PortStatistics) ProtoMessage()    {}
func (*PortStatistics) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{21}
}

func (m *PortStatistics) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PortStatistics.Unmarshal(m, b)
}
func (m *PortStatistics) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PortStatistics.Marshal(b, m, deterministic)
}
func (m *PortStatistics) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PortStatistics.Merge(m, src)
}
func (m *PortStatistics) XXX_Size() int {
	return xxx_messageInfo_PortStatistics.Size(m)
}
func (m *PortStatistics) XXX_DiscardUnknown() {
	xxx_messageInfo_PortStatistics.DiscardUnknown(m)
}

var xxx_messageInfo_PortStatistics proto.InternalMessageInfo

func (m *PortStatistics) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *PortStatistics) GetRxBytes() uint64 {
	if m != nil {
		return m.RxBytes
	}
	return 0
}

func (m *PortStatistics) GetRxPackets() uint64 {
	if m != nil {
		return m.RxPackets
	}
	return 0
}

func (m *PortStatistics) GetRxUcastPackets() uint64 {
	if m != nil {
		return m.RxUcastPackets
	}
	return 0
}

func (m *PortStatistics) GetRxMcastPackets() uint64 {
	if m != nil {
		return m.RxMcastPackets
	}
	return 0
}

func (m *PortStatistics) GetRxBcastPackets() uint64 {
	if m != nil {
		return m.RxBcastPackets
	}
	return 0
}

func (m *PortStatistics) GetRxErrorPackets() uint64 {
	if m != nil {
		return m.RxErrorPackets
	}
	return 0
}

func (m *PortStatistics) GetTxBytes() uint64 {
	if m != nil {
		return m.TxBytes
	}
	return 0
}

func (m *PortStatistics) GetTxPackets() uint64 {
	if m != nil {
		return m.TxPackets
	}
	return 0
}

func (m *PortStatistics) GetTxUcastPackets() uint64 {
	if m != nil {
		return m.TxUcastPackets
	}
	return 0
}

func (m *PortStatistics) GetTxMcastPackets() uint64 {
	if m != nil {
		return m.TxMcastPackets
	}
	return 0
}

func (m *PortStatistics) GetTxBcastPackets() uint64 {
	if m != nil {
		return m.TxBcastPackets
	}
	return 0
}

func (m *PortStatistics) GetTxErrorPackets() uint64 {
	if m != nil {
		return m.TxErrorPackets
	}
	return 0
}

func (m *PortStatistics) GetRxCrcErrors() uint64 {
	if m != nil {
		return m.RxCrcErrors
	}
	return 0
}

func (m *PortStatistics) GetBipErrors() uint64 {
	if m != nil {
		return m.BipErrors
	}
	return 0
}

func (m *PortStatistics) GetTimestamp() uint32 {
	if m != nil {
		return m.Timestamp
	}
	return 0
}

type FlowStatistics struct {
	FlowId               uint32   `protobuf:"fixed32,1,opt,name=flow_id,json=flowId,proto3" json:"flow_id,omitempty"`
	RxBytes              uint64   `protobuf:"fixed64,2,opt,name=rx_bytes,json=rxBytes,proto3" json:"rx_bytes,omitempty"`
	RxPackets            uint64   `protobuf:"fixed64,3,opt,name=rx_packets,json=rxPackets,proto3" json:"rx_packets,omitempty"`
	TxBytes              uint64   `protobuf:"fixed64,8,opt,name=tx_bytes,json=txBytes,proto3" json:"tx_bytes,omitempty"`
	TxPackets            uint64   `protobuf:"fixed64,9,opt,name=tx_packets,json=txPackets,proto3" json:"tx_packets,omitempty"`
	Timestamp            uint32   `protobuf:"fixed32,16,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FlowStatistics) Reset()         { *m = FlowStatistics{} }
func (m *FlowStatistics) String() string { return proto.CompactTextString(m) }
func (*FlowStatistics) ProtoMessage()    {}
func (*FlowStatistics) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{22}
}

func (m *FlowStatistics) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FlowStatistics.Unmarshal(m, b)
}
func (m *FlowStatistics) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FlowStatistics.Marshal(b, m, deterministic)
}
func (m *FlowStatistics) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FlowStatistics.Merge(m, src)
}
func (m *FlowStatistics) XXX_Size() int {
	return xxx_messageInfo_FlowStatistics.Size(m)
}
func (m *FlowStatistics) XXX_DiscardUnknown() {
	xxx_messageInfo_FlowStatistics.DiscardUnknown(m)
}

var xxx_messageInfo_FlowStatistics proto.InternalMessageInfo

func (m *FlowStatistics) GetFlowId() uint32 {
	if m != nil {
		return m.FlowId
	}
	return 0
}

func (m *FlowStatistics) GetRxBytes() uint64 {
	if m != nil {
		return m.RxBytes
	}
	return 0
}

func (m *FlowStatistics) GetRxPackets() uint64 {
	if m != nil {
		return m.RxPackets
	}
	return 0
}

func (m *FlowStatistics) GetTxBytes() uint64 {
	if m != nil {
		return m.TxBytes
	}
	return 0
}

func (m *FlowStatistics) GetTxPackets() uint64 {
	if m != nil {
		return m.TxPackets
	}
	return 0
}

func (m *FlowStatistics) GetTimestamp() uint32 {
	if m != nil {
		return m.Timestamp
	}
	return 0
}

type LosIndication struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	Status               string   `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *LosIndication) Reset()         { *m = LosIndication{} }
func (m *LosIndication) String() string { return proto.CompactTextString(m) }
func (*LosIndication) ProtoMessage()    {}
func (*LosIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{23}
}

func (m *LosIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_LosIndication.Unmarshal(m, b)
}
func (m *LosIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_LosIndication.Marshal(b, m, deterministic)
}
func (m *LosIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_LosIndication.Merge(m, src)
}
func (m *LosIndication) XXX_Size() int {
	return xxx_messageInfo_LosIndication.Size(m)
}
func (m *LosIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_LosIndication.DiscardUnknown(m)
}

var xxx_messageInfo_LosIndication proto.InternalMessageInfo

func (m *LosIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *LosIndication) GetStatus() string {
	if m != nil {
		return m.Status
	}
	return ""
}

type DyingGaspIndication struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	Status               string   `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DyingGaspIndication) Reset()         { *m = DyingGaspIndication{} }
func (m *DyingGaspIndication) String() string { return proto.CompactTextString(m) }
func (*DyingGaspIndication) ProtoMessage()    {}
func (*DyingGaspIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{24}
}

func (m *DyingGaspIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DyingGaspIndication.Unmarshal(m, b)
}
func (m *DyingGaspIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DyingGaspIndication.Marshal(b, m, deterministic)
}
func (m *DyingGaspIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DyingGaspIndication.Merge(m, src)
}
func (m *DyingGaspIndication) XXX_Size() int {
	return xxx_messageInfo_DyingGaspIndication.Size(m)
}
func (m *DyingGaspIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_DyingGaspIndication.DiscardUnknown(m)
}

var xxx_messageInfo_DyingGaspIndication proto.InternalMessageInfo

func (m *DyingGaspIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *DyingGaspIndication) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *DyingGaspIndication) GetStatus() string {
	if m != nil {
		return m.Status
	}
	return ""
}

type OnuAlarmIndication struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	LosStatus            string   `protobuf:"bytes,3,opt,name=los_status,json=losStatus,proto3" json:"los_status,omitempty"`
	LobStatus            string   `protobuf:"bytes,4,opt,name=lob_status,json=lobStatus,proto3" json:"lob_status,omitempty"`
	LopcMissStatus       string   `protobuf:"bytes,5,opt,name=lopc_miss_status,json=lopcMissStatus,proto3" json:"lopc_miss_status,omitempty"`
	LopcMicErrorStatus   string   `protobuf:"bytes,6,opt,name=lopc_mic_error_status,json=lopcMicErrorStatus,proto3" json:"lopc_mic_error_status,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OnuAlarmIndication) Reset()         { *m = OnuAlarmIndication{} }
func (m *OnuAlarmIndication) String() string { return proto.CompactTextString(m) }
func (*OnuAlarmIndication) ProtoMessage()    {}
func (*OnuAlarmIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{25}
}

func (m *OnuAlarmIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OnuAlarmIndication.Unmarshal(m, b)
}
func (m *OnuAlarmIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OnuAlarmIndication.Marshal(b, m, deterministic)
}
func (m *OnuAlarmIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OnuAlarmIndication.Merge(m, src)
}
func (m *OnuAlarmIndication) XXX_Size() int {
	return xxx_messageInfo_OnuAlarmIndication.Size(m)
}
func (m *OnuAlarmIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_OnuAlarmIndication.DiscardUnknown(m)
}

var xxx_messageInfo_OnuAlarmIndication proto.InternalMessageInfo

func (m *OnuAlarmIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OnuAlarmIndication) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *OnuAlarmIndication) GetLosStatus() string {
	if m != nil {
		return m.LosStatus
	}
	return ""
}

func (m *OnuAlarmIndication) GetLobStatus() string {
	if m != nil {
		return m.LobStatus
	}
	return ""
}

func (m *OnuAlarmIndication) GetLopcMissStatus() string {
	if m != nil {
		return m.LopcMissStatus
	}
	return ""
}

func (m *OnuAlarmIndication) GetLopcMicErrorStatus() string {
	if m != nil {
		return m.LopcMicErrorStatus
	}
	return ""
}

type OnuStartupFailureIndication struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	Status               string   `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OnuStartupFailureIndication) Reset()         { *m = OnuStartupFailureIndication{} }
func (m *OnuStartupFailureIndication) String() string { return proto.CompactTextString(m) }
func (*OnuStartupFailureIndication) ProtoMessage()    {}
func (*OnuStartupFailureIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{26}
}

func (m *OnuStartupFailureIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OnuStartupFailureIndication.Unmarshal(m, b)
}
func (m *OnuStartupFailureIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OnuStartupFailureIndication.Marshal(b, m, deterministic)
}
func (m *OnuStartupFailureIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OnuStartupFailureIndication.Merge(m, src)
}
func (m *OnuStartupFailureIndication) XXX_Size() int {
	return xxx_messageInfo_OnuStartupFailureIndication.Size(m)
}
func (m *OnuStartupFailureIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_OnuStartupFailureIndication.DiscardUnknown(m)
}

var xxx_messageInfo_OnuStartupFailureIndication proto.InternalMessageInfo

func (m *OnuStartupFailureIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OnuStartupFailureIndication) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *OnuStartupFailureIndication) GetStatus() string {
	if m != nil {
		return m.Status
	}
	return ""
}

type OnuSignalDegradeIndication struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	Status               string   `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"`
	InverseBitErrorRate  uint32   `protobuf:"fixed32,4,opt,name=inverse_bit_error_rate,json=inverseBitErrorRate,proto3" json:"inverse_bit_error_rate,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OnuSignalDegradeIndication) Reset()         { *m = OnuSignalDegradeIndication{} }
func (m *OnuSignalDegradeIndication) String() string { return proto.CompactTextString(m) }
func (*OnuSignalDegradeIndication) ProtoMessage()    {}
func (*OnuSignalDegradeIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{27}
}

func (m *OnuSignalDegradeIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OnuSignalDegradeIndication.Unmarshal(m, b)
}
func (m *OnuSignalDegradeIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OnuSignalDegradeIndication.Marshal(b, m, deterministic)
}
func (m *OnuSignalDegradeIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OnuSignalDegradeIndication.Merge(m, src)
}
func (m *OnuSignalDegradeIndication) XXX_Size() int {
	return xxx_messageInfo_OnuSignalDegradeIndication.Size(m)
}
func (m *OnuSignalDegradeIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_OnuSignalDegradeIndication.DiscardUnknown(m)
}

var xxx_messageInfo_OnuSignalDegradeIndication proto.InternalMessageInfo

func (m *OnuSignalDegradeIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OnuSignalDegradeIndication) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *OnuSignalDegradeIndication) GetStatus() string {
	if m != nil {
		return m.Status
	}
	return ""
}

func (m *OnuSignalDegradeIndication) GetInverseBitErrorRate() uint32 {
	if m != nil {
		return m.InverseBitErrorRate
	}
	return 0
}

type OnuDriftOfWindowIndication struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	Status               string   `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"`
	Drift                uint32   `protobuf:"fixed32,4,opt,name=drift,proto3" json:"drift,omitempty"`
	NewEqd               uint32   `protobuf:"fixed32,5,opt,name=new_eqd,json=newEqd,proto3" json:"new_eqd,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OnuDriftOfWindowIndication) Reset()         { *m = OnuDriftOfWindowIndication{} }
func (m *OnuDriftOfWindowIndication) String() string { return proto.CompactTextString(m) }
func (*OnuDriftOfWindowIndication) ProtoMessage()    {}
func (*OnuDriftOfWindowIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{28}
}

func (m *OnuDriftOfWindowIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OnuDriftOfWindowIndication.Unmarshal(m, b)
}
func (m *OnuDriftOfWindowIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OnuDriftOfWindowIndication.Marshal(b, m, deterministic)
}
func (m *OnuDriftOfWindowIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OnuDriftOfWindowIndication.Merge(m, src)
}
func (m *OnuDriftOfWindowIndication) XXX_Size() int {
	return xxx_messageInfo_OnuDriftOfWindowIndication.Size(m)
}
func (m *OnuDriftOfWindowIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_OnuDriftOfWindowIndication.DiscardUnknown(m)
}

var xxx_messageInfo_OnuDriftOfWindowIndication proto.InternalMessageInfo

func (m *OnuDriftOfWindowIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OnuDriftOfWindowIndication) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *OnuDriftOfWindowIndication) GetStatus() string {
	if m != nil {
		return m.Status
	}
	return ""
}

func (m *OnuDriftOfWindowIndication) GetDrift() uint32 {
	if m != nil {
		return m.Drift
	}
	return 0
}

func (m *OnuDriftOfWindowIndication) GetNewEqd() uint32 {
	if m != nil {
		return m.NewEqd
	}
	return 0
}

type OnuLossOfOmciChannelIndication struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	Status               string   `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OnuLossOfOmciChannelIndication) Reset()         { *m = OnuLossOfOmciChannelIndication{} }
func (m *OnuLossOfOmciChannelIndication) String() string { return proto.CompactTextString(m) }
func (*OnuLossOfOmciChannelIndication) ProtoMessage()    {}
func (*OnuLossOfOmciChannelIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{29}
}

func (m *OnuLossOfOmciChannelIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OnuLossOfOmciChannelIndication.Unmarshal(m, b)
}
func (m *OnuLossOfOmciChannelIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OnuLossOfOmciChannelIndication.Marshal(b, m, deterministic)
}
func (m *OnuLossOfOmciChannelIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OnuLossOfOmciChannelIndication.Merge(m, src)
}
func (m *OnuLossOfOmciChannelIndication) XXX_Size() int {
	return xxx_messageInfo_OnuLossOfOmciChannelIndication.Size(m)
}
func (m *OnuLossOfOmciChannelIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_OnuLossOfOmciChannelIndication.DiscardUnknown(m)
}

var xxx_messageInfo_OnuLossOfOmciChannelIndication proto.InternalMessageInfo

func (m *OnuLossOfOmciChannelIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OnuLossOfOmciChannelIndication) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *OnuLossOfOmciChannelIndication) GetStatus() string {
	if m != nil {
		return m.Status
	}
	return ""
}

type OnuSignalsFailureIndication struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	Status               string   `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"`
	InverseBitErrorRate  uint32   `protobuf:"fixed32,4,opt,name=inverse_bit_error_rate,json=inverseBitErrorRate,proto3" json:"inverse_bit_error_rate,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OnuSignalsFailureIndication) Reset()         { *m = OnuSignalsFailureIndication{} }
func (m *OnuSignalsFailureIndication) String() string { return proto.CompactTextString(m) }
func (*OnuSignalsFailureIndication) ProtoMessage()    {}
func (*OnuSignalsFailureIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{30}
}

func (m *OnuSignalsFailureIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OnuSignalsFailureIndication.Unmarshal(m, b)
}
func (m *OnuSignalsFailureIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OnuSignalsFailureIndication.Marshal(b, m, deterministic)
}
func (m *OnuSignalsFailureIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OnuSignalsFailureIndication.Merge(m, src)
}
func (m *OnuSignalsFailureIndication) XXX_Size() int {
	return xxx_messageInfo_OnuSignalsFailureIndication.Size(m)
}
func (m *OnuSignalsFailureIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_OnuSignalsFailureIndication.DiscardUnknown(m)
}

var xxx_messageInfo_OnuSignalsFailureIndication proto.InternalMessageInfo

func (m *OnuSignalsFailureIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OnuSignalsFailureIndication) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *OnuSignalsFailureIndication) GetStatus() string {
	if m != nil {
		return m.Status
	}
	return ""
}

func (m *OnuSignalsFailureIndication) GetInverseBitErrorRate() uint32 {
	if m != nil {
		return m.InverseBitErrorRate
	}
	return 0
}

type OnuTransmissionInterferenceWarning struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	Status               string   `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"`
	Drift                uint32   `protobuf:"fixed32,4,opt,name=drift,proto3" json:"drift,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OnuTransmissionInterferenceWarning) Reset()         { *m = OnuTransmissionInterferenceWarning{} }
func (m *OnuTransmissionInterferenceWarning) String() string { return proto.CompactTextString(m) }
func (*OnuTransmissionInterferenceWarning) ProtoMessage()    {}
func (*OnuTransmissionInterferenceWarning) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{31}
}

func (m *OnuTransmissionInterferenceWarning) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OnuTransmissionInterferenceWarning.Unmarshal(m, b)
}
func (m *OnuTransmissionInterferenceWarning) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OnuTransmissionInterferenceWarning.Marshal(b, m, deterministic)
}
func (m *OnuTransmissionInterferenceWarning) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OnuTransmissionInterferenceWarning.Merge(m, src)
}
func (m *OnuTransmissionInterferenceWarning) XXX_Size() int {
	return xxx_messageInfo_OnuTransmissionInterferenceWarning.Size(m)
}
func (m *OnuTransmissionInterferenceWarning) XXX_DiscardUnknown() {
	xxx_messageInfo_OnuTransmissionInterferenceWarning.DiscardUnknown(m)
}

var xxx_messageInfo_OnuTransmissionInterferenceWarning proto.InternalMessageInfo

func (m *OnuTransmissionInterferenceWarning) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OnuTransmissionInterferenceWarning) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

func (m *OnuTransmissionInterferenceWarning) GetStatus() string {
	if m != nil {
		return m.Status
	}
	return ""
}

func (m *OnuTransmissionInterferenceWarning) GetDrift() uint32 {
	if m != nil {
		return m.Drift
	}
	return 0
}

type OnuActivationFailureIndication struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OnuActivationFailureIndication) Reset()         { *m = OnuActivationFailureIndication{} }
func (m *OnuActivationFailureIndication) String() string { return proto.CompactTextString(m) }
func (*OnuActivationFailureIndication) ProtoMessage()    {}
func (*OnuActivationFailureIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{32}
}

func (m *OnuActivationFailureIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OnuActivationFailureIndication.Unmarshal(m, b)
}
func (m *OnuActivationFailureIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OnuActivationFailureIndication.Marshal(b, m, deterministic)
}
func (m *OnuActivationFailureIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OnuActivationFailureIndication.Merge(m, src)
}
func (m *OnuActivationFailureIndication) XXX_Size() int {
	return xxx_messageInfo_OnuActivationFailureIndication.Size(m)
}
func (m *OnuActivationFailureIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_OnuActivationFailureIndication.DiscardUnknown(m)
}

var xxx_messageInfo_OnuActivationFailureIndication proto.InternalMessageInfo

func (m *OnuActivationFailureIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OnuActivationFailureIndication) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

type OnuProcessingErrorIndication struct {
	IntfId               uint32   `protobuf:"fixed32,1,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
	OnuId                uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *OnuProcessingErrorIndication) Reset()         { *m = OnuProcessingErrorIndication{} }
func (m *OnuProcessingErrorIndication) String() string { return proto.CompactTextString(m) }
func (*OnuProcessingErrorIndication) ProtoMessage()    {}
func (*OnuProcessingErrorIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{33}
}

func (m *OnuProcessingErrorIndication) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_OnuProcessingErrorIndication.Unmarshal(m, b)
}
func (m *OnuProcessingErrorIndication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_OnuProcessingErrorIndication.Marshal(b, m, deterministic)
}
func (m *OnuProcessingErrorIndication) XXX_Merge(src proto.Message) {
	xxx_messageInfo_OnuProcessingErrorIndication.Merge(m, src)
}
func (m *OnuProcessingErrorIndication) XXX_Size() int {
	return xxx_messageInfo_OnuProcessingErrorIndication.Size(m)
}
func (m *OnuProcessingErrorIndication) XXX_DiscardUnknown() {
	xxx_messageInfo_OnuProcessingErrorIndication.DiscardUnknown(m)
}

var xxx_messageInfo_OnuProcessingErrorIndication proto.InternalMessageInfo

func (m *OnuProcessingErrorIndication) GetIntfId() uint32 {
	if m != nil {
		return m.IntfId
	}
	return 0
}

func (m *OnuProcessingErrorIndication) GetOnuId() uint32 {
	if m != nil {
		return m.OnuId
	}
	return 0
}

type Empty struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Empty) Reset()         { *m = Empty{} }
func (m *Empty) String() string { return proto.CompactTextString(m) }
func (*Empty) ProtoMessage()    {}
func (*Empty) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{34}
}

func (m *Empty) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Empty.Unmarshal(m, b)
}
func (m *Empty) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Empty.Marshal(b, m, deterministic)
}
func (m *Empty) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Empty.Merge(m, src)
}
func (m *Empty) XXX_Size() int {
	return xxx_messageInfo_Empty.Size(m)
}
func (m *Empty) XXX_DiscardUnknown() {
	xxx_messageInfo_Empty.DiscardUnknown(m)
}

var xxx_messageInfo_Empty proto.InternalMessageInfo

func init() {
	proto.RegisterEnum("openolt.DeviceInfo_DeviceResourceRanges_Pool_PoolType", DeviceInfo_DeviceResourceRanges_Pool_PoolType_name, DeviceInfo_DeviceResourceRanges_Pool_PoolType_value)
	proto.RegisterEnum("openolt.DeviceInfo_DeviceResourceRanges_Pool_SharingType", DeviceInfo_DeviceResourceRanges_Pool_SharingType_name, DeviceInfo_DeviceResourceRanges_Pool_SharingType_value)
	proto.RegisterType((*Indication)(nil), "openolt.Indication")
	proto.RegisterType((*AlarmIndication)(nil), "openolt.AlarmIndication")
	proto.RegisterType((*OltIndication)(nil), "openolt.OltIndication")
	proto.RegisterType((*IntfIndication)(nil), "openolt.IntfIndication")
	proto.RegisterType((*OnuDiscIndication)(nil), "openolt.OnuDiscIndication")
	proto.RegisterType((*OnuIndication)(nil), "openolt.OnuIndication")
	proto.RegisterType((*IntfOperIndication)(nil), "openolt.IntfOperIndication")
	proto.RegisterType((*OmciIndication)(nil), "openolt.OmciIndication")
	proto.RegisterType((*PacketIndication)(nil), "openolt.PacketIndication")
	proto.RegisterType((*Interface)(nil), "openolt.Interface")
	proto.RegisterType((*Heartbeat)(nil), "openolt.Heartbeat")
	proto.RegisterType((*Onu)(nil), "openolt.Onu")
	proto.RegisterType((*OmciMsg)(nil), "openolt.OmciMsg")
	proto.RegisterType((*OnuPacket)(nil), "openolt.OnuPacket")
	proto.RegisterType((*UplinkPacket)(nil), "openolt.UplinkPacket")
	proto.RegisterType((*DeviceInfo)(nil), "openolt.DeviceInfo")
	proto.RegisterType((*DeviceInfo_DeviceResourceRanges)(nil), "openolt.DeviceInfo.DeviceResourceRanges")
	proto.RegisterType((*DeviceInfo_DeviceResourceRanges_Pool)(nil), "openolt.DeviceInfo.DeviceResourceRanges.Pool")
	proto.RegisterType((*Classifier)(nil), "openolt.Classifier")
	proto.RegisterType((*ActionCmd)(nil), "openolt.ActionCmd")
	proto.RegisterType((*Action)(nil), "openolt.Action")
	proto.RegisterType((*Flow)(nil), "openolt.Flow")
	proto.RegisterType((*SerialNumber)(nil), "openolt.SerialNumber")
	proto.RegisterType((*PortStatistics)(nil), "openolt.PortStatistics")
	proto.RegisterType((*FlowStatistics)(nil), "openolt.FlowStatistics")
	proto.RegisterType((*LosIndication)(nil), "openolt.LosIndication")
	proto.RegisterType((*DyingGaspIndication)(nil), "openolt.DyingGaspIndication")
	proto.RegisterType((*OnuAlarmIndication)(nil), "openolt.OnuAlarmIndication")
	proto.RegisterType((*OnuStartupFailureIndication)(nil), "openolt.OnuStartupFailureIndication")
	proto.RegisterType((*OnuSignalDegradeIndication)(nil), "openolt.OnuSignalDegradeIndication")
	proto.RegisterType((*OnuDriftOfWindowIndication)(nil), "openolt.OnuDriftOfWindowIndication")
	proto.RegisterType((*OnuLossOfOmciChannelIndication)(nil), "openolt.OnuLossOfOmciChannelIndication")
	proto.RegisterType((*OnuSignalsFailureIndication)(nil), "openolt.OnuSignalsFailureIndication")
	proto.RegisterType((*OnuTransmissionInterferenceWarning)(nil), "openolt.OnuTransmissionInterferenceWarning")
	proto.RegisterType((*OnuActivationFailureIndication)(nil), "openolt.OnuActivationFailureIndication")
	proto.RegisterType((*OnuProcessingErrorIndication)(nil), "openolt.OnuProcessingErrorIndication")
	proto.RegisterType((*Empty)(nil), "openolt.Empty")
}

func init() { proto.RegisterFile("voltha_protos/openolt.proto", fileDescriptor_c072e7aa0dfd74d5) }

var fileDescriptor_c072e7aa0dfd74d5 = []byte{
	// 2990 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0xdd, 0x72, 0x1c, 0x47,
	0xf5, 0xf7, 0x4a, 0xab, 0x9d, 0xdd, 0xb3, 0x1f, 0x92, 0x5b, 0xd6, 0x87, 0x25, 0xc5, 0x51, 0xcd,
	0xdf, 0xff, 0xc4, 0x40, 0xc5, 0x8a, 0x9d, 0x14, 0x90, 0x40, 0x41, 0x64, 0x49, 0x8e, 0x16, 0x2c,
	0xaf, 0x18, 0xc9, 0x31, 0x84, 0xa2, 0x26, 0xa3, 0x99, 0xde, 0xdd, 0x2e, 0xcd, 0x4e, 0x4f, 0xa6,
	0x7b, 0x25, 0xb9, 0xb8, 0x0b, 0xf0, 0x02, 0xa4, 0xb8, 0x80, 0x2a, 0x9e, 0x80, 0x17, 0xa0, 0x8a,
	0xcb, 0xdc, 0x52, 0xdc, 0xf0, 0x00, 0xdc, 0xf0, 0x18, 0x5c, 0x50, 0x7d, 0xba, 0x67, 0x76, 0x66,
	0x77, 0x25, 0x5b, 0xc1, 0x14, 0x37, 0xaa, 0xe9, 0x73, 0x7e, 0xe7, 0xd7, 0x7d, 0xba, 0xcf, 0x39,
	0xfd, 0xa1, 0x85, 0xf5, 0x33, 0x1e, 0xca, 0xbe, 0xe7, 0xc6, 0x09, 0x97, 0x5c, 0x6c, 0xf1, 0x98,
	0x46, 0x3c, 0x94, 0xf7, 0xb1, 0x49, 0x2c, 0xd3, 0x5c, 0xdb, 0xe8, 0x71, 0xde, 0x0b, 0xe9, 0x96,
	0x17, 0xb3, 0x2d, 0x2f, 0x8a, 0xb8, 0xf4, 0x24, 0xe3, 0x91, 0xd0, 0xb0, 0xb5, 0xcd, 0x22, 0x87,
	0xa4, 0x7e, 0x5f, 0x7d, 0x77, 0x59, 0x48, 0x35, 0xc2, 0xfe, 0x6b, 0x19, 0xa0, 0x1d, 0x05, 0xcc,
	0x47, 0x3b, 0xf2, 0x00, 0x2c, 0x1e, 0x4a, 0x97, 0x45, 0xc1, 0x6a, 0x69, 0xb3, 0x74, 0xaf, 0xfe,
	0x70, 0xf9, 0x7e, 0xda, 0x71, 0x27, 0x94, 0x23, 0xe0, 0xfe, 0x0d, 0xa7, 0xc2, 0x51, 0x40, 0xde,
	0x87, 0x2a, 0x8b, 0x64, 0x17, 0x6d, 0x66, 0xd0, 0x66, 0x25, 0xb3, 0x69, 0x47, 0xb2, 0x5b, 0x30,
	0xb2, 0x98, 0x96, 0x90, 0x6d, 0x68, 0xa2, 0x15, 0x8f, 0x69, 0x82, 0xa6, 0xb3, 0x68, 0xba, 0x5e,
	0x30, 0xed, 0xc4, 0x34, 0x29, 0x98, 0xd7, 0xd9, 0x48, 0x4a, 0x7e, 0x00, 0x0d, 0x1e, 0x0d, 0xdd,
	0x80, 0x09, 0x1f, 0x19, 0xca, 0xc8, 0xb0, 0x36, 0x1a, 0x70, 0x34, 0xdc, 0x65, 0xc2, 0x2f, 0x10,
	0x00, 0xcf, 0x84, 0xe8, 0x6b, 0x34, 0x44, 0xd3, 0xb9, 0x71, 0x5f, 0xa3, 0xe1, 0x98, 0xaf, 0x28,
	0x50, 0xbe, 0xf2, 0x81, 0xcf, 0xd0, 0xa6, 0x32, 0xe6, 0x6b, 0x67, 0xe0, 0xb3, 0xa2, 0xaf, 0x5c,
	0x4b, 0xc8, 0xfb, 0x60, 0xc5, 0xa7, 0x7a, 0x52, 0x2d, 0x34, 0xba, 0x9d, 0x19, 0x1d, 0x7a, 0xfe,
	0x29, 0x1d, 0x9b, 0xd7, 0xf8, 0x14, 0xe7, 0xf5, 0xbb, 0x00, 0x31, 0x4f, 0xa4, 0x2b, 0xa4, 0x27,
	0xc5, 0x6a, 0x75, 0xac, 0xb7, 0x43, 0x9e, 0xc8, 0x23, 0xb5, 0xd8, 0x42, 0x32, 0x5f, 0xec, 0xdf,
	0x70, 0x6a, 0xb1, 0x91, 0x08, 0x65, 0xd9, 0x0d, 0xf9, 0xb9, 0xb1, 0xac, 0x8d, 0x59, 0x3e, 0x0e,
	0xf9, 0x79, 0xd1, 0xb2, 0x6b, 0x24, 0x82, 0x7c, 0x07, 0x6a, 0x5e, 0xe8, 0x25, 0x03, 0x1c, 0x2b,
	0xa0, 0xe1, 0x6a, 0x66, 0xb8, 0xad, 0x34, 0x85, 0xa1, 0x56, 0x3d, 0x23, 0x7a, 0x54, 0x81, 0x72,
	0xe0, 0x49, 0xcf, 0xfe, 0x93, 0x05, 0xf3, 0x63, 0x38, 0x35, 0xcf, 0x21, 0x17, 0x53, 0x63, 0xea,
	0x09, 0x17, 0x45, 0xdf, 0x43, 0x14, 0x90, 0x5d, 0x68, 0x05, 0x2f, 0x58, 0xd4, 0x73, 0x7b, 0x9e,
	0x88, 0x73, 0x91, 0xb5, 0x91, 0x59, 0xee, 0x2a, 0xf5, 0xc7, 0x9e, 0x88, 0x0b, 0xf6, 0x8d, 0x20,
	0x27, 0x56, 0x31, 0xa6, 0x16, 0x78, 0xe4, 0xd1, 0x78, 0x8c, 0x75, 0xa2, 0xe1, 0xa4, 0x53, 0x75,
	0x3e, 0x92, 0x92, 0xe7, 0x70, 0x4b, 0x51, 0x08, 0xe9, 0x25, 0x72, 0x18, 0xbb, 0x5d, 0x8f, 0x85,
	0xb9, 0x58, 0xbb, 0x9b, 0x67, 0x3a, 0xd2, 0x98, 0xc7, 0x1e, 0x0b, 0x87, 0x09, 0x2d, 0x50, 0xde,
	0xe4, 0x05, 0xb5, 0x22, 0xfe, 0x14, 0x96, 0x91, 0x98, 0xf5, 0x22, 0x2f, 0x74, 0x03, 0xda, 0x4b,
	0xbc, 0x80, 0xe6, 0x62, 0xf1, 0xff, 0x0a, 0xd4, 0x88, 0xda, 0xd5, 0xa0, 0x02, 0xf3, 0x22, 0x9f,
	0xd4, 0x92, 0x9f, 0xc3, 0x0a, 0x26, 0x46, 0xc2, 0xba, 0xd2, 0xe5, 0x5d, 0xf7, 0x9c, 0x45, 0x01,
	0x3f, 0xcf, 0x05, 0x6d, 0x81, 0x7c, 0x57, 0xc1, 0x3a, 0xdd, 0xe7, 0x08, 0x9a, 0x20, 0x1f, 0xd7,
	0x92, 0x63, 0x50, 0xde, 0xb8, 0x21, 0x17, 0xc2, 0xcd, 0x72, 0x41, 0x87, 0xf5, 0xdb, 0x79, 0xda,
	0x27, 0x5c, 0x88, 0x4e, 0x57, 0x25, 0xc5, 0x4e, 0xdf, 0x8b, 0x22, 0x1a, 0x16, 0xa8, 0x5b, 0xdc,
	0x20, 0x4c, 0x8a, 0xa4, 0xf3, 0x8c, 0xae, 0x88, 0xd1, 0x3c, 0x57, 0xa7, 0xcc, 0xb3, 0xc6, 0x5c,
	0x3a, 0xcf, 0x23, 0xb5, 0x22, 0xee, 0xe8, 0x22, 0x21, 0xd9, 0xb9, 0x1e, 0xa9, 0xce, 0x86, 0x6f,
	0xe5, 0x09, 0x8f, 0x13, 0x2f, 0x12, 0x03, 0x26, 0x04, 0xe3, 0x51, 0x3b, 0x92, 0x34, 0xe9, 0xd2,
	0x84, 0x46, 0x3e, 0x7d, 0xee, 0x25, 0x11, 0x8b, 0x7a, 0xa6, 0x6a, 0x1c, 0xb3, 0x73, 0x1c, 0xe9,
	0x67, 0x7a, 0x72, 0x3d, 0x5f, 0xb2, 0x33, 0xec, 0x77, 0x34, 0x58, 0x98, 0x9c, 0x85, 0xed, 0x0c,
	0x36, 0x6d, 0xbc, 0xca, 0xe7, 0x22, 0x42, 0xf7, 0xb0, 0xaa, 0x7a, 0x88, 0x13, 0xee, 0x53, 0x21,
	0x54, 0x16, 0xd0, 0x24, 0xe1, 0xba, 0x4a, 0xd6, 0xb1, 0x8b, 0xff, 0xcf, 0x77, 0x71, 0x98, 0xe1,
	0xf6, 0x14, 0xac, 0xd0, 0xc1, 0x12, 0x9f, 0xa6, 0xcf, 0xb2, 0xf5, 0x3e, 0x34, 0x0b, 0x55, 0x9d,
	0xbc, 0x01, 0x80, 0x05, 0x59, 0x55, 0x0e, 0x8a, 0xd9, 0x5a, 0x73, 0x6a, 0x4a, 0xa2, 0xca, 0x03,
	0xb5, 0xf7, 0xa1, 0x55, 0xac, 0xe8, 0x64, 0x05, 0x2c, 0x5d, 0xfc, 0x75, 0x6e, 0x5b, 0x4e, 0x05,
	0x0b, 0x7c, 0x30, 0xc6, 0x34, 0x33, 0xce, 0xd4, 0x87, 0x9b, 0x13, 0xe5, 0xf9, 0x72, 0xb2, 0x0f,
	0xa1, 0x29, 0x68, 0xc2, 0xbc, 0xd0, 0x8d, 0x86, 0x83, 0x13, 0x9a, 0x98, 0x6a, 0xb0, 0x94, 0x4d,
	0xc3, 0x11, 0x6a, 0x9f, 0xa2, 0xd2, 0x69, 0x88, 0x5c, 0xcb, 0xfe, 0x4b, 0x09, 0x9a, 0x85, 0x72,
	0x7e, 0x79, 0x37, 0x4b, 0x50, 0xc1, 0x0d, 0x41, 0x57, 0x1b, 0xcb, 0x99, 0x53, 0x55, 0x7f, 0xdc,
	0x95, 0xd9, 0x31, 0x57, 0xc8, 0x9b, 0x50, 0xf7, 0x82, 0x01, 0x8b, 0x8c, 0x7e, 0x0e, 0xf5, 0x80,
	0x22, 0x0d, 0x98, 0x18, 0x7d, 0xf9, 0xd5, 0x47, 0xff, 0x19, 0x90, 0xc9, 0x8d, 0x90, 0x10, 0x28,
	0xcb, 0x17, 0x71, 0xba, 0x40, 0xf8, 0x9d, 0xf7, 0x6a, 0xe6, 0x8a, 0x95, 0x18, 0x1f, 0xbe, 0xed,
	0x40, 0xab, 0xb8, 0x73, 0x5d, 0x7b, 0x7e, 0x16, 0x60, 0x36, 0x3e, 0x95, 0xc8, 0xdc, 0x70, 0xd4,
	0xa7, 0xfd, 0x55, 0x09, 0x16, 0xc6, 0x77, 0x36, 0xb2, 0x0e, 0x35, 0xa4, 0xc5, 0x91, 0xeb, 0x59,
	0xc2, 0x83, 0xc3, 0xf1, 0xd8, 0xe8, 0x27, 0xe2, 0xa8, 0x47, 0x07, 0xb8, 0x11, 0x66, 0xfd, 0xd6,
	0x8c, 0xa4, 0x1d, 0x28, 0x3b, 0xdc, 0xea, 0x98, 0x2e, 0xee, 0x96, 0x53, 0x51, 0x4d, 0xad, 0x40,
	0xa3, 0x88, 0x63, 0xcd, 0xb3, 0x9c, 0x8a, 0x6a, 0x3e, 0xe5, 0x64, 0x19, 0x2a, 0x3e, 0xe7, 0xa7,
	0x8c, 0x62, 0xd1, 0xaa, 0x38, 0xa6, 0x95, 0x7a, 0x51, 0x1e, 0x79, 0x71, 0x17, 0x6a, 0xba, 0x1c,
	0x78, 0xfe, 0xe5, 0x03, 0xb4, 0xbf, 0x0f, 0xb5, 0x7d, 0xea, 0x25, 0xf2, 0x84, 0x7a, 0x92, 0x6c,
	0xc1, 0x62, 0x3f, 0x6d, 0xe8, 0x62, 0x26, 0x87, 0x09, 0x35, 0x16, 0x24, 0x53, 0x1d, 0xa5, 0x1a,
	0xfb, 0x57, 0x25, 0x98, 0xed, 0x44, 0xc3, 0x6b, 0xcf, 0xf9, 0x44, 0x4c, 0xcd, 0xbe, 0x72, 0x4c,
	0xa1, 0xa7, 0x4c, 0x47, 0xa1, 0xe5, 0xa8, 0x4f, 0xfb, 0xc7, 0x60, 0xa9, 0x18, 0x38, 0x10, 0xbd,
	0xd7, 0xb0, 0xf8, 0xbf, 0x29, 0x41, 0x4d, 0x95, 0x25, 0x5c, 0xff, 0x6b, 0xf3, 0xe5, 0xd6, 0xad,
	0x5c, 0x58, 0xb7, 0x62, 0x20, 0xcc, 0x8d, 0x07, 0xc2, 0xe4, 0x38, 0x3e, 0x80, 0xc6, 0xb3, 0x38,
	0x64, 0xd1, 0xe9, 0xcb, 0x46, 0x62, 0x4c, 0x67, 0x46, 0xa6, 0xbf, 0xad, 0x01, 0xec, 0xd2, 0x33,
	0xe6, 0xd3, 0x76, 0xd4, 0xc5, 0x90, 0x39, 0xa3, 0x51, 0xc0, 0x13, 0x93, 0x70, 0xa6, 0x45, 0x6e,
	0xc1, 0xdc, 0x80, 0x07, 0x34, 0x34, 0xe5, 0x4d, 0x37, 0xc8, 0x37, 0x60, 0xa1, 0xef, 0x25, 0xc1,
	0xb9, 0x97, 0x50, 0xf7, 0x8c, 0x26, 0x6a, 0x57, 0x31, 0x59, 0x37, 0x9f, 0xca, 0x3f, 0xd1, 0x62,
	0x05, 0xed, 0xb2, 0x64, 0x50, 0x80, 0x96, 0x35, 0x34, 0x95, 0xa7, 0xd0, 0x75, 0xa8, 0x05, 0x38,
	0x22, 0x35, 0xfe, 0x05, 0x9d, 0x3d, 0x5a, 0xd0, 0x0e, 0xc8, 0xbb, 0x70, 0xcb, 0x28, 0x8b, 0x41,
	0x71, 0x13, 0x71, 0x44, 0xeb, 0xf2, 0x11, 0xa1, 0xe8, 0x62, 0x1e, 0xb9, 0x6a, 0xf2, 0xc4, 0x6a,
	0x03, 0xa7, 0xa3, 0x1a, 0xf3, 0x48, 0x9d, 0x2a, 0x05, 0xb9, 0x03, 0xa0, 0x6e, 0x0a, 0x11, 0x0f,
	0x79, 0xef, 0x45, 0x5a, 0xd0, 0x46, 0x12, 0xb2, 0xa9, 0xf7, 0x54, 0x16, 0xe8, 0x73, 0x91, 0x49,
	0x30, 0xc0, 0x05, 0xc4, 0x63, 0x0e, 0xd9, 0x00, 0x30, 0x08, 0x6a, 0x4e, 0x07, 0x96, 0x53, 0x45,
	0xfd, 0x5e, 0x14, 0x90, 0xbb, 0xd0, 0xf2, 0xc2, 0x90, 0xfb, 0x23, 0x86, 0x2a, 0x22, 0x1a, 0x28,
	0x4d, 0x39, 0x36, 0xa1, 0x91, 0xa1, 0xa8, 0xd9, 0xb9, 0x2d, 0x07, 0x0c, 0x46, 0xf1, 0xdc, 0x83,
	0x85, 0x51, 0x48, 0x18, 0x26, 0x40, 0x54, 0x2b, 0x0b, 0x0c, 0xcd, 0x75, 0x17, 0x5a, 0x39, 0x24,
	0x35, 0x1b, 0xa9, 0xe5, 0x34, 0x32, 0x9c, 0xe2, 0xb3, 0xa1, 0x69, 0x8a, 0x89, 0x21, 0x6b, 0x22,
	0xa8, 0xae, 0x4b, 0x8a, 0x66, 0xba, 0x03, 0xf5, 0x14, 0xa3, 0x68, 0x5a, 0x3a, 0x0e, 0x35, 0x42,
	0x71, 0x7c, 0x04, 0x95, 0xc4, 0x8b, 0x7a, 0x54, 0xac, 0xce, 0x6f, 0xce, 0xde, 0xab, 0x3f, 0xbc,
	0x37, 0x3a, 0xb1, 0x66, 0x01, 0x65, 0x3e, 0x1d, 0x2a, 0xf8, 0x30, 0xf1, 0xa9, 0x83, 0x78, 0xc7,
	0xd8, 0xad, 0xfd, 0xae, 0x0c, 0xb7, 0xa6, 0x01, 0xc8, 0xed, 0xf4, 0xa2, 0x15, 0x88, 0xd5, 0xd2,
	0xe6, 0xec, 0x3d, 0xcb, 0xdc, 0xa6, 0x82, 0xf1, 0x15, 0x9b, 0x99, 0x58, 0xb1, 0x1d, 0x98, 0x8b,
	0x39, 0x0f, 0xc5, 0xea, 0x2c, 0x0e, 0xea, 0x9d, 0x57, 0x1d, 0xd4, 0xfd, 0x43, 0xce, 0x43, 0x47,
	0xdb, 0xae, 0xfd, 0x6b, 0x06, 0xca, 0xaa, 0x4d, 0x7e, 0x94, 0xdb, 0x7e, 0x5a, 0x0f, 0xbf, 0x7d,
	0x2d, 0x32, 0xfc, 0xa3, 0x4a, 0xbe, 0xd9, 0xb6, 0x8e, 0xc0, 0x12, 0x7d, 0x2f, 0x61, 0x51, 0x0f,
	0x87, 0xdd, 0x7a, 0xf8, 0xc1, 0xf5, 0xe8, 0x8e, 0xb4, 0x31, 0x32, 0xa6, 0x4c, 0x2a, 0x31, 0xf5,
	0x02, 0xea, 0x3d, 0x41, 0x37, 0x54, 0x9e, 0x53, 0x73, 0x74, 0xb7, 0x1c, 0xf5, 0x69, 0x6f, 0x43,
	0x35, 0x1d, 0x0e, 0x01, 0xa8, 0x74, 0x9e, 0x3e, 0x73, 0xdb, 0xbb, 0x0b, 0x37, 0x48, 0x03, 0xaa,
	0xdb, 0x4f, 0x9e, 0x74, 0x76, 0x54, 0xab, 0x44, 0x5a, 0x00, 0x1f, 0xef, 0x1d, 0x1c, 0x76, 0x9c,
	0x63, 0xd5, 0x9e, 0x21, 0x75, 0xb0, 0x1e, 0x3f, 0xe9, 0x3c, 0x57, 0x8d, 0x59, 0xbb, 0x0f, 0xf5,
	0xdc, 0x10, 0xc8, 0x32, 0x90, 0xdd, 0xbd, 0xdd, 0xf6, 0xce, 0xf6, 0xf1, 0xde, 0xae, 0x7b, 0xb8,
	0xe7, 0xb8, 0xed, 0xa7, 0xc7, 0x8f, 0x17, 0x6e, 0x90, 0x37, 0x61, 0xfd, 0x68, 0x7f, 0xdb, 0xd9,
	0xdb, 0x75, 0x1f, 0xfd, 0xcc, 0xdd, 0x7e, 0xf2, 0x04, 0xe5, 0xf8, 0x71, 0xbc, 0xb7, 0xb3, 0xbf,
	0x50, 0x22, 0x9b, 0xb0, 0x31, 0x05, 0x70, 0xb4, 0x7d, 0xb0, 0xa7, 0x11, 0x33, 0xf6, 0xaf, 0x67,
	0x01, 0x76, 0x42, 0x4f, 0x08, 0xd6, 0x65, 0x34, 0xc1, 0xfa, 0xe9, 0xca, 0x38, 0xab, 0x66, 0x73,
	0xfc, 0x38, 0x66, 0x01, 0x59, 0x84, 0x39, 0xee, 0x9e, 0x65, 0x55, 0xb5, 0xcc, 0x3f, 0x61, 0x58,
	0x6b, 0x99, 0xc6, 0x9a, 0x09, 0x61, 0x29, 0x96, 0x21, 0x56, 0x4f, 0x49, 0x99, 0x29, 0xec, 0x0a,
	0x58, 0xdc, 0x8d, 0x4f, 0x98, 0x14, 0xa6, 0xc8, 0x56, 0xf8, 0xa1, 0x6a, 0x61, 0xfd, 0x34, 0x0a,
	0xb3, 0xa3, 0x32, 0xad, 0xb8, 0x0d, 0x55, 0x2a, 0xfb, 0x7a, 0x5f, 0xd7, 0xa9, 0x6e, 0x51, 0xd9,
	0x4f, 0xb7, 0xf5, 0x40, 0x48, 0x77, 0xe0, 0xf9, 0x98, 0xe2, 0x0d, 0xa7, 0x12, 0x08, 0x79, 0xe0,
	0xf9, 0x4a, 0x21, 0x12, 0x1f, 0x15, 0x35, 0xad, 0x10, 0x89, 0xaf, 0x14, 0x2a, 0xc8, 0x63, 0xfd,
	0x5e, 0x61, 0x72, 0xd9, 0x62, 0xf1, 0x21, 0xbe, 0x79, 0x2c, 0x81, 0xb2, 0x76, 0x59, 0x6c, 0x92,
	0x77, 0x2e, 0x10, 0xb2, 0x1d, 0x2b, 0xb1, 0xa2, 0x62, 0xb1, 0xa9, 0x63, 0x73, 0x22, 0xf1, 0xdb,
	0xb1, 0x22, 0x52, 0x62, 0x95, 0xdd, 0x26, 0x8f, 0x55, 0x8f, 0xaa, 0xc0, 0x29, 0x95, 0x22, 0x42,
	0x95, 0x4e, 0x60, 0x35, 0x4a, 0x54, 0x6d, 0x42, 0x43, 0x5d, 0xd5, 0xa5, 0xd7, 0xd3, 0xfe, 0xcc,
	0xeb, 0x54, 0x8a, 0x4f, 0xe5, 0xb1, 0x87, 0x2b, 0x6c, 0xff, 0x12, 0x6a, 0xea, 0xc8, 0xce, 0xa3,
	0x9d, 0x01, 0x56, 0x0c, 0x2f, 0x08, 0x5c, 0x3e, 0x94, 0x34, 0x51, 0x46, 0xb8, 0x16, 0x55, 0xa7,
	0xee, 0x05, 0x41, 0x47, 0xc9, 0x8e, 0xbd, 0x9e, 0xaa, 0x52, 0x09, 0x1d, 0xf0, 0x33, 0x9a, 0x83,
	0xcd, 0x20, 0xac, 0xa5, 0xe5, 0x19, 0x72, 0x13, 0x1a, 0x32, 0xf1, 0x62, 0x57, 0x72, 0xb7, 0xcf,
	0x85, 0x8e, 0xde, 0xaa, 0x03, 0x4a, 0x76, 0xcc, 0xf7, 0xb9, 0x90, 0xf6, 0x9f, 0x4b, 0x50, 0xd1,
	0xbd, 0x93, 0xbb, 0x30, 0xeb, 0x0f, 0xd2, 0x1b, 0x35, 0x19, 0x5d, 0xd2, 0xd3, 0xb1, 0x39, 0x4a,
	0x3d, 0x3d, 0x1c, 0x72, 0x4b, 0x3c, 0x5b, 0x58, 0xe2, 0x51, 0x4c, 0x95, 0xc7, 0x62, 0x4a, 0xc7,
	0xc9, 0x5c, 0x31, 0x4e, 0xa6, 0x87, 0xc3, 0x28, 0xd8, 0xac, 0x5c, 0xb0, 0xd9, 0x7f, 0x9c, 0x85,
	0xf2, 0xe3, 0x90, 0x9f, 0x63, 0xf5, 0xf7, 0xd5, 0x8d, 0xc4, 0xcd, 0x6f, 0xc7, 0xf3, 0x4e, 0x43,
	0x4b, 0xdb, 0xd3, 0x8e, 0x07, 0xf3, 0xe9, 0xf1, 0x60, 0x09, 0x2a, 0xc3, 0x88, 0x29, 0x71, 0x5d,
	0x8b, 0x87, 0x11, 0xbb, 0xea, 0x18, 0xb8, 0x0e, 0x58, 0x9b, 0xf5, 0x62, 0xea, 0xad, 0xb5, 0xaa,
	0x04, 0x18, 0x9d, 0xb7, 0xa1, 0x9a, 0xee, 0x30, 0x18, 0x6b, 0xf3, 0x8e, 0x65, 0x76, 0x17, 0xf2,
	0x16, 0xcc, 0x47, 0x54, 0x9e, 0xf3, 0xe4, 0x34, 0x1b, 0xe5, 0x1c, 0x22, 0x9a, 0x46, 0xdc, 0x9e,
	0x76, 0x3c, 0xad, 0x20, 0x24, 0x77, 0x2a, 0x79, 0x0f, 0xc0, 0xcf, 0x52, 0xd6, 0xdc, 0x92, 0x17,
	0xb3, 0xb5, 0x1a, 0x65, 0xb3, 0x93, 0x83, 0x91, 0xb7, 0xa1, 0xe2, 0xe1, 0x2a, 0x9a, 0xdb, 0xef,
	0xfc, 0xd8, 0xe2, 0x3a, 0x46, 0x4d, 0xd6, 0xa0, 0x1a, 0x27, 0x8c, 0x27, 0x4c, 0xbe, 0xc0, 0x2c,
	0x9a, 0x77, 0xb2, 0x76, 0xee, 0x98, 0xdb, 0x28, 0x1c, 0x73, 0x73, 0xe7, 0xab, 0x66, 0xfe, 0x7c,
	0x65, 0x1f, 0x43, 0x63, 0xfc, 0x84, 0xa0, 0x8f, 0x39, 0xe9, 0x0a, 0x35, 0x9c, 0xaa, 0x16, 0xb4,
	0x03, 0xf2, 0x36, 0xcc, 0x1b, 0xa5, 0x88, 0xa9, 0xcf, 0xba, 0xcc, 0x37, 0xc7, 0xa7, 0x96, 0x16,
	0x1f, 0x19, 0xa9, 0xfd, 0xb7, 0x32, 0xb4, 0x8a, 0x4f, 0x55, 0x97, 0x9f, 0xc3, 0x6e, 0x43, 0x35,
	0xb9, 0x70, 0x4f, 0x5e, 0x48, 0x2a, 0x90, 0xad, 0xe2, 0x58, 0xc9, 0xc5, 0x23, 0xd5, 0x54, 0xd3,
	0x9c, 0x5c, 0xb8, 0x31, 0x1e, 0xe4, 0x74, 0xd0, 0x56, 0x9c, 0x5a, 0x72, 0xa1, 0x4f, 0x76, 0x02,
	0x53, 0xec, 0xc2, 0x1d, 0xfa, 0x9e, 0xca, 0x6a, 0x03, 0x2a, 0x23, 0xa8, 0x95, 0x5c, 0x3c, 0x53,
	0xe2, 0x22, 0x72, 0x50, 0x40, 0xce, 0xa5, 0xc8, 0x83, 0x49, 0xe4, 0x49, 0x01, 0x59, 0x49, 0x91,
	0x8f, 0x26, 0x91, 0xfa, 0x8e, 0x9e, 0x22, 0xad, 0x14, 0x89, 0x77, 0xee, 0x14, 0x79, 0x1b, 0xaa,
	0x32, 0xf5, 0xb0, 0xaa, 0x3d, 0x94, 0x23, 0x0f, 0xe5, 0xc8, 0xc3, 0x9a, 0xf6, 0x50, 0xe6, 0x3d,
	0x94, 0xe3, 0x1e, 0x82, 0xee, 0x43, 0x4e, 0x78, 0x28, 0xc7, 0x3d, 0xac, 0xa7, 0xc8, 0x83, 0x49,
	0x64, 0xd1, 0xc3, 0x46, 0x8a, 0x7c, 0x34, 0x89, 0x2c, 0x7a, 0xd8, 0x4c, 0x91, 0x05, 0x0f, 0x6d,
	0x68, 0x26, 0x17, 0xae, 0x9f, 0xf8, 0x1a, 0x2d, 0xb0, 0xbe, 0x56, 0x9c, 0x7a, 0x72, 0xb1, 0x93,
	0xf8, 0x88, 0x44, 0x57, 0x4f, 0x58, 0x9c, 0x02, 0xe6, 0xb5, 0xab, 0x27, 0x2c, 0x36, 0xea, 0x0d,
	0xa8, 0x49, 0x36, 0xa0, 0x42, 0x7a, 0x83, 0x18, 0x4f, 0xba, 0x96, 0x33, 0x12, 0xa8, 0xeb, 0x7c,
	0xab, 0xf8, 0x82, 0x99, 0x4f, 0xfe, 0x52, 0x21, 0xf9, 0xbf, 0x7e, 0x40, 0x7d, 0xfd, 0x85, 0xba,
	0x7a, 0xf4, 0x1f, 0x41, 0xb3, 0xf0, 0xe4, 0x79, 0x79, 0x32, 0x2c, 0x43, 0x45, 0x5d, 0xd8, 0x87,
	0xc2, 0x9c, 0xe6, 0x4c, 0xcb, 0xfe, 0x05, 0x2c, 0x4e, 0x79, 0xfa, 0xbc, 0xf6, 0x35, 0x6b, 0x44,
	0x3f, 0x5b, 0xa0, 0xff, 0x47, 0x09, 0xc8, 0xe4, 0xab, 0xe8, 0xd7, 0x79, 0x32, 0x09, 0xb9, 0x70,
	0x0b, 0x5d, 0xd4, 0x42, 0x2e, 0x8e, 0x50, 0xa0, 0xd5, 0x27, 0xa9, 0xba, 0x9c, 0xaa, 0x4f, 0x8c,
	0xfa, 0x1e, 0x2c, 0x84, 0x3c, 0xf6, 0xdd, 0x01, 0x13, 0x19, 0x87, 0xbe, 0x85, 0xb4, 0x94, 0xfc,
	0x80, 0x89, 0x94, 0xe8, 0x01, 0x2c, 0x19, 0xa4, 0x09, 0xb8, 0x14, 0x5e, 0xd1, 0x37, 0x1f, 0x0d,
	0xd7, 0x81, 0xa7, 0x4d, 0x6c, 0x0a, 0xeb, 0x57, 0x3c, 0xd6, 0xbe, 0xb6, 0x89, 0xfc, 0x7d, 0x09,
	0xd6, 0x2e, 0x7f, 0xb9, 0x7d, 0x5d, 0xdd, 0x90, 0xf7, 0x60, 0x99, 0x45, 0xea, 0xea, 0x48, 0xdd,
	0x13, 0x26, 0xcd, 0x1c, 0x24, 0x9e, 0xa4, 0x66, 0x07, 0x5f, 0x34, 0xda, 0x47, 0x4c, 0xe2, 0x24,
	0x38, 0x9e, 0xa4, 0xf6, 0x97, 0x7a, 0x6c, 0x97, 0x3c, 0xfc, 0xbe, 0xb6, 0xb1, 0xdd, 0x82, 0x39,
	0x7c, 0x82, 0x4e, 0x0f, 0x13, 0xd8, 0x50, 0xec, 0x11, 0x3d, 0x77, 0xe9, 0xe7, 0xe9, 0x71, 0xa2,
	0x12, 0xd1, 0xf3, 0xbd, 0xcf, 0x03, 0xbb, 0x0f, 0x77, 0xae, 0x7e, 0x36, 0x7e, 0x6d, 0x6b, 0xf3,
	0x87, 0x92, 0x8e, 0x81, 0x4b, 0x1e, 0x92, 0xff, 0xb7, 0x8b, 0xf3, 0x45, 0x09, 0xec, 0x97, 0x3f,
	0x4a, 0xff, 0x77, 0x17, 0xc9, 0x3e, 0xc4, 0xb5, 0xb8, 0xe2, 0xf1, 0xfa, 0xba, 0xfd, 0xdb, 0x4f,
	0x61, 0xe3, 0xaa, 0xb7, 0xea, 0x6b, 0xf3, 0x59, 0x30, 0xb7, 0x37, 0x88, 0xe5, 0x8b, 0x87, 0x5f,
	0x35, 0xc1, 0xea, 0xe8, 0xf3, 0x11, 0xd9, 0x05, 0xd8, 0x65, 0xc2, 0x3b, 0x09, 0x69, 0x27, 0x94,
	0xa4, 0x95, 0x9d, 0x9b, 0x10, 0xb9, 0x36, 0xd6, 0xb6, 0x97, 0xbf, 0xf8, 0xfb, 0x3f, 0xbf, 0x9c,
	0x59, 0xb0, 0xeb, 0x5b, 0x67, 0x0f, 0xb6, 0x8c, 0xdd, 0x87, 0xa5, 0x6f, 0x92, 0xc7, 0x50, 0x77,
	0x28, 0x8d, 0x5e, 0x95, 0x66, 0x05, 0x69, 0x6e, 0xda, 0x0d, 0x45, 0x93, 0x1a, 0x2a, 0x9e, 0x3d,
	0xa8, 0x9b, 0x19, 0xa4, 0x9d, 0x68, 0x48, 0x1a, 0xf9, 0x47, 0xfb, 0x09, 0x96, 0x55, 0x64, 0x21,
	0x76, 0x53, 0xb1, 0xec, 0xe9, 0xce, 0xa3, 0xa1, 0xa2, 0xd9, 0x87, 0xe6, 0x2e, 0xf5, 0x5e, 0x99,
	0xe8, 0x36, 0x12, 0x2d, 0xda, 0xad, 0x9c, 0x57, 0x86, 0x69, 0x07, 0x6a, 0xbb, 0x34, 0xa4, 0xd7,
	0x1e, 0x4e, 0x66, 0xa4, 0x48, 0xda, 0x00, 0xe6, 0xad, 0xb0, 0x33, 0x94, 0x64, 0xa1, 0xf0, 0xef,
	0xcf, 0x03, 0xd1, 0xbb, 0x7a, 0x3c, 0x23, 0x4b, 0x45, 0xd5, 0x81, 0x46, 0xf6, 0x50, 0xa8, 0xc8,
	0x48, 0xe1, 0xdf, 0x1a, 0x28, 0x9e, 0xa0, 0x5b, 0x47, 0xba, 0x25, 0x7b, 0x01, 0xe9, 0x72, 0xd6,
	0x8a, 0xf0, 0xa7, 0x30, 0x9f, 0x7f, 0xf2, 0x53, 0x9c, 0xa3, 0x17, 0xd1, 0xbc, 0x66, 0x82, 0xf6,
	0x0e, 0xd2, 0xae, 0xda, 0x8b, 0x8a, 0x76, 0x8c, 0x43, 0x31, 0x7f, 0x04, 0x96, 0x3a, 0x75, 0x6c,
	0x07, 0x01, 0x69, 0x16, 0xfe, 0x93, 0x7a, 0x75, 0x54, 0x19, 0x1b, 0x1d, 0x55, 0xa0, 0x5a, 0x0e,
	0x5e, 0xf9, 0x5e, 0x46, 0x52, 0x98, 0xb4, 0x91, 0x99, 0xe2, 0x39, 0x82, 0x56, 0xf6, 0xde, 0xbc,
	0xd3, 0xa7, 0xfe, 0xe9, 0x44, 0x80, 0x8e, 0xa6, 0x31, 0x03, 0xda, 0x6f, 0x20, 0xe1, 0x8a, 0x4d,
	0x14, 0x61, 0xd1, 0x5e, 0x91, 0x1e, 0x40, 0x5d, 0xc7, 0xdc, 0x21, 0x8f, 0xda, 0xdd, 0xdc, 0x42,
	0x64, 0x0f, 0xe0, 0x13, 0x43, 0x5c, 0x43, 0xc6, 0x5b, 0xf6, 0xfc, 0x28, 0x60, 0xd1, 0xd8, 0x2c,
	0xac, 0x89, 0xbc, 0x57, 0xe7, 0x2b, 0x2c, 0x6c, 0xde, 0x5a, 0x11, 0x3a, 0xd0, 0xfc, 0x98, 0xca,
	0xdc, 0x93, 0xec, 0xb8, 0xcf, 0x8b, 0x53, 0x5e, 0x8d, 0xec, 0x0d, 0xa4, 0x5c, 0xb6, 0x6f, 0x2a,
	0xca, 0x82, 0xbd, 0xe2, 0xfc, 0x21, 0x54, 0x1c, 0x7a, 0xc2, 0xf9, 0xcb, 0x33, 0x7c, 0x09, 0x79,
	0xe6, 0x6d, 0xd0, 0x19, 0xae, 0x6c, 0x14, 0xc1, 0x33, 0xb8, 0xb9, 0xc3, 0xc3, 0x90, 0xfa, 0xf9,
	0xdb, 0xcd, 0xcb, 0xb8, 0x36, 0x91, 0x6b, 0xcd, 0x5e, 0x52, 0x5c, 0x13, 0xe6, 0x8a, 0x36, 0x81,
	0x95, 0x9d, 0x84, 0x7a, 0x92, 0x1e, 0x27, 0x5e, 0xb7, 0xcb, 0xfc, 0x23, 0xbf, 0x4f, 0x83, 0x61,
	0x48, 0x13, 0x41, 0xde, 0xbc, 0x5f, 0xf8, 0x05, 0xc7, 0x04, 0x60, 0xa2, 0xb7, 0xb7, 0xb0, 0xb7,
	0x4d, 0x7b, 0x1d, 0x7b, 0x9b, 0xce, 0x6a, 0xfa, 0xd4, 0x11, 0xf6, 0xba, 0xfb, 0xbc, 0x84, 0x55,
	0xf5, 0xd9, 0x85, 0xc5, 0xc2, 0x88, 0x7e, 0x32, 0xa4, 0x43, 0x2a, 0xc8, 0xfa, 0xd4, 0xfe, 0xb4,
	0x72, 0xa2, 0x2f, 0x1b, 0xfb, 0xda, 0xb0, 0x57, 0x26, 0xfc, 0xd3, 0x06, 0xa6, 0x9f, 0xc2, 0x28,
	0xfe, 0xe3, 0x7e, 0xa6, 0xb0, 0xa9, 0x7e, 0xbe, 0x07, 0x0b, 0x3a, 0x0d, 0x72, 0xbb, 0xda, 0xe5,
	0x61, 0x3a, 0x02, 0xd9, 0x37, 0xde, 0x2d, 0x3d, 0x7a, 0xf0, 0xe9, 0x56, 0x8f, 0xc9, 0xfe, 0xf0,
	0xe4, 0xbe, 0xcf, 0x07, 0xf8, 0x5b, 0x1f, 0x9f, 0x27, 0xc1, 0x96, 0xfe, 0xf9, 0xce, 0x3b, 0xe6,
	0xe7, 0x3b, 0x67, 0x0f, 0xb7, 0x7a, 0x3c, 0xfd, 0x21, 0xd0, 0x61, 0xe9, 0xa4, 0x82, 0xf2, 0xf7,
	0xfe, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x72, 0x27, 0xde, 0x4e, 0x2a, 0x24, 0x00, 0x00,
}

// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConn

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4

// OpenoltClient is the client API for Openolt service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type OpenoltClient interface {
	DisableOlt(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error)
	ReenableOlt(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error)
	ActivateOnu(ctx context.Context, in *Onu, opts ...grpc.CallOption) (*Empty, error)
	DeactivateOnu(ctx context.Context, in *Onu, opts ...grpc.CallOption) (*Empty, error)
	DeleteOnu(ctx context.Context, in *Onu, opts ...grpc.CallOption) (*Empty, error)
	OmciMsgOut(ctx context.Context, in *OmciMsg, opts ...grpc.CallOption) (*Empty, error)
	OnuPacketOut(ctx context.Context, in *OnuPacket, opts ...grpc.CallOption) (*Empty, error)
	UplinkPacketOut(ctx context.Context, in *UplinkPacket, opts ...grpc.CallOption) (*Empty, error)
	FlowAdd(ctx context.Context, in *Flow, opts ...grpc.CallOption) (*Empty, error)
	FlowRemove(ctx context.Context, in *Flow, opts ...grpc.CallOption) (*Empty, error)
	HeartbeatCheck(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Heartbeat, error)
	EnablePonIf(ctx context.Context, in *Interface, opts ...grpc.CallOption) (*Empty, error)
	DisablePonIf(ctx context.Context, in *Interface, opts ...grpc.CallOption) (*Empty, error)
	GetDeviceInfo(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*DeviceInfo, error)
	Reboot(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error)
	CollectStatistics(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error)
	CreateTrafficSchedulers(ctx context.Context, in *tech_profile.TrafficSchedulers, opts ...grpc.CallOption) (*Empty, error)
	RemoveTrafficSchedulers(ctx context.Context, in *tech_profile.TrafficSchedulers, opts ...grpc.CallOption) (*Empty, error)
	CreateTrafficQueues(ctx context.Context, in *tech_profile.TrafficQueues, opts ...grpc.CallOption) (*Empty, error)
	RemoveTrafficQueues(ctx context.Context, in *tech_profile.TrafficQueues, opts ...grpc.CallOption) (*Empty, error)
	EnableIndication(ctx context.Context, in *Empty, opts ...grpc.CallOption) (Openolt_EnableIndicationClient, error)
}

type openoltClient struct {
	cc *grpc.ClientConn
}

func NewOpenoltClient(cc *grpc.ClientConn) OpenoltClient {
	return &openoltClient{cc}
}

func (c *openoltClient) DisableOlt(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/DisableOlt", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) ReenableOlt(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/ReenableOlt", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) ActivateOnu(ctx context.Context, in *Onu, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/ActivateOnu", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) DeactivateOnu(ctx context.Context, in *Onu, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/DeactivateOnu", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) DeleteOnu(ctx context.Context, in *Onu, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/DeleteOnu", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) OmciMsgOut(ctx context.Context, in *OmciMsg, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/OmciMsgOut", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) OnuPacketOut(ctx context.Context, in *OnuPacket, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/OnuPacketOut", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) UplinkPacketOut(ctx context.Context, in *UplinkPacket, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/UplinkPacketOut", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) FlowAdd(ctx context.Context, in *Flow, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/FlowAdd", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) FlowRemove(ctx context.Context, in *Flow, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/FlowRemove", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) HeartbeatCheck(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Heartbeat, error) {
	out := new(Heartbeat)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/HeartbeatCheck", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) EnablePonIf(ctx context.Context, in *Interface, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/EnablePonIf", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) DisablePonIf(ctx context.Context, in *Interface, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/DisablePonIf", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) GetDeviceInfo(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*DeviceInfo, error) {
	out := new(DeviceInfo)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/GetDeviceInfo", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) Reboot(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/Reboot", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) CollectStatistics(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/CollectStatistics", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) CreateTrafficSchedulers(ctx context.Context, in *tech_profile.TrafficSchedulers, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/CreateTrafficSchedulers", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) RemoveTrafficSchedulers(ctx context.Context, in *tech_profile.TrafficSchedulers, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/RemoveTrafficSchedulers", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) CreateTrafficQueues(ctx context.Context, in *tech_profile.TrafficQueues, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/CreateTrafficQueues", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) RemoveTrafficQueues(ctx context.Context, in *tech_profile.TrafficQueues, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/RemoveTrafficQueues", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *openoltClient) EnableIndication(ctx context.Context, in *Empty, opts ...grpc.CallOption) (Openolt_EnableIndicationClient, error) {
	stream, err := c.cc.NewStream(ctx, &_Openolt_serviceDesc.Streams[0], "/openolt.Openolt/EnableIndication", opts...)
	if err != nil {
		return nil, err
	}
	x := &openoltEnableIndicationClient{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 Openolt_EnableIndicationClient interface {
	Recv() (*Indication, error)
	grpc.ClientStream
}

type openoltEnableIndicationClient struct {
	grpc.ClientStream
}

func (x *openoltEnableIndicationClient) Recv() (*Indication, error) {
	m := new(Indication)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

// OpenoltServer is the server API for Openolt service.
type OpenoltServer interface {
	DisableOlt(context.Context, *Empty) (*Empty, error)
	ReenableOlt(context.Context, *Empty) (*Empty, error)
	ActivateOnu(context.Context, *Onu) (*Empty, error)
	DeactivateOnu(context.Context, *Onu) (*Empty, error)
	DeleteOnu(context.Context, *Onu) (*Empty, error)
	OmciMsgOut(context.Context, *OmciMsg) (*Empty, error)
	OnuPacketOut(context.Context, *OnuPacket) (*Empty, error)
	UplinkPacketOut(context.Context, *UplinkPacket) (*Empty, error)
	FlowAdd(context.Context, *Flow) (*Empty, error)
	FlowRemove(context.Context, *Flow) (*Empty, error)
	HeartbeatCheck(context.Context, *Empty) (*Heartbeat, error)
	EnablePonIf(context.Context, *Interface) (*Empty, error)
	DisablePonIf(context.Context, *Interface) (*Empty, error)
	GetDeviceInfo(context.Context, *Empty) (*DeviceInfo, error)
	Reboot(context.Context, *Empty) (*Empty, error)
	CollectStatistics(context.Context, *Empty) (*Empty, error)
	CreateTrafficSchedulers(context.Context, *tech_profile.TrafficSchedulers) (*Empty, error)
	RemoveTrafficSchedulers(context.Context, *tech_profile.TrafficSchedulers) (*Empty, error)
	CreateTrafficQueues(context.Context, *tech_profile.TrafficQueues) (*Empty, error)
	RemoveTrafficQueues(context.Context, *tech_profile.TrafficQueues) (*Empty, error)
	EnableIndication(*Empty, Openolt_EnableIndicationServer) error
}

func RegisterOpenoltServer(s *grpc.Server, srv OpenoltServer) {
	s.RegisterService(&_Openolt_serviceDesc, srv)
}

func _Openolt_DisableOlt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).DisableOlt(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/DisableOlt",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).DisableOlt(ctx, req.(*Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_ReenableOlt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).ReenableOlt(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/ReenableOlt",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).ReenableOlt(ctx, req.(*Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_ActivateOnu_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Onu)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).ActivateOnu(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/ActivateOnu",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).ActivateOnu(ctx, req.(*Onu))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_DeactivateOnu_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Onu)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).DeactivateOnu(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/DeactivateOnu",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).DeactivateOnu(ctx, req.(*Onu))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_DeleteOnu_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Onu)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).DeleteOnu(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/DeleteOnu",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).DeleteOnu(ctx, req.(*Onu))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_OmciMsgOut_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(OmciMsg)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).OmciMsgOut(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/OmciMsgOut",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).OmciMsgOut(ctx, req.(*OmciMsg))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_OnuPacketOut_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(OnuPacket)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).OnuPacketOut(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/OnuPacketOut",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).OnuPacketOut(ctx, req.(*OnuPacket))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_UplinkPacketOut_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UplinkPacket)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).UplinkPacketOut(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/UplinkPacketOut",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).UplinkPacketOut(ctx, req.(*UplinkPacket))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_FlowAdd_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Flow)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).FlowAdd(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/FlowAdd",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).FlowAdd(ctx, req.(*Flow))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_FlowRemove_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Flow)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).FlowRemove(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/FlowRemove",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).FlowRemove(ctx, req.(*Flow))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_HeartbeatCheck_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).HeartbeatCheck(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/HeartbeatCheck",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).HeartbeatCheck(ctx, req.(*Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_EnablePonIf_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Interface)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).EnablePonIf(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/EnablePonIf",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).EnablePonIf(ctx, req.(*Interface))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_DisablePonIf_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Interface)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).DisablePonIf(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/DisablePonIf",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).DisablePonIf(ctx, req.(*Interface))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_GetDeviceInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).GetDeviceInfo(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/GetDeviceInfo",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).GetDeviceInfo(ctx, req.(*Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_Reboot_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).Reboot(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/Reboot",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).Reboot(ctx, req.(*Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_CollectStatistics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Empty)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).CollectStatistics(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/CollectStatistics",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).CollectStatistics(ctx, req.(*Empty))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_CreateTrafficSchedulers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(tech_profile.TrafficSchedulers)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).CreateTrafficSchedulers(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/CreateTrafficSchedulers",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).CreateTrafficSchedulers(ctx, req.(*tech_profile.TrafficSchedulers))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_RemoveTrafficSchedulers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(tech_profile.TrafficSchedulers)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).RemoveTrafficSchedulers(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/RemoveTrafficSchedulers",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).RemoveTrafficSchedulers(ctx, req.(*tech_profile.TrafficSchedulers))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_CreateTrafficQueues_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(tech_profile.TrafficQueues)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).CreateTrafficQueues(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/CreateTrafficQueues",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).CreateTrafficQueues(ctx, req.(*tech_profile.TrafficQueues))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_RemoveTrafficQueues_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(tech_profile.TrafficQueues)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(OpenoltServer).RemoveTrafficQueues(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/openolt.Openolt/RemoveTrafficQueues",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(OpenoltServer).RemoveTrafficQueues(ctx, req.(*tech_profile.TrafficQueues))
	}
	return interceptor(ctx, in, info, handler)
}

func _Openolt_EnableIndication_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(Empty)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(OpenoltServer).EnableIndication(m, &openoltEnableIndicationServer{stream})
}

type Openolt_EnableIndicationServer interface {
	Send(*Indication) error
	grpc.ServerStream
}

type openoltEnableIndicationServer struct {
	grpc.ServerStream
}

func (x *openoltEnableIndicationServer) Send(m *Indication) error {
	return x.ServerStream.SendMsg(m)
}

var _Openolt_serviceDesc = grpc.ServiceDesc{
	ServiceName: "openolt.Openolt",
	HandlerType: (*OpenoltServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "DisableOlt",
			Handler:    _Openolt_DisableOlt_Handler,
		},
		{
			MethodName: "ReenableOlt",
			Handler:    _Openolt_ReenableOlt_Handler,
		},
		{
			MethodName: "ActivateOnu",
			Handler:    _Openolt_ActivateOnu_Handler,
		},
		{
			MethodName: "DeactivateOnu",
			Handler:    _Openolt_DeactivateOnu_Handler,
		},
		{
			MethodName: "DeleteOnu",
			Handler:    _Openolt_DeleteOnu_Handler,
		},
		{
			MethodName: "OmciMsgOut",
			Handler:    _Openolt_OmciMsgOut_Handler,
		},
		{
			MethodName: "OnuPacketOut",
			Handler:    _Openolt_OnuPacketOut_Handler,
		},
		{
			MethodName: "UplinkPacketOut",
			Handler:    _Openolt_UplinkPacketOut_Handler,
		},
		{
			MethodName: "FlowAdd",
			Handler:    _Openolt_FlowAdd_Handler,
		},
		{
			MethodName: "FlowRemove",
			Handler:    _Openolt_FlowRemove_Handler,
		},
		{
			MethodName: "HeartbeatCheck",
			Handler:    _Openolt_HeartbeatCheck_Handler,
		},
		{
			MethodName: "EnablePonIf",
			Handler:    _Openolt_EnablePonIf_Handler,
		},
		{
			MethodName: "DisablePonIf",
			Handler:    _Openolt_DisablePonIf_Handler,
		},
		{
			MethodName: "GetDeviceInfo",
			Handler:    _Openolt_GetDeviceInfo_Handler,
		},
		{
			MethodName: "Reboot",
			Handler:    _Openolt_Reboot_Handler,
		},
		{
			MethodName: "CollectStatistics",
			Handler:    _Openolt_CollectStatistics_Handler,
		},
		{
			MethodName: "CreateTrafficSchedulers",
			Handler:    _Openolt_CreateTrafficSchedulers_Handler,
		},
		{
			MethodName: "RemoveTrafficSchedulers",
			Handler:    _Openolt_RemoveTrafficSchedulers_Handler,
		},
		{
			MethodName: "CreateTrafficQueues",
			Handler:    _Openolt_CreateTrafficQueues_Handler,
		},
		{
			MethodName: "RemoveTrafficQueues",
			Handler:    _Openolt_RemoveTrafficQueues_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "EnableIndication",
			Handler:       _Openolt_EnableIndication_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "voltha_protos/openolt.proto",
}
