// 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"
	common "github.com/opencord/voltha-protos/v3/go/common"
	tech_profile "github.com/opencord/voltha-protos/v3/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)

// ID from public import voltha_protos/common.proto
type ID = common.ID

// IDs from public import voltha_protos/common.proto
type IDs = common.IDs

// AdminState from public import voltha_protos/common.proto
type AdminState = common.AdminState

// OperStatus from public import voltha_protos/common.proto
type OperStatus = common.OperStatus

// ConnectStatus from public import voltha_protos/common.proto
type ConnectStatus = common.ConnectStatus

// OperationResp from public import voltha_protos/common.proto
type OperationResp = common.OperationResp

// ValueType from public import voltha_protos/common.proto
type ValueType = common.ValueType

// ValueSpecifier from public import voltha_protos/common.proto
type ValueSpecifier = common.ValueSpecifier

// ReturnValues from public import voltha_protos/common.proto
type ReturnValues = common.ReturnValues

// TestModeKeys from public import voltha_protos/common.proto
type TestModeKeys = common.TestModeKeys

var TestModeKeys_name = common.TestModeKeys_name
var TestModeKeys_value = common.TestModeKeys_value

const TestModeKeys_api_test = TestModeKeys(common.TestModeKeys_api_test)

// AdminState_Types from public import voltha_protos/common.proto
type AdminState_Types = common.AdminState_Types

var AdminState_Types_name = common.AdminState_Types_name
var AdminState_Types_value = common.AdminState_Types_value

const AdminState_UNKNOWN = AdminState_Types(common.AdminState_UNKNOWN)
const AdminState_PREPROVISIONED = AdminState_Types(common.AdminState_PREPROVISIONED)
const AdminState_ENABLED = AdminState_Types(common.AdminState_ENABLED)
const AdminState_DISABLED = AdminState_Types(common.AdminState_DISABLED)
const AdminState_DOWNLOADING_IMAGE = AdminState_Types(common.AdminState_DOWNLOADING_IMAGE)
const AdminState_DELETED = AdminState_Types(common.AdminState_DELETED)

// OperStatus_Types from public import voltha_protos/common.proto
type OperStatus_Types = common.OperStatus_Types

var OperStatus_Types_name = common.OperStatus_Types_name
var OperStatus_Types_value = common.OperStatus_Types_value

const OperStatus_UNKNOWN = OperStatus_Types(common.OperStatus_UNKNOWN)
const OperStatus_DISCOVERED = OperStatus_Types(common.OperStatus_DISCOVERED)
const OperStatus_ACTIVATING = OperStatus_Types(common.OperStatus_ACTIVATING)
const OperStatus_TESTING = OperStatus_Types(common.OperStatus_TESTING)
const OperStatus_ACTIVE = OperStatus_Types(common.OperStatus_ACTIVE)
const OperStatus_FAILED = OperStatus_Types(common.OperStatus_FAILED)

// ConnectStatus_Types from public import voltha_protos/common.proto
type ConnectStatus_Types = common.ConnectStatus_Types

var ConnectStatus_Types_name = common.ConnectStatus_Types_name
var ConnectStatus_Types_value = common.ConnectStatus_Types_value

const ConnectStatus_UNKNOWN = ConnectStatus_Types(common.ConnectStatus_UNKNOWN)
const ConnectStatus_UNREACHABLE = ConnectStatus_Types(common.ConnectStatus_UNREACHABLE)
const ConnectStatus_REACHABLE = ConnectStatus_Types(common.ConnectStatus_REACHABLE)

// OperationResp_OperationReturnCode from public import voltha_protos/common.proto
type OperationResp_OperationReturnCode = common.OperationResp_OperationReturnCode

var OperationResp_OperationReturnCode_name = common.OperationResp_OperationReturnCode_name
var OperationResp_OperationReturnCode_value = common.OperationResp_OperationReturnCode_value

const OperationResp_OPERATION_SUCCESS = OperationResp_OperationReturnCode(common.OperationResp_OPERATION_SUCCESS)
const OperationResp_OPERATION_FAILURE = OperationResp_OperationReturnCode(common.OperationResp_OPERATION_FAILURE)
const OperationResp_OPERATION_UNSUPPORTED = OperationResp_OperationReturnCode(common.OperationResp_OPERATION_UNSUPPORTED)

// ValueType_Type from public import voltha_protos/common.proto
type ValueType_Type = common.ValueType_Type

var ValueType_Type_name = common.ValueType_Type_name
var ValueType_Type_value = common.ValueType_Type_value

const ValueType_EMPTY = ValueType_Type(common.ValueType_EMPTY)
const ValueType_DISTANCE = ValueType_Type(common.ValueType_DISTANCE)

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 GroupMember_InterfaceType int32

const (
	GroupMember_PON           GroupMember_InterfaceType = 0
	GroupMember_EPON_1G_PATH  GroupMember_InterfaceType = 1
	GroupMember_EPON_10G_PATH GroupMember_InterfaceType = 2
)

var GroupMember_InterfaceType_name = map[int32]string{
	0: "PON",
	1: "EPON_1G_PATH",
	2: "EPON_10G_PATH",
}

var GroupMember_InterfaceType_value = map[string]int32{
	"PON":           0,
	"EPON_1G_PATH":  1,
	"EPON_10G_PATH": 2,
}

func (x GroupMember_InterfaceType) String() string {
	return proto.EnumName(GroupMember_InterfaceType_name, int32(x))
}

func (GroupMember_InterfaceType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{43, 0}
}

type Group_GroupMembersCommand int32

const (
	Group_ADD_MEMBERS    Group_GroupMembersCommand = 0
	Group_REMOVE_MEMBERS Group_GroupMembersCommand = 1
	Group_SET_MEMBERS    Group_GroupMembersCommand = 2
)

var Group_GroupMembersCommand_name = map[int32]string{
	0: "ADD_MEMBERS",
	1: "REMOVE_MEMBERS",
	2: "SET_MEMBERS",
}

var Group_GroupMembersCommand_value = map[string]int32{
	"ADD_MEMBERS":    0,
	"REMOVE_MEMBERS": 1,
	"SET_MEMBERS":    2,
}

func (x Group_GroupMembersCommand) String() string {
	return proto.EnumName(Group_GroupMembersCommand_name, int32(x))
}

func (Group_GroupMembersCommand) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{44, 0}
}

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
	//	*AlarmIndication_OnuLossOfSyncFailInd
	//	*AlarmIndication_OnuItuPonStatsInd
	//	*AlarmIndication_OnuDeactivationFailureInd
	//	*AlarmIndication_OnuRemoteDefectInd
	//	*AlarmIndication_OnuLossGemDelineationInd
	//	*AlarmIndication_OnuPhysicalEquipmentErrorInd
	//	*AlarmIndication_OnuLossOfAckInd
	//	*AlarmIndication_OnuDiffReachExceededInd
	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"`
}

type AlarmIndication_OnuLossOfSyncFailInd struct {
	OnuLossOfSyncFailInd *OnuLossOfKeySyncFailureIndication `protobuf:"bytes,12,opt,name=onu_loss_of_sync_fail_ind,json=onuLossOfSyncFailInd,proto3,oneof"`
}

type AlarmIndication_OnuItuPonStatsInd struct {
	OnuItuPonStatsInd *OnuItuPonStatsIndication `protobuf:"bytes,13,opt,name=onu_itu_pon_stats_ind,json=onuItuPonStatsInd,proto3,oneof"`
}

type AlarmIndication_OnuDeactivationFailureInd struct {
	OnuDeactivationFailureInd *OnuDeactivationFailureIndication `protobuf:"bytes,14,opt,name=onu_deactivation_failure_ind,json=onuDeactivationFailureInd,proto3,oneof"`
}

type AlarmIndication_OnuRemoteDefectInd struct {
	OnuRemoteDefectInd *OnuRemoteDefectIndication `protobuf:"bytes,15,opt,name=onu_remote_defect_ind,json=onuRemoteDefectInd,proto3,oneof"`
}

type AlarmIndication_OnuLossGemDelineationInd struct {
	OnuLossGemDelineationInd *OnuLossOfGEMChannelDelineationIndication `protobuf:"bytes,16,opt,name=onu_loss_gem_delineation_ind,json=onuLossGemDelineationInd,proto3,oneof"`
}

type AlarmIndication_OnuPhysicalEquipmentErrorInd struct {
	OnuPhysicalEquipmentErrorInd *OnuPhysicalEquipmentErrorIndication `protobuf:"bytes,17,opt,name=onu_physical_equipment_error_ind,json=onuPhysicalEquipmentErrorInd,proto3,oneof"`
}

type AlarmIndication_OnuLossOfAckInd struct {
	OnuLossOfAckInd *OnuLossOfAcknowledgementIndication `protobuf:"bytes,18,opt,name=onu_loss_of_ack_ind,json=onuLossOfAckInd,proto3,oneof"`
}

type AlarmIndication_OnuDiffReachExceededInd struct {
	OnuDiffReachExceededInd *OnuDifferentialReachExceededIndication `protobuf:"bytes,19,opt,name=onu_diff_reach_exceeded_ind,json=onuDiffReachExceededInd,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 (*AlarmIndication_OnuLossOfSyncFailInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuItuPonStatsInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuDeactivationFailureInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuRemoteDefectInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuLossGemDelineationInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuPhysicalEquipmentErrorInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuLossOfAckInd) isAlarmIndication_Data() {}

func (*AlarmIndication_OnuDiffReachExceededInd) 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
}

func (m *AlarmIndication) GetOnuLossOfSyncFailInd() *OnuLossOfKeySyncFailureIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuLossOfSyncFailInd); ok {
		return x.OnuLossOfSyncFailInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuItuPonStatsInd() *OnuItuPonStatsIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuItuPonStatsInd); ok {
		return x.OnuItuPonStatsInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuDeactivationFailureInd() *OnuDeactivationFailureIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuDeactivationFailureInd); ok {
		return x.OnuDeactivationFailureInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuRemoteDefectInd() *OnuRemoteDefectIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuRemoteDefectInd); ok {
		return x.OnuRemoteDefectInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuLossGemDelineationInd() *OnuLossOfGEMChannelDelineationIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuLossGemDelineationInd); ok {
		return x.OnuLossGemDelineationInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuPhysicalEquipmentErrorInd() *OnuPhysicalEquipmentErrorIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuPhysicalEquipmentErrorInd); ok {
		return x.OnuPhysicalEquipmentErrorInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuLossOfAckInd() *OnuLossOfAcknowledgementIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuLossOfAckInd); ok {
		return x.OnuLossOfAckInd
	}
	return nil
}

func (m *AlarmIndication) GetOnuDiffReachExceededInd() *OnuDifferentialReachExceededIndication {
	if x, ok := m.GetData().(*AlarmIndication_OnuDiffReachExceededInd); ok {
		return x.OnuDiffReachExceededInd
	}
	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),
		(*AlarmIndication_OnuLossOfSyncFailInd)(nil),
		(*AlarmIndication_OnuItuPonStatsInd)(nil),
		(*AlarmIndication_OnuDeactivationFailureInd)(nil),
		(*AlarmIndication_OnuRemoteDefectInd)(nil),
		(*AlarmIndication_OnuLossGemDelineationInd)(nil),
		(*AlarmIndication_OnuPhysicalEquipmentErrorInd)(nil),
		(*AlarmIndication_OnuLossOfAckInd)(nil),
		(*AlarmIndication_OnuDiffReachExceededInd)(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"`
	RemarkOuterPbits     bool     `protobuf:"varint,4,opt,name=remark_outer_pbits,json=remarkOuterPbits,proto3" json:"remark_outer_pbits,omitempty"`
	RemarkInnerPbits     bool     `protobuf:"varint,5,opt,name=remark_inner_pbits,json=remarkInnerPbits,proto3" json:"remark_inner_pbits,omitempty"`
	AddInnerTag          bool     `protobuf:"varint,6,opt,name=add_inner_tag,json=addInnerTag,proto3" json:"add_inner_tag,omitempty"`
	RemoveInnerTag       bool     `protobuf:"varint,7,opt,name=remove_inner_tag,json=removeInnerTag,proto3" json:"remove_inner_tag,omitempty"`
	TranslateInnerTag    bool     `protobuf:"varint,8,opt,name=translate_inner_tag,json=translateInnerTag,proto3" json:"translate_inner_tag,omitempty"`
	TranslateOuterTag    bool     `protobuf:"varint,9,opt,name=translate_outer_tag,json=translateOuterTag,proto3" json:"translate_outer_tag,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
}

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

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

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

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

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

func (m *ActionCmd) GetTranslateOuterTag() bool {
	if m != nil {
		return m.TranslateOuterTag
	}
	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"`
	GroupId              uint32      `protobuf:"fixed32,14,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
	TechProfileId        uint32      `protobuf:"fixed32,15,opt,name=tech_profile_id,json=techProfileId,proto3" json:"tech_profile_id,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
}

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

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

type OnuItuPonAlarm struct {
	PonNi                 uint32   `protobuf:"fixed32,1,opt,name=pon_ni,json=ponNi,proto3" json:"pon_ni,omitempty"`
	OnuId                 uint32   `protobuf:"fixed32,2,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
	AlarmId               uint32   `protobuf:"fixed32,3,opt,name=alarm_id,json=alarmId,proto3" json:"alarm_id,omitempty"`
	Type                  uint32   `protobuf:"fixed32,4,opt,name=type,proto3" json:"type,omitempty"`
	RateThresdholdRising  uint64   `protobuf:"fixed64,5,opt,name=rate_thresdhold_rising,json=rateThresdholdRising,proto3" json:"rate_thresdhold_rising,omitempty"`
	RateThresdholdFalling uint64   `protobuf:"fixed64,6,opt,name=rate_thresdhold_falling,json=rateThresdholdFalling,proto3" json:"rate_thresdhold_falling,omitempty"`
	RateRangeLower        uint64   `protobuf:"fixed64,7,opt,name=rate_range_lower,json=rateRangeLower,proto3" json:"rate_range_lower,omitempty"`
	RateRangeUpper        uint64   `protobuf:"fixed64,8,opt,name=rate_range_upper,json=rateRangeUpper,proto3" json:"rate_range_upper,omitempty"`
	ThresholdLimit        uint64   `protobuf:"fixed64,9,opt,name=threshold_limit,json=thresholdLimit,proto3" json:"threshold_limit,omitempty"`
	ActiveSoakTime        uint32   `protobuf:"fixed32,10,opt,name=active_soak_time,json=activeSoakTime,proto3" json:"active_soak_time,omitempty"`
	ClearSoakTime         uint32   `protobuf:"fixed32,11,opt,name=clear_soak_time,json=clearSoakTime,proto3" json:"clear_soak_time,omitempty"`
	XXX_NoUnkeyedLiteral  struct{} `json:"-"`
	XXX_unrecognized      []byte   `json:"-"`
	XXX_sizecache         int32    `json:"-"`
}

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

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

var xxx_messageInfo_OnuItuPonAlarm proto.InternalMessageInfo

func (m *OnuItuPonAlarm) GetPonNi() uint32 {
	if m != nil {
		return m.PonNi
	}
	return 0
}

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

func (m *OnuItuPonAlarm) GetAlarmId() uint32 {
	if m != nil {
		return m.AlarmId
	}
	return 0
}

func (m *OnuItuPonAlarm) GetType() uint32 {
	if m != nil {
		return m.Type
	}
	return 0
}

func (m *OnuItuPonAlarm) GetRateThresdholdRising() uint64 {
	if m != nil {
		return m.RateThresdholdRising
	}
	return 0
}

func (m *OnuItuPonAlarm) GetRateThresdholdFalling() uint64 {
	if m != nil {
		return m.RateThresdholdFalling
	}
	return 0
}

func (m *OnuItuPonAlarm) GetRateRangeLower() uint64 {
	if m != nil {
		return m.RateRangeLower
	}
	return 0
}

func (m *OnuItuPonAlarm) GetRateRangeUpper() uint64 {
	if m != nil {
		return m.RateRangeUpper
	}
	return 0
}

func (m *OnuItuPonAlarm) GetThresholdLimit() uint64 {
	if m != nil {
		return m.ThresholdLimit
	}
	return 0
}

func (m *OnuItuPonAlarm) GetActiveSoakTime() uint32 {
	if m != nil {
		return m.ActiveSoakTime
	}
	return 0
}

func (m *OnuItuPonAlarm) GetClearSoakTime() uint32 {
	if m != nil {
		return m.ClearSoakTime
	}
	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{21}
}

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{22}
}

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{23}
}

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{24}
}

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{25}
}

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"`
	LofiStatus           string   `protobuf:"bytes,7,opt,name=lofi_status,json=lofiStatus,proto3" json:"lofi_status,omitempty"`
	LoamiStatus          string   `protobuf:"bytes,8,opt,name=loami_status,json=loamiStatus,proto3" json:"loami_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{26}
}

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 ""
}

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

func (m *OnuAlarmIndication) GetLoamiStatus() string {
	if m != nil {
		return m.LoamiStatus
	}
	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{27}
}

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{28}
}

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{29}
}

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{30}
}

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{31}
}

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{32}
}

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"`
	FailReason           uint32   `protobuf:"fixed32,3,opt,name=fail_reason,json=failReason,proto3" json:"fail_reason,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{33}
}

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
}

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

type OnuLossOfKeySyncFailureIndication 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 *OnuLossOfKeySyncFailureIndication) Reset()         { *m = OnuLossOfKeySyncFailureIndication{} }
func (m *OnuLossOfKeySyncFailureIndication) String() string { return proto.CompactTextString(m) }
func (*OnuLossOfKeySyncFailureIndication) ProtoMessage()    {}
func (*OnuLossOfKeySyncFailureIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{34}
}

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

var xxx_messageInfo_OnuLossOfKeySyncFailureIndication proto.InternalMessageInfo

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

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

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

type OnuItuPonStatsIndication 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"`
	RdiErrors            uint64   `protobuf:"fixed64,3,opt,name=rdi_errors,json=rdiErrors,proto3" json:"rdi_errors,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_OnuItuPonStatsIndication proto.InternalMessageInfo

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

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

func (m *OnuItuPonStatsIndication) GetRdiErrors() uint64 {
	if m != nil {
		return m.RdiErrors
	}
	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{36}
}

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 OnuDeactivationFailureIndication 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"`
	FailReason           uint32   `protobuf:"fixed32,3,opt,name=fail_reason,json=failReason,proto3" json:"fail_reason,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_OnuDeactivationFailureIndication proto.InternalMessageInfo

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

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

func (m *OnuDeactivationFailureIndication) GetFailReason() uint32 {
	if m != nil {
		return m.FailReason
	}
	return 0
}

type OnuRemoteDefectIndication 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"`
	RdiErrors            uint64   `protobuf:"fixed64,3,opt,name=rdi_errors,json=rdiErrors,proto3" json:"rdi_errors,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_OnuRemoteDefectIndication proto.InternalMessageInfo

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

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

func (m *OnuRemoteDefectIndication) GetRdiErrors() uint64 {
	if m != nil {
		return m.RdiErrors
	}
	return 0
}

type OnuLossOfGEMChannelDelineationIndication 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"`
	DelineationErrors    uint32   `protobuf:"fixed32,4,opt,name=delineation_errors,json=delineationErrors,proto3" json:"delineation_errors,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_OnuLossOfGEMChannelDelineationIndication proto.InternalMessageInfo

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

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

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

func (m *OnuLossOfGEMChannelDelineationIndication) GetDelineationErrors() uint32 {
	if m != nil {
		return m.DelineationErrors
	}
	return 0
}

type OnuPhysicalEquipmentErrorIndication 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 *OnuPhysicalEquipmentErrorIndication) Reset()         { *m = OnuPhysicalEquipmentErrorIndication{} }
func (m *OnuPhysicalEquipmentErrorIndication) String() string { return proto.CompactTextString(m) }
func (*OnuPhysicalEquipmentErrorIndication) ProtoMessage()    {}
func (*OnuPhysicalEquipmentErrorIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{40}
}

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

var xxx_messageInfo_OnuPhysicalEquipmentErrorIndication proto.InternalMessageInfo

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

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

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

type OnuLossOfAcknowledgementIndication 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 *OnuLossOfAcknowledgementIndication) Reset()         { *m = OnuLossOfAcknowledgementIndication{} }
func (m *OnuLossOfAcknowledgementIndication) String() string { return proto.CompactTextString(m) }
func (*OnuLossOfAcknowledgementIndication) ProtoMessage()    {}
func (*OnuLossOfAcknowledgementIndication) Descriptor() ([]byte, []int) {
	return fileDescriptor_c072e7aa0dfd74d5, []int{41}
}

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

var xxx_messageInfo_OnuLossOfAcknowledgementIndication proto.InternalMessageInfo

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

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

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

type OnuDifferentialReachExceededIndication 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"`
	Distance             uint32   `protobuf:"fixed32,4,opt,name=distance,proto3" json:"distance,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_OnuDifferentialReachExceededIndication proto.InternalMessageInfo

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

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

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

func (m *OnuDifferentialReachExceededIndication) GetDistance() uint32 {
	if m != nil {
		return m.Distance
	}
	return 0
}

type GroupMember struct {
	InterfaceId          uint32                    `protobuf:"varint,1,opt,name=interface_id,json=interfaceId,proto3" json:"interface_id,omitempty"`
	InterfaceType        GroupMember_InterfaceType `protobuf:"varint,2,opt,name=interface_type,json=interfaceType,proto3,enum=openolt.GroupMember_InterfaceType" json:"interface_type,omitempty"`
	GemPortId            uint32                    `protobuf:"varint,3,opt,name=gem_port_id,json=gemPortId,proto3" json:"gem_port_id,omitempty"`
	Priority             uint32                    `protobuf:"varint,4,opt,name=priority,proto3" json:"priority,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                  `json:"-"`
	XXX_unrecognized     []byte                    `json:"-"`
	XXX_sizecache        int32                     `json:"-"`
}

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

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

var xxx_messageInfo_GroupMember proto.InternalMessageInfo

func (m *GroupMember) GetInterfaceId() uint32 {
	if m != nil {
		return m.InterfaceId
	}
	return 0
}

func (m *GroupMember) GetInterfaceType() GroupMember_InterfaceType {
	if m != nil {
		return m.InterfaceType
	}
	return GroupMember_PON
}

func (m *GroupMember) GetGemPortId() uint32 {
	if m != nil {
		return m.GemPortId
	}
	return 0
}

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

type Group struct {
	GroupId              uint32                    `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
	Command              Group_GroupMembersCommand `protobuf:"varint,2,opt,name=command,proto3,enum=openolt.Group_GroupMembersCommand" json:"command,omitempty"`
	Members              []*GroupMember            `protobuf:"bytes,3,rep,name=members,proto3" json:"members,omitempty"`
	Action               *Action                   `protobuf:"bytes,4,opt,name=action,proto3" json:"action,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                  `json:"-"`
	XXX_unrecognized     []byte                    `json:"-"`
	XXX_sizecache        int32                     `json:"-"`
}

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

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

var xxx_messageInfo_Group proto.InternalMessageInfo

func (m *Group) GetGroupId() uint32 {
	if m != nil {
		return m.GroupId
	}
	return 0
}

func (m *Group) GetCommand() Group_GroupMembersCommand {
	if m != nil {
		return m.Command
	}
	return Group_ADD_MEMBERS
}

func (m *Group) GetMembers() []*GroupMember {
	if m != nil {
		return m.Members
	}
	return nil
}

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

type ValueParam struct {
	Onu                  *Onu                  `protobuf:"bytes,1,opt,name=onu,proto3" json:"onu,omitempty"`
	Value                common.ValueType_Type `protobuf:"varint,2,opt,name=value,proto3,enum=common.ValueType_Type" json:"value,omitempty"`
	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
	XXX_unrecognized     []byte                `json:"-"`
	XXX_sizecache        int32                 `json:"-"`
}

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

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

var xxx_messageInfo_ValueParam proto.InternalMessageInfo

func (m *ValueParam) GetOnu() *Onu {
	if m != nil {
		return m.Onu
	}
	return nil
}

func (m *ValueParam) GetValue() common.ValueType_Type {
	if m != nil {
		return m.Value
	}
	return common.ValueType_EMPTY
}

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{46}
}

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.RegisterEnum("openolt.GroupMember_InterfaceType", GroupMember_InterfaceType_name, GroupMember_InterfaceType_value)
	proto.RegisterEnum("openolt.Group_GroupMembersCommand", Group_GroupMembersCommand_name, Group_GroupMembersCommand_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((*OnuItuPonAlarm)(nil), "openolt.OnuItuPonAlarm")
	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((*OnuLossOfKeySyncFailureIndication)(nil), "openolt.OnuLossOfKeySyncFailureIndication")
	proto.RegisterType((*OnuItuPonStatsIndication)(nil), "openolt.OnuItuPonStatsIndication")
	proto.RegisterType((*OnuProcessingErrorIndication)(nil), "openolt.OnuProcessingErrorIndication")
	proto.RegisterType((*OnuDeactivationFailureIndication)(nil), "openolt.OnuDeactivationFailureIndication")
	proto.RegisterType((*OnuRemoteDefectIndication)(nil), "openolt.OnuRemoteDefectIndication")
	proto.RegisterType((*OnuLossOfGEMChannelDelineationIndication)(nil), "openolt.OnuLossOfGEMChannelDelineationIndication")
	proto.RegisterType((*OnuPhysicalEquipmentErrorIndication)(nil), "openolt.OnuPhysicalEquipmentErrorIndication")
	proto.RegisterType((*OnuLossOfAcknowledgementIndication)(nil), "openolt.OnuLossOfAcknowledgementIndication")
	proto.RegisterType((*OnuDifferentialReachExceededIndication)(nil), "openolt.OnuDifferentialReachExceededIndication")
	proto.RegisterType((*GroupMember)(nil), "openolt.GroupMember")
	proto.RegisterType((*Group)(nil), "openolt.Group")
	proto.RegisterType((*ValueParam)(nil), "openolt.ValueParam")
	proto.RegisterType((*Empty)(nil), "openolt.Empty")
}

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

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

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

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

func (c *openoltClient) OnuItuPonAlarmSet(ctx context.Context, in *OnuItuPonAlarm, opts ...grpc.CallOption) (*Empty, error) {
	out := new(Empty)
	err := c.cc.Invoke(ctx, "/openolt.Openolt/OnuItuPonAlarmSet", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, 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
	PerformGroupOperation(context.Context, *Group) (*Empty, error)
	GetExtValue(context.Context, *ValueParam) (*common.ReturnValues, error)
	OnuItuPonAlarmSet(context.Context, *OnuItuPonAlarm) (*Empty, 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)
}

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

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

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

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,
		},
		{
			MethodName: "PerformGroupOperation",
			Handler:    _Openolt_PerformGroupOperation_Handler,
		},
		{
			MethodName: "GetExtValue",
			Handler:    _Openolt_GetExtValue_Handler,
		},
		{
			MethodName: "OnuItuPonAlarmSet",
			Handler:    _Openolt_OnuItuPonAlarmSet_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "EnableIndication",
			Handler:       _Openolt_EnableIndication_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "voltha_protos/openolt.proto",
}
