XKL-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY,
 OBJECT-TYPE,
    NOTIFICATION-TYPE,
    enterprises,
    Integer32,
    Unsigned32,
    TimeTicks,
    Counter64
        FROM SNMPv2-SMI
    MODULE-COMPLIANCE,
    OBJECT-GROUP,
    NOTIFICATION-GROUP
        FROM SNMPv2-CONF
    DisplayString,
    TEXTUAL-CONVENTION
        FROM SNMPv2-TC
    ifIndex,
    ifAdminStatus,
    ifOperStatus
        FROM IF-MIB;

xkl MODULE-IDENTITY
    LAST-UPDATED    "202601200000Z"
    ORGANIZATION    "XKL, LLC"
    CONTACT-INFO
        "postal:   XKL, LLC
                   11601 Willows Rd NE, Suite 101
                   Redmond, WA 98052

         email:    support@xkl.com"
    DESCRIPTION
        "Revise the MAX-ACCESS to read-only for the following:
            - xklWSSHardwareManufacturer
            - xklWSSHardwareManufactureDate
            - xklWSSHardwarePartNumber
            - xklWSSHardwareSerialNumber
            - xklOCMHardwareManufacturer
            - xklOCMHardwareManufactureDate
            - xklOCMHardwarePartNumber
            - xklOCMHardwareSerialNumber"
    REVISION        "202601200000Z"
    DESCRIPTION
        "Add table for WSS and OCM hardware reporting:
            - Add xklWSSHardwareCount
            - Add xklWSSHardwareEntry
            - Add xklWSSHardwareTable
                - xklWSSHardwareIndex
                - xklWSSHardwareManufacturer
                - xklWSSHardwareManufactureDate
                - xklWSSHardwarePartNumber
                - xklWSSHardwareSerialNumber
            - Add xklOCMHardwareCount
            - Add xklOCMHardwareEntry
            - Add xklOCMHardwareTable
                - xklOCMHardwareIndex
                - xklOCMHardwareManufacturer
                - xklOCMHardwareManufactureDate
                - xklOCMHardwarePartNumber
                - xklOCMHardwareSerialNumber"
    REVISION        "202601140000Z"
    DESCRIPTION
        "Add table for DQ*400 transceiver Tx modulator counters:
            - xklWaveMediaSideTxModTable
            - xklClientMediaSideTxModTable
         Correct the xklWSSBandEntry syntax to XklWSSBandEntry.
         Correct the order of new elements under XklTransportEntry."
    REVISION        "202512120000Z"
    DESCRIPTION
        "Add xklTransportTemp1
             xklTransportTemp2
             xklTransportTemp3
             xklTransportTemp4
             xklTransportTemp1HiAlrmThreshold
             xklTransportTemp2HiAlrmThreshold
             xklTransportTemp3HiAlrmThreshold
             xklTransportTemp4HiAlrmThreshold
             xklTransportTemp1LoAlrmThreshold
             xklTransportTemp2LoAlrmThreshold
             xklTransportTemp3LoAlrmThreshold
             xklTransportTemp4LoAlrmThreshold
             xklTransportTemp1HiWarnThreshold
             xklTransportTemp2HiWarnThreshold
             xklTransportTemp3HiWarnThreshold
             xklTransportTemp4HiWarnThreshold
             xklTransportTemp1LoWarnThreshold
             xklTransportTemp2LoWarnThreshold
             xklTransportTemp3LoWarnThreshold
             xklTransportTemp4LoWarnThreshold"
    REVISION        "202512090000Z"
    DESCRIPTION
        "Change PM Rx DGD label text"
    REVISION        "202512080000Z"
    DESCRIPTION
        "Add table for WSS band reporting:
            - Add xklWSSBandEntry
            - Add xklWSSBandTable
                - xklWSSBandIndex1
                - xklWSSBandIndex2
                - xklWSSBandCenterFreq
                - xklWSSBandBandwidth
                - xklWSSBandAttenuation
                - xklWSSBandRxPwr
                - xklWSSBandPort
                - xklWSSBandPortName"
    REVISION        "202512010000Z"
    DESCRIPTION
        "Add preliminary 800G related encapsulations:
            - fourx100GAUI1
            - fourx100GAUI1S
            - fourx100GAUI1L
            - sixx100GAUI1
            - sixx100GAUI1S
            - sixx100GAUI1L
            - eightx100GAUI1
            - eightx100GAUI1S
            - eightx100GAUI1L
            - twox200GAUI2
            - twox200GAUI2S
            - twox200GAUI2L
            - threex200GAUI2
            - threex200GAUI2S
            - threex200GAUI2L
            - fourx200GAUI2
            - fourx200GAUI2S
            - fourx200GAUI2L
            - twox200GAUI4
            - onex400GAUI4
            - onex400GAUI4S
            - onex400GAUI4L
            - twox400GAUI4
            - twox400GAUI4S
            - twox400GAUI4L
            - eighthundredGAUI8
            - eighthundredGAUI8S
            - eighthundredGAUI8L"
    REVISION        "202511110000Z"
    DESCRIPTION
        "Update certain OID names by replacing 'FreFEC' with 'PreFEC'.
         Include '%' in the units for PMEthRxUtil and PMEthTxUtil."
    REVISION        "202510300000Z"
    DESCRIPTION
        "Add system types dfr, dfs to xklProducts."
    REVISION        "202509190000Z"
    DESCRIPTION
        "Add tables for DQ*400 transceiver host and media side counters:
            - xklWaveMediaSidePMTable
            - xklClientMediaSidePMTable
            - xklWaveHostSideRxBERTable
            - xklClientHostSideRxBERTable
            - xklWaveHostSideTxBERTable
            - xklClientHostSideTxBERTable
            - xklWaveHostSideRxPMTable
            - xklClientHostSideRxPMTable
            - xklWaveHostSideTxPMTable
            - xklClientHostSideTxPMTable
            - xklWaveHostSideRxPMSubIntTable
            - xklClientHostSideRxPMSubIntTable
            - xklWaveHostSideTxPMSubIntTable
            - xklClientHostSideTxPMSubIntTable
            - xklWaveHostSideRxPMEthTable
            - xklClientHostSideRxPMEthTable
            - xklWaveHostSideTxPMEthTable
            - xklClientHostSideTxPMEthTable"
    REVISION        "202508080000Z"
    DESCRIPTION
        "Add Datapath traps for remote client status:
            - Add xklDatapathRemoteClientDown
            - Add xklDatapathRemoteClientUp"
    REVISION        "202505050000Z"
    DESCRIPTION
        "Update SYNTAX names:
            - xklDatapathClientPortEntry to XklDatapathClientPortEntry
            - xklDatapathWavePortEntry to XklDatapathWavePortEntry"
    REVISION        "202503110000Z"
    DESCRIPTION
        "Add MXL port status info for DAT100-8:
            - Add xklDatapathClientPortEntry
            - Add xklDatapathClientPortTable
                - Add xklDatapathClientPortRxFrameCount
                - Add xklDatapathClientPortRxDropCount
                - Add xklDatapathClientPortRxUtilization
                - Add xklDatapathClientPortTxFrameCount
                - Add xklDatapathClientPortTxDropCount
                - Add xklDatapathClientPortTxUtilization
            - Add xklDatapathWavePortEntry
            - Add xklDatapathWavePortTable
                - Add xklDatapathWavePortRxFrameCount
                - Add xklDatapathWavePortRxDropCount
                - Add xklDatapathWavePortRxUtilization
                - Add xklDatapathWavePortTxFrameCount
                - Add xklDatapathWavePortTxDropCount
                - Add xklDatapathWavePortTxUtilization"
    REVISION        "202502250000Z"
    DESCRIPTION
        "Rename xklLineProtectionSwitchState to xklLineProtectionActiveLine."
    REVISION        "202502190000Z"
    DESCRIPTION
        "Add DAT100-8 system identifier to xklProducts"
    REVISION        "202501130000Z"
    DESCRIPTION
        "Support Line Protection reporting:
            - Add xklLineProtectionSwitch trap
            - Add xklLineProtectionEntry
            - Add xklLineProtectionTable
                - Add xklLineProtectionIndex
                - Add xklLineProtectionSwitchState
                - Add xklLineProtectionEnabled
                - Add xklLineProtectionPrimaryLine
                - Add xklLineProtectionMonitorDevice
                - Add xklLineProtectionAutoReversion
            - Add xklLineProtectionGroup"
    REVISION        "202412100000Z"
    DESCRIPTION
        "Add alert to xklPowerStatus"
    REVISION        "202410140000Z"
    DESCRIPTION
        "Support DUA:
            - Add xklDUAGroupTable and xklDUAGroupGroup."
    REVISION        "202410010000Z"
    DESCRIPTION
        "Support DUA:
            - Add xklEDFAName to xklEDFALineChange and xklEDFAAlarmChange traps."
    REVISION        "202409060000Z"
    DESCRIPTION
        "Support DUA:
            - Add XklDUAGroupNumberEnum
            - Add system type dua to xklProducts.
            - Add xklEDFAGroupNumber and xklEDFAGroupName to 
            xklEDFATable and xklEDFAGroup.
            - Add xklOTDRLatestMeasurementOTDRGroupNumber and
            xklOTDRLatestMeasurementOTDRGroupName to 
            xklOTDRLatestMeasurementTable and xklOTDRLatestMeasurementGroup.
            - Add xklOTDRLatestMeasurementOTDRGroupNumber and
            xklOTDRLatestMeasurementOTDRGroupName to xklAutomaticOTDRTriggered trap."
    REVISION        "202407310000Z"
    DESCRIPTION
        "Add xklTransceiverModuleESNR to xklTransceiverModuleTable
         and xklTransceiverModuleGroup"
    REVISION        "202407020000Z"
    DESCRIPTION
        "Add notReady, fault, ioError and lowPower to xklTransportStatus"
    REVISION        "202406260000Z"
    DESCRIPTION
        "Support Automatic OTDR:
         - Add xklAutomaticOTDRTriggered trap.
         - Add xklOTDRLatestMeasurementTable."
    REVISION        "202404300000Z"
    DESCRIPTION
        "Support performance monitoring counters on CB400 transceivers:
            - Add the following counters to xklTransceiverModuleTable 
            and xklTransceiverModuleGroup:
                    xklTransceiverModuleOSNR,
                    xklTransceiverModuleRxBits,
                    xklTransceiverModuleRxCorrectedBits,
                    xklTransceiverModuleRxFrames,
                    xklTransceiverModuleRxFrameUncorrectedErrors,
                    xklTransceiverModuleTxBitsGroup0,
                    xklTransceiverModuleTxCorrectedBitsGroup0,
                    xklTransceiverModuleTxFramesGroup0,
                    xklTransceiverModuleTxFrameUncorrectedErrorsGroup0,
                    xklTransceiverModuleTxBitsGroup1,
                    xklTransceiverModuleTxCorrectedBitsGroup1,
                    xklTransceiverModuleTxFramesGroup1,
                    xklTransceiverModuleTxFrameUncorrectedErrorsGroup1,
                    xklTransceiverModuleTxBitsGroup2,
                    xklTransceiverModuleTxCorrectedBitsGroup2,
                    xklTransceiverModuleTxFramesGroup2,
                    xklTransceiverModuleTxFrameUncorrectedErrorsGroup2,
                    xklTransceiverModuleTxBitsGroup3,
                    xklTransceiverModuleTxCorrectedBitsGroup3,
                    xklTransceiverModuleTxFramesGroup3,
                    xklTransceiverModuleTxFrameUncorrectedErrorsGroup3
            - Add Counter64 type to IMPORTS"
    REVISION        "202403140000Z"
    DESCRIPTION
        "Support BKtel Raman:
            Modify xklRamanTable:
                - remove unsupported columns: 
                    xklRamanPump1LaserPower, xklRamanPump2LaserPower, 
                    xklRamanPump3LaserStatus, xklRamanPump3LaserTemp, 
                    xklRamanPump3LaserCurrent, xklRamanPump3LaserPower, 
                    xklRamanAPROSCDetection, xklRamanOSCInputPower, 
                    xklRamanOSCLossOfSignalAlarm
                - add xklRamanCompositePumpsLaserPower
                - mark xklRamanLastServiceTime as deprecated 
                    and add it to xklDeprecatedGroup
                - add control types automaticOutputControl, automaticPumpCurrent, 
                    fence, disabled to xklRamanControlType
                - add modes booster and preamp to xklRamanMode
                - remove mode raman from xklRamanMode
                - update xklRamanOutputOpticalPower unit 'dBm' to 'mW'
                - add types g652 and g655 to xklRamanFiberType
                - add amplifier states los, warning, alarm, reset and unknown 
                    to xklRamanAmplificationState 
            Modify xklRamanAlarmChange:
                - remove xklRamanOSCLossOfSignalAlarm"
    REVISION        "202312190000Z"
    DESCRIPTION
        "Updated email within CONTACT-INFO."
    REVISION        "202310050000Z"
    DESCRIPTION
        "Update MIB syntax conforming to SMIv2."
    REVISION        "202308250000Z"
    DESCRIPTION
        "Add xklEDFAModuleAlarms to xklEDFAAlarmChange.
         Add xklRamanModuleAlarms to xklRamanAlarmChange.
         Add disabled to xklEDFAControlType."
    REVISION        "202308150000Z"
    DESCRIPTION
        "Add xklTransceiverModuleTable."
    REVISION        "202307090000Z"
    DESCRIPTION
        "Add 2x100GAUI2, 1x100GAUI2 to xklTransportEncapsulation."
    REVISION        "202301090000Z"
    DESCRIPTION
        "Add system types dqm400-4, dqm400-12 to xklProducts."
    REVISION        "202212280000Z"
    DESCRIPTION
        "Update the index of transport interface traps xklTransceiverAdded,
            xklTransceiverRemoved, xklRxPowerOK, xklRxPowerHiAlrm,
            xklRxPowerLoAlrm, xklRxPowerHiWarn, xklRxPowerLoWarn.
         Add xklTransportLinkDown, xklTransportLinkUp traps.
         Add xklTransportLinkUpDownTrapEnable in xklTransportTable."
    REVISION        "202208180000Z"
    DESCRIPTION
        "Add DQT-400 transport loopbacks xklTransportFramedLoopback,
         xklTransportUnframedLoopback, xklTransportFramedElectricalLoopback,
         xklTransportUnframedElectricalLoopback to xklTransportTable."
    REVISION        "202208080000Z"
    DESCRIPTION
        "Add 100BaseFX to xklTransportEncapsulation."
    REVISION        "202205090000Z"
    DESCRIPTION
        "Add system types dqt400-4, dqt400-12 to xklProducts.
         Add qsfp28, qsfpdd, osfp to xklTransportType.
         Add 1xCAUI4, 2xCAUI4, 3x100GAUI2, 4x100GAUI2ZR, 4x100GAUI2,
         400GAUI8ZR, 400GAUI8 to xklTransportEncapsulation."
    REVISION        "202111080000Z"
    DESCRIPTION
        "Add xklRxPowerOK, xklRxPowerHiAlrm, xklRxPowerLoAlrm,
         xklRxPowerHiWarn, and xklRxPowerLoWarn traps. Updated company info."
    REVISION        "201808010000Z"
    DESCRIPTION
        "Add object identifiers for new systems."
    REVISION        "201703030000Z"
    DESCRIPTION
        "Add new system types to xklProducts."
    REVISION        "201610070000Z"
    DESCRIPTION
        "Add qsfpplus to xklTransportType."
    REVISION        "201604200000Z"
    DESCRIPTION
        "Add xklPowerSupplyAdded/Removed and xklTransceiverAdded/Removed
         traps."
    REVISION        "201507220000Z"
    DESCRIPTION
        "Change xklTransportVendorOUI column type from OBJECT IDENTIFIER to
         OCTET STRING because it is not an OID."
    REVISION        "201503310000Z"
    DESCRIPTION
        "Add system type dqm10-12 to xklProducts."
    REVISION        "201501150000Z"
    DESCRIPTION
        "Extensive revisions to object descriptions."
    REVISION        "201311120000Z"
    DESCRIPTION
        "Top-level infrastructure of the XKL enterprise MIB tree."
    REVISION        "201310280000Z"
    DESCRIPTION
        "Deprecate xklEDFALastServiceTime, and remove raman from xklEDFAMode."
    REVISION        "201310180000Z"
    DESCRIPTION
        "Deprecate the OTM table and notifications."
    REVISION        "201309130000Z"
    DESCRIPTION
        "Convert table indices to non-accessible. Clean up and augment the fan
         alarm enumeration, EDFA modes, and amplifier positions."
    REVISION        "201309120000Z"
    DESCRIPTION
        "Update the xklTransportTable. Add new ITU flex-grid channel and
         tuning boundary specifications, aggregate Tx/Rx statuses, loopback
         status, and vendor information. Condense the aggregate module
         statuses. Augment the transport type list. Deprecate the critical
         error and warning counts."
    REVISION        "201203160000Z"
    DESCRIPTION
        "Lint and conform to SMIv2."
    REVISION        "201202060000Z"
    DESCRIPTION
        "Add xklTransportAUX1, xklTransportAUX2 and xklTransportVoltage."
    REVISION        "201112280001Z"
    DESCRIPTION
        "Update xklTransportEncapsulation enumeration."
    REVISION        "201112280000Z"
    DESCRIPTION
        "Add xklProducts entries."
    REVISION        "201112220000Z"
    DESCRIPTION
        "Add xklPowerDescr to xklPowerTable."
    REVISION        "201107260000Z"
    DESCRIPTION
        "Changed xklTrunk to xklOTM."
    REVISION        "201106210000Z"
    DESCRIPTION
        "Add xklTrunkTable."
    REVISION        "201105230000Z"
    DESCRIPTION
        "Add trunk up/down and xkl versions of link up/down and reload."
    REVISION        "201012080000Z"
    DESCRIPTION
        "Add Raman back-reflection."
    REVISION        "201007260000Z"
    DESCRIPTION
        "Add xklProducts entries."
    REVISION        "201002190000Z"
    DESCRIPTION
        "Updating postal address."
    REVISION        "200906240000Z"
    DESCRIPTION
        "Adding Raman and new EDFA data items."
    REVISION        "200904090000Z"
    DESCRIPTION
        "Preparation for 2.0 Release."
    REVISION        "200806090000Z"
    DESCRIPTION
        "Updating with EDFA data points."
    REVISION        "200608300000Z"
    DESCRIPTION
        "Updating for full SMIv2 compatibility."
    REVISION        "200507070000Z"
    DESCRIPTION
        "First revision."
    ::= { enterprises 21150 }

--conventions
-- XKL MIB

xklPro              OBJECT IDENTIFIER ::= { xkl 1 } --Proprietary
xklExp              OBJECT IDENTIFIER ::= { xkl 2 } --Experimental
xklProducts         OBJECT IDENTIFIER ::= { xkl 3 } --Product OIDs
xklCompliances      OBJECT IDENTIFIER ::= { xkl 4 } --Compliances

xklProTraps         OBJECT IDENTIFIER ::= { xklPro 0 } --Traps
xklProData          OBJECT IDENTIFIER ::= { xklPro 1 } --Data to be retreived
xklProGroups        OBJECT IDENTIFIER ::= { xklPro 2 } --Groups for MIB compliance

xklFanFail NOTIFICATION-TYPE
    OBJECTS     { xklFanControllerIndex }
    STATUS      current
    DESCRIPTION
        "Fan module fault or failure."
    ::= { xklProTraps 1 }

xklPowerFail NOTIFICATION-TYPE
    OBJECTS     { xklPowerIndex }
    STATUS      current
    DESCRIPTION
        "Power supply fault or failure."
    ::= { xklProTraps 2 }

xklFanUp NOTIFICATION-TYPE
    OBJECTS     { xklFanControllerIndex }
    STATUS      current
    DESCRIPTION
        "Fan module has come online."
    ::= { xklProTraps 3 }

xklPowerUp NOTIFICATION-TYPE
    OBJECTS     { xklPowerIndex }
    STATUS      current
    DESCRIPTION
        "Power supply has come online."
    ::= { xklProTraps 4 }

xklProtectionPathSwitch NOTIFICATION-TYPE
    OBJECTS     {
                    xklProtectionGroupIndex,
                    xklProtectionGroupSelResource
                }
    STATUS      current
    DESCRIPTION
        "Protection path transition has occurred."
    ::= { xklProTraps 5 }

xklTempStatusChange NOTIFICATION-TYPE
    OBJECTS     {
                    xklSensorIndex,
                    xklSensorDescription,
                    xklSensorTemp,
                    xklSensorStatus
                }
    STATUS      current
    DESCRIPTION
        "Temperature status has changed."
    ::= { xklProTraps 6 }


xklEDFALineChange NOTIFICATION-TYPE
    OBJECTS     {
                    xklEDFAIndex,
                    xklEDFAAmplificationState,
                    xklEDFAName
                }
    STATUS      current
    DESCRIPTION
        "EDFA line state has changed."
    ::= { xklProTraps 7 }

xklRamanLineChange NOTIFICATION-TYPE
    OBJECTS     {
                    xklRamanIndex,
                    xklRamanAmplificationState
                }
    STATUS      current
    DESCRIPTION
        "Raman line state has changed."
    ::= { xklProTraps 8 }

xklEDFAAlarmChange NOTIFICATION-TYPE
    OBJECTS     {
                    xklEDFAIndex,
                    xklEDFAInReset,
                    xklEDFADisabled,
                    xklEDFAMuted,
                    xklEDFACaseTemperatureAlarm,
                    xklEDFACommonAlarm,
                    xklEDFAPumpTemperatureAlarm,
                    xklEDFALossOfInputAlarm,
                    xklEDFALossOfOutputAlarm,
                    xklEDFAModuleAlarms,
                    xklEDFAName
                }
    STATUS      current
    DESCRIPTION
        "EDFA alarm/warning state has changed."
    ::= { xklProTraps 9 }

xklRamanAlarmChange NOTIFICATION-TYPE
    OBJECTS     {
                    xklRamanIndex,
                    xklRamanInReset,
                    xklRamanDisabled,
                    xklRamanMuted,
                    xklRamanCaseTemperatureAlarm,
                    xklRamanCommonAlarm,
                    xklRamanPumpTemperatureAlarm,
                    xklRamanPumpBiasAlarm,
                    xklRamanLossOfInputAlarm,
                    xklRamanLossOfOutputAlarm,
                    xklRamanModuleAlarms
                }
    STATUS      current
    DESCRIPTION
        "Raman alarm/warning state has changed."
    ::= { xklProTraps 10 }

xklColdStart NOTIFICATION-TYPE
    STATUS      current
    DESCRIPTION
        "System reload due to hard reset or power cycle."
    ::= { xklProTraps 11 }

xklWarmStart NOTIFICATION-TYPE
    STATUS      current
    DESCRIPTION
        "System reload due to soft reset, system fault or operator command."
    ::= { xklProTraps 12 }

xklLinkDown NOTIFICATION-TYPE
    OBJECTS     {
                    ifIndex,
                    ifAdminStatus,
                    ifOperStatus
                }
    STATUS      current
    DESCRIPTION
        "Interface entered down state."
    ::= { xklProTraps 13 }

xklLinkUp NOTIFICATION-TYPE
    OBJECTS     {
                    ifIndex,
                    ifAdminStatus,
                    ifOperStatus
                }
    STATUS      current
    DESCRIPTION
        "Interface entered up state."
    ::= { xklProTraps 14 }

xklOTMDown NOTIFICATION-TYPE
    OBJECTS     {
                    xklOTMIndex,
                    xklOTMStatus,
                    xklOTMDescr
                }
    STATUS      deprecated
    DESCRIPTION
        "Line/band transceiver entered down state."
    ::= { xklProTraps 15 }

xklOTMUp NOTIFICATION-TYPE
    OBJECTS     {
                    xklOTMIndex,
                    xklOTMStatus,
                    xklOTMDescr
                }
    STATUS      deprecated
    DESCRIPTION
        "Line/band transceiver entered up state."
    ::= { xklProTraps 16 }

xklPowerSupplyAdded NOTIFICATION-TYPE
    OBJECTS     { xklPowerIndex }
    STATUS      current
    DESCRIPTION
        "Power supply added to the system."
    ::= { xklProTraps 17 }

xklPowerSupplyRemoved NOTIFICATION-TYPE
    OBJECTS     { xklPowerIndex }
    STATUS      current
    DESCRIPTION
        "Power supply removed from the system."
    ::= { xklProTraps 18 }

xklTransceiverAdded NOTIFICATION-TYPE
    OBJECTS     { xklTransportIndex }
    STATUS      current
    DESCRIPTION
        "Transceiver added to the system."
    ::= { xklProTraps 19 }

xklTransceiverRemoved NOTIFICATION-TYPE
    OBJECTS     { xklTransportIndex }
    STATUS      current
    DESCRIPTION
        "Transceiver removed from the system."
    ::= { xklProTraps 20 }

xklRxPowerOK NOTIFICATION-TYPE
    OBJECTS     {
                    xklTransportIndex,
                    xklTransportDescr,
                    xklTransportReceivePower
                }
    STATUS      current
    DESCRIPTION
        "Transceiver Rx power returned to normal."
    ::= { xklProTraps 21 }

xklRxPowerHiAlrm NOTIFICATION-TYPE
    OBJECTS     {
                    xklTransportIndex,
                    xklTransportDescr,
                    xklTransportReceivePower,
                    xklTransportRxPowerHiAlrmThresh
                }
    STATUS      current
    DESCRIPTION
        "Transceiver Rx power exceeds high alarm threshold."
    ::= { xklProTraps 22 }

xklRxPowerLoAlrm NOTIFICATION-TYPE
    OBJECTS     {
                    xklTransportIndex,
                    xklTransportDescr,
                    xklTransportReceivePower,
                    xklTransportRxPowerLoAlrmThresh
                }
    STATUS      current
    DESCRIPTION
        "Transceiver Rx power below low alarm threshold."
    ::= { xklProTraps 23 }

xklRxPowerHiWarn NOTIFICATION-TYPE
    OBJECTS     {
                    xklTransportIndex,
                    xklTransportDescr,
                    xklTransportReceivePower,
                    xklTransportRxPowerHiWarnThresh
                }
    STATUS      current
    DESCRIPTION
        "Transceiver Rx power exceeds high warn threshold."
    ::= { xklProTraps 24 }

xklRxPowerLoWarn NOTIFICATION-TYPE
    OBJECTS     {
                    xklTransportIndex,
                    xklTransportDescr,
                    xklTransportReceivePower,
                    xklTransportRxPowerLoWarnThresh
                }
    STATUS      current
    DESCRIPTION
        "Transceiver Rx power below low warn threshold."
    ::= { xklProTraps 25 }

xklTransportLinkDown NOTIFICATION-TYPE
    OBJECTS     {
                    xklTransportIndex,
                    xklTransportStatus,
                    xklTransportRxStatus,
                    xklTransportTxStatus
                }
    STATUS      current
    DESCRIPTION
        "Interface entered down state."
    ::= { xklProTraps 26 }

xklTransportLinkUp NOTIFICATION-TYPE
    OBJECTS     {
                    xklTransportIndex,
                    xklTransportStatus,
                    xklTransportRxStatus,
                    xklTransportTxStatus
                }
    STATUS      current
    DESCRIPTION
        "Interface entered up state."
    ::= { xklProTraps 27 }


xklAutomaticOTDRTriggered NOTIFICATION-TYPE
    OBJECTS     {
                    xklOTDRLatestMeasurementOSCIndex,
                    xklOTDRLatestMeasurementOSCDescr,
                    xklOTDRLatestMeasurementResults,
                    xklOTDRLatestMeasurementDateTime,
                    xklOTDRLatestMeasurementOTDRGroupNumber,
                    xklOTDRLatestMeasurementOTDRGroupName
                }
    STATUS      current
    DESCRIPTION
        "Automatic OTDR has been triggered."
    ::= { xklProTraps 28 }

xklLineProtectionSwitch NOTIFICATION-TYPE
    OBJECTS     {
                    xklLineProtectionIndex,
                    xklLineProtectionActiveLine
                }
    STATUS      current
    DESCRIPTION
        "Line Protection switch has occurred."
    ::= { xklProTraps 29 }

xklDatapathRemoteClientDown NOTIFICATION-TYPE
    OBJECTS     {
                    xklDatapathClientPortIndex,
                    xklDatapathClientPortDescription
                }
    STATUS      current
    DESCRIPTION
        "Remote Datapath Client Port is down."
    ::= { xklProTraps 30 }

xklDatapathRemoteClientUp NOTIFICATION-TYPE
    OBJECTS     {
                    xklDatapathClientPortIndex,
                    xklDatapathClientPortDescription
                }
    STATUS      current
    DESCRIPTION
        "Remote Datapath Client Port is up."
    ::= { xklProTraps 31 }

-- XKL Proprietary tree

xklSysOs OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(0..255))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Operating System version."
    ::= { xklProData 1 }

-- XKL Syntax

XklDUAGroupNumberEnum ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
            "Represents a DUA group value."
    SYNTAX      INTEGER {
                    none(-1),
                    group0(0),
                    group1(1),
                    group2(2),
                    group3(3)
                }

XklTransceiverStatusEnum ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
            "Represents a transceiver module status value."
    SYNTAX      INTEGER {
                    other(1),
                    notPresent(2),
                    up(3),
                    ioError(4),
                    fault(5),
                    lowPower(6),
                    notReady(7),
                    disabled(9),
                    down(10),
                    alarm(11),
                    warning(12)
                }

-- XKL Transport MIBS

xklTransportCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of transport interfaces in this system."
    ::= {xklProData 2 }

xklTransportTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklTransportEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Transport interface table."
    ::= { xklProData 3 }

xklTransportEntry OBJECT-TYPE
    SYNTAX      XklTransportEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Transport interface table entry."
    INDEX       { xklTransportIndex }
    ::= { xklTransportTable 1 }

XklTransportEntry ::=
    SEQUENCE {
        xklTransportIndex
            Unsigned32,
        xklTransportStatus
            INTEGER,
        xklTransportDescr
            DisplayString,
        xklTransportType
            INTEGER,
        xklTransportEncapsulation
            INTEGER,
        xklTransportSerialNumber
            DisplayString,
        xklTransportCritErr
            Integer32,
        xklTransportWarn
            Integer32,
        xklTransportLaserStat
            INTEGER,
        xklTransportTemp
            Integer32,
        xklTransportTransmitPower
            Integer32,
        xklTransportReceivePower
            Integer32,
        xklTransportClockFreq
            Unsigned32,
        xklTransportAccumErrSecs
            Integer32,
        xklTransportLaserBias
            Integer32,
        xklTransportChannel
            Integer32,
        xklTransportTempHiAlrmThreshold
            Integer32,
        xklTransportTempLoAlrmThreshold
            Integer32,
        xklTransportTempHiWarnThreshold
            Integer32,
        xklTransportTempLoWarnThreshold
            Integer32,
        xklTransportBiasHiAlrmThreshold
            Integer32,
        xklTransportBiasLoAlrmThreshold
            Integer32,
        xklTransportBiasHiWarnThreshold
            Integer32,
        xklTransportBiasLoWarnThreshold
            Integer32,
        xklTransportTxPowerHiAlrmThresh
            Integer32,
        xklTransportTxPowerLoAlrmThresh
            Integer32,
        xklTransportTxPowerHiWarnThresh
            Integer32,
        xklTransportTxPowerLoWarnThresh
            Integer32,
        xklTransportRxPowerHiAlrmThresh
            Integer32,
        xklTransportRxPowerLoAlrmThresh
            Integer32,
        xklTransportRxPowerHiWarnThresh
            Integer32,
        xklTransportRxPowerLoWarnThresh
            Integer32,
        xklTransportAUX1
            Integer32,
        xklTransportAUX1HiAlrmThreshold
            Integer32,
        xklTransportAUX1LoAlrmThreshold
            Integer32,
        xklTransportAUX1HiWarnThreshold
            Integer32,
        xklTransportAUX1LoWarnThreshold
            Integer32,
        xklTransportAUX2
            Integer32,
        xklTransportAUX2HiAlrmThreshold
            Integer32,
        xklTransportAUX2LoAlrmThreshold
            Integer32,
        xklTransportAUX2HiWarnThreshold
            Integer32,
        xklTransportAUX2LoWarnThreshold
            Integer32,
        xklTransportVoltage
            Integer32,
        xklTransportVoltageHiAlrmThresh
            Integer32,
        xklTransportVoltageLoAlrmThresh
            Integer32,
        xklTransportVoltageHiWarnThresh
            Integer32,
        xklTransportVoltageLoWarnThresh
            Integer32,
        xklTransportTxStatus
            INTEGER,
        xklTransportRxStatus
            INTEGER,
        xklTransportChannelOffset
            Integer32,
        xklTransportChannelWidth
            Integer32,
        xklTransportMaxChannelOffset
            Integer32,
        xklTransportMaxChannelWidth
            Integer32,
        xklTransportMinChannelOffset
            Integer32,
        xklTransportMinChannelWidth
            Integer32,
        xklTransportVendorName
            DisplayString,
        xklTransportVendorPartNumber
            DisplayString,
        xklTransportVendorDateCode
            DisplayString,
        xklTransportVendorRevisionNumber
            DisplayString,
        xklTransportVendorLotCode
            DisplayString,
        xklTransportVendorOUI
            OCTET STRING,
        xklTransportElectricalLoopback
            INTEGER,
        xklTransportOpticalLoopback
            INTEGER,
        xklTransportFramedLoopback
            INTEGER,
        xklTransportUnframedLoopback
            INTEGER,
        xklTransportFramedElectricalLoopback
            INTEGER,
        xklTransportUnframedElectricalLoopback
            INTEGER,
        xklTransportLinkUpDownTrapEnable
            INTEGER,
        xklTransportTemp1
            Integer32,
        xklTransportTemp2
            Integer32,
        xklTransportTemp3
            Integer32,
        xklTransportTemp4
            Integer32,
        xklTransportTemp1HiAlrmThreshold
            Integer32,
        xklTransportTemp2HiAlrmThreshold
            Integer32,
        xklTransportTemp3HiAlrmThreshold
            Integer32,
        xklTransportTemp4HiAlrmThreshold
            Integer32,
        xklTransportTemp1LoAlrmThreshold
            Integer32,
        xklTransportTemp2LoAlrmThreshold
            Integer32,
        xklTransportTemp3LoAlrmThreshold
            Integer32,
        xklTransportTemp4LoAlrmThreshold
            Integer32,
        xklTransportTemp1HiWarnThreshold
            Integer32,
        xklTransportTemp2HiWarnThreshold
            Integer32,
        xklTransportTemp3HiWarnThreshold
            Integer32,
        xklTransportTemp4HiWarnThreshold
            Integer32,
        xklTransportTemp1LoWarnThreshold
            Integer32,
        xklTransportTemp2LoWarnThreshold
            Integer32,
        xklTransportTemp3LoWarnThreshold
            Integer32,
        xklTransportTemp4LoWarnThreshold
            Integer32
    }

xklTransportIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "Transport interface table index."
    ::= { xklTransportEntry 1 }

xklTransportStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    notPresent(2),
                    up(3),
                    notReady(7),
                    fault(8),
                    disabled(9),
                    down(10),
                    alarm(11),
                    warning(12),
                    ioError(13),
                    lowPower(14)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface laser status."
    ::= { xklTransportEntry 2 }
-- The following values are deprecated:
--   lol(4)
--   los(5)
--   loa(6)

xklTransportDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface description."
    ::= { xklTransportEntry 3 }

xklTransportType OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    sfp(2),
                    xfp(3),
                    sfpplus(4),
                    cxp(5),
                    cfp(6),
                    dwdmsfp(7),
                    dwdmxfp(8),
                    dwdmsfpplus(9),
                    dwdmcfp(10),
                    dwdmoif(11),
                    qsfpplus(12),
                    qsfp28(13),
                    qsfpdd(14),
                    osfp(15)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface module type."
    ::= { xklTransportEntry 4 }

xklTransportEncapsulation OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    fastethernet(2),
                    fddi(3),
                    gigabitethernet(4),
                    sonetOC3(5),
                    sonetSTM1(6),
                    sonetOC12(7),
                    sonetSTM4(8),
                    sonetOC48(9),
                    sonetSTM16(10),
                    fibrechannel1x(11),
                    fibrechannel2x(12),
                    fibrechannel4x(13),
                    copper10megabitethernet(14),
                    copperfastethernet(15),
                    coppergigabitethernet(16),
                    prbs(17),
                    tengigabitethernet(32),
                    sonetOC192(33),
                    sonetOC192FEC(34),
                    fibreChannel10x(35),
                    tengigabitethernetFEC(36),
                    fibreChannel8x(37),
                    onexCAUI4(38),
                    twoxCAUI4(39),
                    threex100GAUI2(40),
                    fourx100GAUI2ZR(41),
                    fourx100GAUI2(42),
                    fourhundredGAUI8ZR(43),
                    fourhundredGAUI8(44),
                    onehundredBaseFX(45),
                    twox100GAUI2(46),
                    onex100GAUI2(47),
                    fourx100GAUI1(48),
                    fourx100GAUI1S(49),
                    fourx100GAUI1L(50),
                    sixx100GAUI1(51),
                    sixx100GAUI1S(52),
                    sixx100GAUI1L(53),
                    eightx100GAUI1(54),
                    eightx100GAUI1S(55),
                    eightx100GAUI1L(56),
                    twox200GAUI2(57),
                    twox200GAUI2S(58),
                    twox200GAUI2L(59),
                    threex200GAUI2(60),
                    threex200GAUI2S(61),
                    threex200GAUI2L(62),
                    fourx200GAUI2(63),
                    fourx200GAUI2S(64),
                    fourx200GAUI2L(65),
                    twox200GAUI4(66),
                    onex400GAUI4(67),
                    onex400GAUI4S(68),
                    onex400GAUI4L(69),
                    twox400GAUI4(70),
                    twox400GAUI4S(71),
                    twox400GAUI4L(72),
                    eighthundredGAUI8(73),
                    eighthundredGAUI8S(74),
                    eighthundredGAUI8L(75)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface encapsulation."
    ::= { xklTransportEntry 5 }

xklTransportSerialNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface module serial number."
    ::= { xklTransportEntry 6 }

xklTransportCritErr OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "Interface critical error count since last counter reset."
    ::= { xklTransportEntry 7 }

xklTransportWarn OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "Interface warning count since last counter reset."
    ::= { xklTransportEntry 8 }

xklTransportLaserStat OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    active(2),
                    disabled(3),
                    testing(4)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface laser status."
    ::= { xklTransportEntry 9 }

xklTransportTemp OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface laser temperature (Celsius)."
    ::= { xklTransportEntry 10 }

xklTransportTransmitPower OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface laser transmit power (1/10 dBm)."
    ::= { xklTransportEntry 11 }

xklTransportReceivePower OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface laser receive power (1/10 dBm)."
    ::= { xklTransportEntry 12 }

xklTransportClockFreq OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "kHz"
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "Interface clock frequency (kHz)."
    ::= { xklTransportEntry 13 }

xklTransportAccumErrSecs OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "seconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface error state accumulated seconds."
    ::= { xklTransportEntry 14 }

xklTransportLaserBias OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "uA"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface laser bias (uA)."
    ::= { xklTransportEntry 15 }

xklTransportChannel OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "Interface channel number (ITU-T channel number or 0 if not applicable)."
    ::= { xklTransportEntry 16 }

xklTransportTempHiAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high temperature alarm threshold (Celsius)."
    ::= { xklTransportEntry 17 }

xklTransportTempLoAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low temperature alarm threshold (Celsius)."
    ::= { xklTransportEntry 18 }

xklTransportTempHiWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high temperature warning threshold (Celsius)."
    ::= { xklTransportEntry 19 }

xklTransportTempLoWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low temperature warning threshold (Celsius)."
    ::= { xklTransportEntry 20 }

xklTransportBiasHiAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "mA"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high bias alarm threshold (mA)."
    ::= { xklTransportEntry 21 }

xklTransportBiasLoAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "mA"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low bias alarm threshold (mA)."
    ::= { xklTransportEntry 22 }

xklTransportBiasHiWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "mA"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high bias warning threshold (mA)."
    ::= { xklTransportEntry 23 }

xklTransportBiasLoWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "mA"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low bias warning threshold (mA)."
    ::= { xklTransportEntry 24 }

xklTransportTxPowerHiAlrmThresh OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high transmit power alarm threshold (1/10 dBm)."
    ::= { xklTransportEntry 25 }

xklTransportTxPowerLoAlrmThresh OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low transmit power alarm threshold (1/10 dBm)."
    ::= { xklTransportEntry 26 }


xklTransportTxPowerHiWarnThresh OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high transmit power warning threshold (1/10 dBm)."
    ::= { xklTransportEntry 27 }

xklTransportTxPowerLoWarnThresh OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low transmit power warning threshold (1/10 dBm)."
    ::= { xklTransportEntry 28 }

xklTransportRxPowerHiAlrmThresh OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high receive power alarm threshold (1/10 dBm)."
    ::= { xklTransportEntry 29 }

xklTransportRxPowerLoAlrmThresh OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low receive power alarm threshold (1/10 dBm)."
    ::= { xklTransportEntry 30 }

xklTransportRxPowerHiWarnThresh OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high receive power warning threshold (1/10 dBm)."
    ::= { xklTransportEntry 31 }

xklTransportRxPowerLoWarnThresh OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low receive power warning threshold (1/10 dBm)."
    ::= { xklTransportEntry 32 }

xklTransportAUX1 OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface AUX1 value."
    ::= { xklTransportEntry 33 }

xklTransportAUX1HiAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high AUX1 alarm threshold."
    ::= { xklTransportEntry 34 }

xklTransportAUX1LoAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low AUX1 alarm threshold."
    ::= { xklTransportEntry 35 }

xklTransportAUX1HiWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high AUX1 warning threshold."
    ::= { xklTransportEntry 36 }

xklTransportAUX1LoWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low AUX1 warning threshold."
    ::= { xklTransportEntry 37 }

xklTransportAUX2 OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface AUX2 value."
    ::= { xklTransportEntry 38 }

xklTransportAUX2HiAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high AUX2 alarm threshold."
    ::= { xklTransportEntry 39 }

xklTransportAUX2LoAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low AUX2 alarm threshold."
    ::= { xklTransportEntry 40 }


xklTransportAUX2HiWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high AUX2 warning threshold."
    ::= { xklTransportEntry 41 }

xklTransportAUX2LoWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low AUX2 warning threshld."
    ::= { xklTransportEntry 42 }

xklTransportVoltage OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 mV"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface applied voltage (1/10 mV)."
    ::= { xklTransportEntry 43 }


xklTransportVoltageHiAlrmThresh OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 mV"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high voltage alarm threshold (1/10 mV)."
    ::= { xklTransportEntry 44 }

xklTransportVoltageLoAlrmThresh OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 mV"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low voltage alarm threshold (1/10 mV)."
    ::= { xklTransportEntry 45 }


xklTransportVoltageHiWarnThresh OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 mV"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high voltage warning threshold (1/10 mV)."
    ::= { xklTransportEntry 46 }

xklTransportVoltageLoWarnThresh OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 mV"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low voltage warning threshold (1/10 mV)."
    ::= { xklTransportEntry 47 }

xklTransportTxStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    absent(2),
                    fault(3),
                    alarm(4),
                    warning(5),
                    disabled(6),
                    lol(7),
                    up(8)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface transmitter status."
    ::= { xklTransportEntry 48 }

xklTransportRxStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    absent(2),
                    alarm(3),
                    warning(4),
                    los(5),
                    lol(6),
                    up(7)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface receiver status."
    ::= { xklTransportEntry 49 }

xklTransportChannelOffset OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface ITU-T DWDM channel center offset."
    ::= { xklTransportEntry 50 }

xklTransportChannelWidth OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface ITU-T DWDM channel width."
    ::= { xklTransportEntry 51 }

xklTransportMaxChannelOffset OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface ITU-T DWDM maximum channel center offset."
    ::= { xklTransportEntry 52 }

xklTransportMaxChannelWidth OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface ITU-T DWDM maximum channel width."
    ::= { xklTransportEntry 53 }

xklTransportMinChannelOffset OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface ITU-T DWDM minimum channel center offset."
    ::= { xklTransportEntry 54 }

xklTransportMinChannelWidth OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface ITU-T DWDM minimum channel width."
    ::= { xklTransportEntry 55 }

xklTransportVendorName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface vendor name."
    ::= { xklTransportEntry 56 }

xklTransportVendorPartNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface vendor part number."
    ::= { xklTransportEntry 57 }

xklTransportVendorDateCode OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface vendor manufacturing date code."
    ::= { xklTransportEntry 58 }

xklTransportVendorRevisionNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface vendor revision number."
    ::= { xklTransportEntry 59 }

xklTransportVendorLotCode OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface vendor lot code."
    ::= { xklTransportEntry 60 }

xklTransportVendorOUI OBJECT-TYPE
    SYNTAX      OCTET STRING(SIZE(3))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface vendor OUI."
    ::= { xklTransportEntry 61 }

xklTransportElectricalLoopback OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    unavailable(2),
                    disabled(3),
                    enabled(4)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface electrical loopback status."
    ::= { xklTransportEntry 62 }

xklTransportOpticalLoopback OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    unavailable(2),
                    disabled(3),
                    enabled(4)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface optical loopback status."
    ::= { xklTransportEntry 63 }

xklTransportFramedLoopback OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    unavailable(2),
                    disabled(3),
                    enabled(4)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface framed loopback status."
    ::= { xklTransportEntry 64 }

xklTransportUnframedLoopback OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    unavailable(2),
                    disabled(3),
                    enabled(4)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface unframed loopback status."
    ::= { xklTransportEntry 65 }

xklTransportFramedElectricalLoopback OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    unavailable(2),
                    disabled(3),
                    enabled(4)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface framed electrical loopback status."
    ::= { xklTransportEntry 66 }

xklTransportUnframedElectricalLoopback OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    unavailable(2),
                    disabled(3),
                    enabled(4)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface unframed electrical loopback status."
    ::= { xklTransportEntry 67 }

xklTransportLinkUpDownTrapEnable OBJECT-TYPE
    SYNTAX      INTEGER {
                    enabled(1),
                    disabled(2)
                } 
    MAX-ACCESS	read-write
    STATUS	current
    DESCRIPTION
        "Indicates whether linkUp/linkDown traps 
         should be generated for this transport interface."
    ::= { xklTransportEntry 68 }

xklTransportTemp1 OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface laser temperature 1 (Celsius)."
    ::= { xklTransportEntry 69 }

xklTransportTemp2 OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface laser temperature 2 (Celsius)."
    ::= { xklTransportEntry 70 }

xklTransportTemp3 OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface laser temperature 3 (Celsius)."
    ::= { xklTransportEntry 71 }

xklTransportTemp4 OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface laser temperature 4 (Celsius)."
    ::= { xklTransportEntry 72 }

xklTransportTemp1HiAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high temperature 1 alarm threshold (Celsius)."
    ::= { xklTransportEntry 73 }

xklTransportTemp2HiAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high temperature 2 alarm threshold (Celsius)."
    ::= { xklTransportEntry 74 }

xklTransportTemp3HiAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high temperature 3 alarm threshold (Celsius)."
    ::= { xklTransportEntry 75 }

xklTransportTemp4HiAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high temperature 4 alarm threshold (Celsius)."
    ::= { xklTransportEntry 76 }

xklTransportTemp1LoAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low temperature 1 alarm threshold (Celsius)."
    ::= { xklTransportEntry 77 }

xklTransportTemp2LoAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low temperature 2 alarm threshold (Celsius)."
    ::= { xklTransportEntry 78 }

xklTransportTemp3LoAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low temperature 3 alarm threshold (Celsius)."
    ::= { xklTransportEntry 79 }

xklTransportTemp4LoAlrmThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low temperature 4 alarm threshold (Celsius)."
    ::= { xklTransportEntry 80 }

xklTransportTemp1HiWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high temperature 1 warning threshold (Celsius)."
    ::= { xklTransportEntry 81 }

xklTransportTemp2HiWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high temperature 2 warning threshold (Celsius)."
    ::= { xklTransportEntry 82 }

xklTransportTemp3HiWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high temperature 3 warning threshold (Celsius)."
    ::= { xklTransportEntry 83 }

xklTransportTemp4HiWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface high temperature 4 warning threshold (Celsius)."
    ::= { xklTransportEntry 84 }

xklTransportTemp1LoWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low temperature 1 warning threshold (Celsius)."
    ::= { xklTransportEntry 85 }

xklTransportTemp2LoWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low temperature 2 warning threshold (Celsius)."
    ::= { xklTransportEntry 86 }

xklTransportTemp3LoWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low temperature 3 warning threshold (Celsius)."
    ::= { xklTransportEntry 87 }

xklTransportTemp4LoWarnThreshold OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Interface low temperature 4 warning threshold (Celsius)."
    ::= { xklTransportEntry 88 }

-- XKL fan Controller section
-- Table of all hardware components

xklFanControllerCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of fan modules in this system."
    ::= {xklProData 4 }

xklFanControllerTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklFanControllerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Fan module table."
    ::= { xklProData 5 }

xklFanControllerEntry OBJECT-TYPE
    SYNTAX      XklFanControllerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Fan module entry."
    INDEX       { xklFanControllerIndex }
    ::= { xklFanControllerTable 1 }

XklFanControllerEntry ::=
    SEQUENCE {
        xklFanControllerIndex
            Unsigned32,
        xklFanControllerStatus
            INTEGER
    }

xklFanControllerIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "Fan module table index."
    ::= { xklFanControllerEntry 1 }

xklFanControllerStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    normal(2),
                    offline(3),
                    error(4),
                    cmdReady(5),
                    alarm(6),
                    timerOverflow(7),
                    absent(8),
                    communicationError(9)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Fan module status."
    ::= { xklFanControllerEntry 2 }


xklFanUnitCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of blowers in this system."
    ::= {xklProData 6 }

xklFanUnitTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklFanUnitEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Blower table."
    ::= { xklProData 7 }

xklFanUnitEntry OBJECT-TYPE
    SYNTAX      XklFanUnitEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Blower table entry."
    INDEX       { xklFanUnitIndex }
    ::= { xklFanUnitTable 1 }

XklFanUnitEntry ::=
    SEQUENCE {
        xklFanUnitIndex
            Unsigned32,
        xklFanUnitController
            Integer32,
        xklFanUnitStatus
            INTEGER,
        xklFanUnitRequestedStep
            Integer32,
        xklFanUnitSpeedActual
             Integer32,
        xklFanUnitAlarm
            INTEGER,
        xklFanUnitMinSpeed
            Integer32,
        xklFanUnitMaxSpeed
            Integer32
    }

xklFanUnitIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Blower table index."
    ::= { xklFanUnitEntry 1 }

xklFanUnitController OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Blower fan module index."
    ::= { xklFanUnitEntry 2 }

xklFanUnitStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    normal(2),
                    off(3),
                    notPresent(4),
                    alarm(5),
                    cmdReady(6),
                    override(7),
                    testMode(8)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Blower status."
    ::= { xklFanUnitEntry 3 }

xklFanUnitRequestedStep OBJECT-TYPE
    SYNTAX      Integer32 (0..255)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Blower incremental step setting (0-255)."
    ::= { xklFanUnitEntry 4 }

xklFanUnitSpeedActual OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Blower actual speed (RPS)."
    ::= { xklFanUnitEntry 5 }

xklFanUnitAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    ok(2),
                    fanFailure(3),
                    fanOff(4),
                    commandReject(5),
                    underSpeed(6),
                    overSpeed(7)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Blower alarm status."
    ::= { xklFanUnitEntry 6 }

xklFanUnitMinSpeed OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Blower minimum speed (RPS)."
    ::= { xklFanUnitEntry 7 }

xklFanUnitMaxSpeed OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Blower maximum speed (RPS)."
    ::= { xklFanUnitEntry 8 }

-- XKL Power Supply section
-- Table of all hardware components

xklPowerCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of power supplies in this system."
    ::= {xklProData 8 }

xklPowerTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklPowerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Power supply table."
    ::= { xklProData 9 }

xklPowerEntry OBJECT-TYPE
    SYNTAX      XklPowerEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Power supply table entry."
    INDEX       { xklPowerIndex }
    ::= { xklPowerTable 1 }

XklPowerEntry ::=
    SEQUENCE {
        xklPowerIndex
            Unsigned32,
        xklPowerStatus
            INTEGER,
        xklPowerSerialNumber
            DisplayString,
        xklPowerVoltage
              Integer32,
        xklPowerCurrent
              Integer32,
        xklPowerDescr
            DisplayString
    }

xklPowerIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "Power supply table index."
    ::= { xklPowerEntry 1 }

xklPowerStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    normal(2),
                    offline(3),
                    nopower(4),
                    absent(5),
                    overtemp(6),
                    dcfault(7),
                    fanslow(8),
                    alert(9)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Power supply status."
    ::= { xklPowerEntry 2 }

xklPowerSerialNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Power supply serial number."
    ::= { xklPowerEntry 3 }

xklPowerVoltage OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "mV"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Power supply voltage (mV or 0 if not reportable)."
    ::= { xklPowerEntry 4 }

xklPowerCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "mA"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Power supply current (mA or 0 if not reportable)."
    ::= { xklPowerEntry 5 }

xklPowerDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Power supply description."
    ::= { xklPowerEntry 6 }


-- XKL Switch Complex section
-- Table of all hardware components

xklSwitchConnCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of switch connections."
    ::= {xklProData 10 }

xklSwitchConnTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklSwitchConnEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Switch connection table."
    ::= { xklProData 11 }

xklSwitchConnEntry OBJECT-TYPE
    SYNTAX      XklSwitchConnEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Switch connection table entry."
    INDEX       { xklSwitchConnIndex }
    ::= { xklSwitchConnTable 1 }

XklSwitchConnEntry ::=
    SEQUENCE {
        xklSwitchConnIndex
            Unsigned32,
        xklSwitchConnStatus
            INTEGER,
        xklSwitchConnInterfaceA
            Integer32,
        xklSwitchConnInterfaceB
            Integer32,
        xklSwitchConnChannel
            Integer32
    }

xklSwitchConnIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Switch connection table index."
    ::= { xklSwitchConnEntry 1 }

xklSwitchConnStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    connected(2),
                    disconnected(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Switch connection status."
    ::= { xklSwitchConnEntry 2 }

xklSwitchConnInterfaceA OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Connected interface A index."
    ::= { xklSwitchConnEntry 3 }

xklSwitchConnInterfaceB OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Connected interface B index."
    ::= { xklSwitchConnEntry 4 }

xklSwitchConnChannel OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "Connected DWDM channel."
    ::= { xklSwitchConnEntry 5 }

-- XKL Sensor information

xklSensorCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of sensors in this system."
    ::= {xklProData 12 }

xklSensorTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklSensorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Sensor table."
    ::= { xklProData 13 }

xklSensorEntry OBJECT-TYPE
    SYNTAX      XklSensorEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Sensor table entry."
    INDEX       { xklSensorIndex }
    ::= { xklSensorTable 1 }

XklSensorEntry ::=
    SEQUENCE {
        xklSensorIndex
            Unsigned32,
        xklSensorDescription
            DisplayString,
        xklSensorTemp
            Integer32,
        xklSensorLowAlarm
            Integer32,
        xklSensorLowWarn
             Integer32,
        xklSensorHighCritical
            Integer32,
        xklSensorHighAlarm
            Integer32,
        xklSensorHighWarn
             Integer32,
        xklSensorStatus
            INTEGER
    }

xklSensorIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "Sensor table index."
    ::= { xklSensorEntry 1 }

xklSensorDescription OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Sensor description."
    ::= { xklSensorEntry 2 }

xklSensorTemp OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Sensor temperature (Celsius)."
    ::= { xklSensorEntry 3 }

xklSensorLowAlarm OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Sensor low temperature alarm threshold (Celsius)."
    ::= { xklSensorEntry 4 }

xklSensorLowWarn OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Sensor low temperature warning threshold (Celsius)."
    ::= { xklSensorEntry 5 }

xklSensorHighCritical OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Sensor high temperature critical threshold (Celsius)."
    ::= { xklSensorEntry 6 }

xklSensorHighAlarm OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Sensor high temperature alarm threshold (Celsius)."
    ::= { xklSensorEntry 7 }

xklSensorHighWarn OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Sensor high temperature warning threshold (Celsius)."
    ::= { xklSensorEntry 8 }

xklSensorStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    normal(2),
                    notPresent(3),
                    highWarn(4),
                    highAlarm(5),
                    highCritical(6),
                    lowWarn(7),
                    lowAlarm(8)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Sensor status."
    ::= { xklSensorEntry 9 }

--Protection Path Section

xklProtectionGroupCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of protection groups available."
    ::= {xklProData 14 }

xklProtectionGroupTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklProtectionGroupEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Protection group table."
    ::= { xklProData 15 }

xklProtectionGroupEntry OBJECT-TYPE
    SYNTAX      XklProtectionGroupEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Protection group table entry."
    INDEX       { xklProtectionGroupIndex }
    ::= { xklProtectionGroupTable 1 }

XklProtectionGroupEntry ::=
    SEQUENCE {
        xklProtectionGroupIndex
            Unsigned32,
        xklProtectionGroupStatus
            INTEGER,
        xklProtectionGroupMaxWorking
            Unsigned32,
        xklProtectionGroupCurrWorking
            Unsigned32,
        xklProtectionGroupMaxProtection
            Unsigned32,
        xklProtectionGroupCurrProtection
            Unsigned32,
        xklProtectionGroupLastSwitchTime
            TimeTicks,
        xklProtectionGroupLastClearTime
            TimeTicks,
        xklProtectionGroupNumTransitions
            Unsigned32,
        xklProtectionGroupSelResource
            DisplayString,
        xklProtectionGroupWorkResources
            DisplayString,
        xklProtectionGroupProtResources
            DisplayString,
        xklProtectionGroupRevertive
            INTEGER,
        xklProtectionGroupLocked
            INTEGER,
        xklProtectionGroupLstSwtchManl
            INTEGER
    }

xklProtectionGroupIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "Protection group table index."
    ::= { xklProtectionGroupEntry 1 }

xklProtectionGroupStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    unused(2),
                    working(3),
                    protection(4)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protection group status."
    ::= { xklProtectionGroupEntry 2 }

xklProtectionGroupMaxWorking OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protection group maximum number of working members."
    ::= { xklProtectionGroupEntry 3 }

xklProtectionGroupCurrWorking OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protection group current number of working members."
    ::= { xklProtectionGroupEntry 4 }

xklProtectionGroupMaxProtection OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protection group maximum number of protection members."
    ::= { xklProtectionGroupEntry 5 }

xklProtectionGroupCurrProtection OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protect group current number of protection members."
    ::= { xklProtectionGroupEntry 6 }

xklProtectionGroupLastSwitchTime OBJECT-TYPE
    SYNTAX      TimeTicks
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protection group last transition system uptime."
    ::= { xklProtectionGroupEntry 7 }

xklProtectionGroupLastClearTime OBJECT-TYPE
    SYNTAX      TimeTicks
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protection group last counter clear system uptime."
    ::= { xklProtectionGroupEntry 8 }

xklProtectionGroupNumTransitions OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protection group number of transitions since last clear."
    ::= { xklProtectionGroupEntry 9 }

xklProtectionGroupSelResource OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protection group member currently in use."
    ::= { xklProtectionGroupEntry 10 }

xklProtectionGroupWorkResources OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protect group designated list of working members."
    ::= { xklProtectionGroupEntry 11 }

xklProtectionGroupProtResources OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protection group designated list of protection members."
    ::= { xklProtectionGroupEntry 12 }

xklProtectionGroupRevertive OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protection group revertive property."
    ::= { xklProtectionGroupEntry 13 }

xklProtectionGroupLocked OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protection group locked state property."
    ::= { xklProtectionGroupEntry 14 }

xklProtectionGroupLstSwtchManl OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Protection group last transition was manual property."
    ::= { xklProtectionGroupEntry 15 }

--EDFA Section

xklEDFACount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Maximum number of EDFA amplifiers available."
    ::= {xklProData 16 }

xklEDFATable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklEDFAEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "EDFA amplifier table."
    ::= { xklProData 17 }

xklEDFAEntry OBJECT-TYPE
    SYNTAX      XklEDFAEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "EDFA amplifier table entry."
    INDEX       { xklEDFAIndex }
    ::= { xklEDFATable 1 }

XklEDFAEntry ::=
    SEQUENCE {
        xklEDFAIndex
            Unsigned32,
        xklEDFALabel
            DisplayString,
        xklEDFAIsPresent
            INTEGER,
        xklEDFAInReset
            INTEGER,
        xklEDFADisabled
            INTEGER,
        xklEDFAMuted
            INTEGER,
        xklEDFACaseTemperatureAlarm
            INTEGER,
        xklEDFACommonAlarm
            INTEGER,
        xklEDFAPumpTemperatureAlarm
            INTEGER,
        xklEDFAPumpBiasAlarm
            INTEGER,
        xklEDFALossOfInputAlarm
            INTEGER,
        xklEDFALossOfOutputAlarm
            INTEGER,
        xklEDFAManufacturer
            DisplayString,
        xklEDFAModuleType
            DisplayString,
        xklEDFASerialNum
            DisplayString,
        xklEDFAManufactureDate
            DisplayString,
        xklEDFALastResetTime
            DisplayString,
        xklEDFALastServiceTime
            DisplayString,
        xklEDFAControlType
            INTEGER,
        xklEDFAControlSetPoint
            Integer32,
        xklEDFAControlSetPointUnits
            DisplayString,
        xklEDFAMode
            INTEGER,
        xklEDFAModuleAlarms
            DisplayString,
        xklEDFAInputOpticalPower
            Integer32,
        xklEDFAOutputOpticalPower
            Integer32,
        xklEDFACaseTemp
            Integer32,
        xklEDFAPumpLaserStatus
            INTEGER,
        xklEDFAPumpLaserTemp
            Integer32,
        xklEDFAPumpLaserCurrent
            Integer32,
        xklEDFAPumpLaserPower
            Integer32,
        xklEDFAAmplificationState
            INTEGER,
        xklEDFAName
            DisplayString,
        xklEDFAGroupNumber
            XklDUAGroupNumberEnum,
        xklEDFAGroupName
            DisplayString
    }

xklEDFAIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "EDFA amplifier table index."
    ::= { xklEDFAEntry 1 }

xklEDFALabel OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier display label."
    ::= { xklEDFAEntry 2 }

xklEDFAIsPresent OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier slot is populated property."
    ::= { xklEDFAEntry 3 }

xklEDFAInReset OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier is in reset property."
    ::= { xklEDFAEntry 4 }

xklEDFADisabled OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    disabled(2),
                    enabled(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier is disabled property."
    ::= { xklEDFAEntry 5 }

xklEDFAMuted OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    muted(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier is muted property."
    ::= { xklEDFAEntry 6 }

xklEDFACaseTemperatureAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier case temperature alarm."
    ::= { xklEDFAEntry 7 }

xklEDFACommonAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier common alarm."
    ::= { xklEDFAEntry 8 }

xklEDFAPumpTemperatureAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier pump temperature alarm."
    ::= { xklEDFAEntry 9 }

xklEDFAPumpBiasAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier pump bias alarm."
    ::= { xklEDFAEntry 10 }

xklEDFALossOfInputAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier loss of input alarm."
    ::= { xklEDFAEntry 11 }

xklEDFALossOfOutputAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier loss of output alarm."
    ::= { xklEDFAEntry 12 }

xklEDFAManufacturer OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier manufacturer."
    ::= { xklEDFAEntry 13 }

xklEDFAModuleType OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier module type / part number."
    ::= { xklEDFAEntry 14 }

xklEDFASerialNum OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier serial number."
    ::= { xklEDFAEntry 15 }

xklEDFAManufactureDate OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier date of manufacture."
    ::= { xklEDFAEntry 16 }

xklEDFALastResetTime OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier time of last reset."
    ::= { xklEDFAEntry 17 }

xklEDFALastServiceTime OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "EDFA amplifier time of last service."
    ::= { xklEDFAEntry 18 }

xklEDFAControlType OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(-1),
                    manualPumpPower(0),
                    manualPumpCurrent(1),
                    automaticGainControl(2),
                    automaticPowerControl(3),
                    automaticMaximumPumpPower(4),
                    automaticOutputControl(5),
                    automaticPumpCurrent(6),
                    fence(7),
                    disabled(8)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier control type."
    ::= { xklEDFAEntry 19 }

xklEDFAControlSetPoint OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier control set point."
    ::= { xklEDFAEntry 20 }

xklEDFAControlSetPointUnits OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier control set point units."
    ::= { xklEDFAEntry 21 }

xklEDFAMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(-1),
                    booster(0),
                    preamp(1)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier operating mode."
    ::= { xklEDFAEntry 22 }

xklEDFAModuleAlarms OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier active alarms."
    ::= { xklEDFAEntry 23 }

xklEDFAInputOpticalPower OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier input optical power (1/10 dBm)."
    ::= { xklEDFAEntry 24 }

xklEDFAOutputOpticalPower OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier output optical power (1/10 dBm)."
    ::= { xklEDFAEntry 25 }

xklEDFACaseTemp OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier case temperature (1/10 Celsius)."
    ::= { xklEDFAEntry 26 }

xklEDFAPumpLaserStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    disabled(0),
                    enabled(1)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier pump laser status."
    ::= { xklEDFAEntry 27 }

xklEDFAPumpLaserTemp OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier pump laser temperature (1/10 Celsius)."
    ::= { xklEDFAEntry 28 }

xklEDFAPumpLaserCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 mA"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier pump laser current (1/10 mA)."
    ::= { xklEDFAEntry 29 }

xklEDFAPumpLaserPower OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier pump laser power (1/10 dBm)."
    ::= { xklEDFAEntry 30 }

xklEDFAAmplificationState OBJECT-TYPE
    SYNTAX      INTEGER {
                    down(0),
                    up(1),
                    unused(2),
                    los(3),
                    warning(4),
                    alarm(5),
                    reset(6),
                    unknown(7)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier status."
    ::= { xklEDFAEntry 31 }

xklEDFAName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier name."
    ::= { xklEDFAEntry 32 }

xklEDFAGroupNumber OBJECT-TYPE
    SYNTAX      XklDUAGroupNumberEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier's group number."
    ::= { xklEDFAEntry 33 }

xklEDFAGroupName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "EDFA amplifier's group name."
    ::= { xklEDFAEntry 34 }

--Raman Section

xklRamanCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Maximum number of Raman amplifiers available."
    ::= {xklProData 18 }

xklRamanTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklRamanEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Raman amplifier table."
    ::= { xklProData 19 }

xklRamanEntry OBJECT-TYPE
    SYNTAX      XklRamanEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Raman amplifier table entry."
    INDEX       { xklRamanIndex }
    ::= { xklRamanTable 1 }

XklRamanEntry ::=
    SEQUENCE {
        xklRamanIndex
            Unsigned32,
        xklRamanLabel
            DisplayString,
        xklRamanIsPresent
            INTEGER,
        xklRamanInReset
            INTEGER,
        xklRamanDisabled
            INTEGER,
        xklRamanMuted
            INTEGER,
        xklRamanCaseTemperatureAlarm
            INTEGER,
        xklRamanCommonAlarm
            INTEGER,
        xklRamanPumpTemperatureAlarm
            INTEGER,
        xklRamanPumpBiasAlarm
            INTEGER,
        xklRamanLossOfInputAlarm
            INTEGER,
        xklRamanLossOfOutputAlarm
            INTEGER,
        xklRamanManufacturer
            DisplayString,
        xklRamanModuleType
            DisplayString,
        xklRamanSerialNum
            DisplayString,
        xklRamanManufactureDate
            DisplayString,
        xklRamanLastResetTime
            DisplayString,
        xklRamanLastServiceTime
            DisplayString,
        xklRamanControlType
            INTEGER,
        xklRamanControlSetPoint
            Integer32,
        xklRamanControlSetPointUnits
            DisplayString,
        xklRamanMode
            INTEGER,
        xklRamanModuleAlarms
            DisplayString,
        xklRamanInputOpticalPower
            Integer32,
        xklRamanOutputOpticalPower
            Integer32,
        xklRamanCaseTemp
            Integer32,
        xklRamanPump1LaserStatus
            INTEGER,
        xklRamanPump1LaserTemp
            Integer32,
        xklRamanPump1LaserCurrent
            Integer32,
        xklRamanPump2LaserStatus
            INTEGER,
        xklRamanPump2LaserTemp
            Integer32,
        xklRamanPump2LaserCurrent
            Integer32,
        xklRamanCompositePumpsLaserPower
            Integer32,
        xklRamanFiberType
            INTEGER,
        xklRamanAmplificationState
            INTEGER,
        xklRamanBackReflection
            Integer32,
        xklRamanName
            DisplayString
    }

xklRamanIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "Raman amplifier table index."
    ::= { xklRamanEntry 1 }

xklRamanLabel OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier display label."
    ::= { xklRamanEntry 2 }

xklRamanIsPresent OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier slot is populated property."
    ::= { xklRamanEntry 3 }

xklRamanInReset OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier is in reset property."
    ::= { xklRamanEntry 4 }

xklRamanDisabled OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    disabled(2),
                    enabled(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier status."
    ::= { xklRamanEntry 5 }

xklRamanMuted OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    muted(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier is muted property."
    ::= { xklRamanEntry 6 }

xklRamanCaseTemperatureAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier case temperature alarm."
    ::= { xklRamanEntry 7 }

xklRamanCommonAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier common alarm."
    ::= { xklRamanEntry 8 }

xklRamanPumpTemperatureAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier pump temperature alarm."
    ::= { xklRamanEntry 9 }

xklRamanPumpBiasAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier pump bias alarm."
    ::= { xklRamanEntry 10 }

xklRamanLossOfInputAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier loss of input alarm."
    ::= { xklRamanEntry 11 }

xklRamanLossOfOutputAlarm OBJECT-TYPE
    SYNTAX      INTEGER {
                    unused(1),
                    yes(2),
                    no(3)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier loss of output alarm."
    ::= { xklRamanEntry 12 }

xklRamanManufacturer OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier manufacturer."
    ::= { xklRamanEntry 13 }

xklRamanModuleType OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier module type/part number."
    ::= { xklRamanEntry 14 }

xklRamanSerialNum OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier serial number."
    ::= { xklRamanEntry 15 }

xklRamanManufactureDate OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier date of manufacture."
    ::= { xklRamanEntry 16 }

xklRamanLastResetTime OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier time of last reset."
    ::= { xklRamanEntry 17 }

xklRamanLastServiceTime OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "Raman amplifier time of last service."
    ::= { xklRamanEntry 18 }

xklRamanControlType OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(-1),
                    manualPumpPower(0),
                    manualPumpCurrent(1),
                    automaticGainControl(2),
                    automaticPowerControl(3),
                    automaticMaximumPumpPower(4),
                    automaticOutputControl(5),
                    automaticPumpCurrent(6),
                    fence(7),
                    disabled(8)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier control type."
    ::= { xklRamanEntry 19 }

xklRamanControlSetPoint OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier control set point."
    ::= { xklRamanEntry 20 }


xklRamanControlSetPointUnits OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier control set point units."
    ::= { xklRamanEntry 21 }

xklRamanMode OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(-1),
                    booster(0),
                    preamp(1)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier operating mode."
    ::= { xklRamanEntry 22 }

xklRamanModuleAlarms OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier active alarms."
    ::= { xklRamanEntry 23 }

xklRamanInputOpticalPower OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier input optical power (1/10 dBm)."
    ::= { xklRamanEntry 24 }

xklRamanOutputOpticalPower OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 mW"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier output optical power (1/10 mW)."
    ::= { xklRamanEntry 25 }

xklRamanCaseTemp OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier case temperature (1/10 Celsius)."
    ::= { xklRamanEntry 26 }

xklRamanPump1LaserStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    disabled(0),
                    enabled(1)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier pump 1 laser status."
    ::= { xklRamanEntry 27 }

xklRamanPump1LaserTemp OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier pump 1 laser temperature (1/10 Celsius)."
    ::= { xklRamanEntry 28 }

xklRamanPump1LaserCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 mA"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier pump 1 laser current (1/10 mA)."
    ::= { xklRamanEntry 29 }

xklRamanPump2LaserStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    disabled(0),
                    enabled(1)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier pump 2 laser status."
    ::= { xklRamanEntry 30 }

xklRamanPump2LaserTemp OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 Celsius"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier pump 2 laser temperature (1/10 Celsius)."
    ::= { xklRamanEntry 31 }

xklRamanPump2LaserCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 mA"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier pump laser current (1/10 mA)."
    ::= { xklRamanEntry 32 }

xklRamanCompositePumpsLaserPower OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 mW"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier composite pumps laser power (1/10 mW)."
    ::= { xklRamanEntry 33 }

xklRamanFiberType OBJECT-TYPE
    SYNTAX      INTEGER {
                    none(0),
                    smf(1),
                    leaf(2),
                    truewave(3),
                    g654(4),
                    teralight(5),
                    g653(6),
                    g652(7),
                    g655(8)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier fiber type."
    ::= { xklRamanEntry 34 }

xklRamanAmplificationState OBJECT-TYPE
    SYNTAX      INTEGER {
                    down(0),
                    up(1),
                    unused(2),
                    los(3),
                    warning(4),
                    alarm(5),
                    reset(6),
                    unknown(7)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier status."
    ::= { xklRamanEntry 35 }

xklRamanBackReflection OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier back reflection ratio (1/10 dB)."
    ::= { xklRamanEntry 36 }

xklRamanName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Raman amplifier name."
    ::= { xklRamanEntry 37 }

-- XKL OTM section

xklOTMCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "Number of OTMs in this chassis."
    ::= {xklProData 20 }

xklOTMTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklOTMEntry
    MAX-ACCESS  not-accessible
    STATUS      deprecated
    DESCRIPTION
        "XKL OTM info."
    ::= { xklProData 21 }

xklOTMEntry OBJECT-TYPE
    SYNTAX      XklOTMEntry
    MAX-ACCESS  not-accessible
    STATUS      deprecated
    DESCRIPTION
        "XKL OTM info."
    INDEX       { xklOTMIndex }
    ::= { xklOTMTable 1 }

XklOTMEntry ::=
    SEQUENCE {
        xklOTMIndex
            Unsigned32,
        xklOTMStatus
            INTEGER,
        xklOTMDescr
            DisplayString
    }

xklOTMIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  accessible-for-notify
    STATUS      deprecated
    DESCRIPTION
        "Index to this OTM."
    ::= { xklOTMEntry 1 }

xklOTMStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    down(1),
                    up(2),
                    unused(3)
                }
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "Status for this OTM."
    ::= { xklOTMEntry 2 }

xklOTMDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "OTM Description."
    ::= { xklOTMEntry 3 }


-- XKL Transceiver Module MIBS

xklTransceiverModuleCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of Transceiver Modules in this system."
    ::= {xklProData 22 }

xklTransceiverModuleTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklTransceiverModuleEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Transceiver Module table."
    ::= { xklProData 23 }

xklTransceiverModuleEntry OBJECT-TYPE
    SYNTAX      XklTransceiverModuleEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Transceiver Module table entry."
    INDEX       { xklTransceiverModuleIndex }
    ::= { xklTransceiverModuleTable 1 }

XklTransceiverModuleEntry ::=
    SEQUENCE {
        xklTransceiverModuleIndex
            Unsigned32,
        xklTransceiverModuleStatus
            INTEGER,
        xklTransceiverModuleDescr
            DisplayString,
        xklTransceiverModuleType
            INTEGER,
        xklTransceiverModuleNumberOfDataLanes
            Integer32,
        xklTransceiverModuleMaxNumOfSupportedDataLanes
            Integer32,
        xklTransceiverModuleOSNR
            Integer32,
        xklTransceiverModuleRxBits
            Counter64,
        xklTransceiverModuleRxCorrectedBits
            Counter64,
        xklTransceiverModuleRxFrames
            Counter64,
        xklTransceiverModuleRxFrameUncorrectedErrors
            Counter64,
        xklTransceiverModuleTxBitsGroup0
            Counter64,
        xklTransceiverModuleTxCorrectedBitsGroup0
            Counter64,
        xklTransceiverModuleTxFramesGroup0
            Counter64,
        xklTransceiverModuleTxFrameUncorrectedErrorsGroup0
            Counter64,
        xklTransceiverModuleTxBitsGroup1
            Counter64,
        xklTransceiverModuleTxCorrectedBitsGroup1
            Counter64,
        xklTransceiverModuleTxFramesGroup1
            Counter64,
        xklTransceiverModuleTxFrameUncorrectedErrorsGroup1
            Counter64,
        xklTransceiverModuleTxBitsGroup2
            Counter64,
        xklTransceiverModuleTxCorrectedBitsGroup2
            Counter64,
        xklTransceiverModuleTxFramesGroup2
            Counter64,
        xklTransceiverModuleTxFrameUncorrectedErrorsGroup2
            Counter64,
        xklTransceiverModuleTxBitsGroup3
            Counter64,
        xklTransceiverModuleTxCorrectedBitsGroup3
            Counter64,
        xklTransceiverModuleTxFramesGroup3
            Counter64,
        xklTransceiverModuleTxFrameUncorrectedErrorsGroup3
            Counter64,
        xklTransceiverModuleESNR
            Integer32
    }

xklTransceiverModuleIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Transceiver Module table index."
    ::= { xklTransceiverModuleEntry 1 }

xklTransceiverModuleStatus OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    notPresent(2),
                    up(3),
                    ioError(4),
                    fault(5),
                    lowPower(6),
                    notReady(7),
                    disabled(9),
                    down(10),
                    alarm(11),
                    warning(12)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Transceiver Module status."
    ::= { xklTransceiverModuleEntry 2 }

xklTransceiverModuleDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Transceiver Module description."
    ::= { xklTransceiverModuleEntry 3 }

xklTransceiverModuleType OBJECT-TYPE
    SYNTAX      INTEGER {
                    other(1),
                    sfp(2),
                    xfp(3),
                    sfpplus(4),
                    cxp(5),
                    cfp(6),
                    dwdmsfp(7),
                    dwdmxfp(8),
                    dwdmsfpplus(9),
                    dwdmcfp(10),
                    dwdmoif(11),
                    qsfpplus(12),
                    qsfp28(13),
                    qsfpdd(14),
                    osfp(15)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Transceiver Module type."
    ::= { xklTransceiverModuleEntry 4 }

xklTransceiverModuleNumberOfDataLanes OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of data lanes actually used on Transceiver Module."
    ::= { xklTransceiverModuleEntry 5 }

xklTransceiverModuleMaxNumOfSupportedDataLanes OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Maximum Number of data lanes supported on Transceiver Module."
    ::= { xklTransceiverModuleEntry 6 }

xklTransceiverModuleOSNR OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Optical Signal Noise Ratio (OSNR)."
    ::= { xklTransceiverModuleEntry 7 }

xklTransceiverModuleRxBits OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bits."
    ::= { xklTransceiverModuleEntry 8 }

xklTransceiverModuleRxCorrectedBits OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Corrected Bits."
    ::= { xklTransceiverModuleEntry 9 }

xklTransceiverModuleRxFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frames."
    ::= { xklTransceiverModuleEntry 10 }

xklTransceiverModuleRxFrameUncorrectedErrors OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frame Uncorrected Errors."
    ::= { xklTransceiverModuleEntry 11 }

xklTransceiverModuleTxBitsGroup0 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bits Group 0."
    ::= { xklTransceiverModuleEntry 12 }

xklTransceiverModuleTxCorrectedBitsGroup0 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Corrected Bits Group 0."
    ::= { xklTransceiverModuleEntry 13 }

xklTransceiverModuleTxFramesGroup0 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frames Group 0."
    ::= { xklTransceiverModuleEntry 14 }

xklTransceiverModuleTxFrameUncorrectedErrorsGroup0 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frame Uncorrected Errors Group 0."
    ::= { xklTransceiverModuleEntry 15 }

xklTransceiverModuleTxBitsGroup1 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bits Group 1."
    ::= { xklTransceiverModuleEntry 16 }

xklTransceiverModuleTxCorrectedBitsGroup1 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Corrected Bits Group 1."
    ::= { xklTransceiverModuleEntry 17 }

xklTransceiverModuleTxFramesGroup1 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frames Group 1."
    ::= { xklTransceiverModuleEntry 18 }

xklTransceiverModuleTxFrameUncorrectedErrorsGroup1 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frame Uncorrected Errors Group 1."
    ::= { xklTransceiverModuleEntry 19 }

xklTransceiverModuleTxBitsGroup2 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bits Group 2."
    ::= { xklTransceiverModuleEntry 20 }

xklTransceiverModuleTxCorrectedBitsGroup2 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Corrected Bits Group 2."
    ::= { xklTransceiverModuleEntry 21 }

xklTransceiverModuleTxFramesGroup2 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frames Group 2."
    ::= { xklTransceiverModuleEntry 22 }

xklTransceiverModuleTxFrameUncorrectedErrorsGroup2 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frame Uncorrected Errors Group 2."
    ::= { xklTransceiverModuleEntry 23 }

xklTransceiverModuleTxBitsGroup3 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bits Group 3."
    ::= { xklTransceiverModuleEntry 24 }

xklTransceiverModuleTxCorrectedBitsGroup3 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Corrected Bits Group 3."
    ::= { xklTransceiverModuleEntry 25 }

xklTransceiverModuleTxFramesGroup3 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frames Group 3."
    ::= { xklTransceiverModuleEntry 26 }

xklTransceiverModuleTxFrameUncorrectedErrorsGroup3 OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frame Uncorrected Errors Group 3."
    ::= { xklTransceiverModuleEntry 27 }

xklTransceiverModuleESNR OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Media electrical Signal Noise Ratio (eSNR)"
    ::= { xklTransceiverModuleEntry 28 }


-- XKL OTDR Latest Measurements MIBS

xklOTDRLatestMeasurementCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of latest OTDR Measurements."
    ::= {xklProData 24 }

xklOTDRLatestMeasurementTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklOTDRLatestMeasurementEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "OTDR Latest Measurement table."
    ::= { xklProData 25 }

xklOTDRLatestMeasurementEntry OBJECT-TYPE
    SYNTAX      XklOTDRLatestMeasurementEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "OTDR Latest Measurement table entry."
    INDEX       { xklOTDRLatestMeasurementOSCIndex }
    ::= { xklOTDRLatestMeasurementTable 1 }

XklOTDRLatestMeasurementEntry ::=
    SEQUENCE {
        xklOTDRLatestMeasurementOSCIndex
            Unsigned32,
        xklOTDRLatestMeasurementOSCDescr
            DisplayString,
        xklOTDRLatestMeasurementResults
            DisplayString,
        xklOTDRLatestMeasurementDateTime
            DisplayString,
        xklOTDRLatestMeasurementOTDRGroupNumber
            XklDUAGroupNumberEnum,
        xklOTDRLatestMeasurementOTDRGroupName
            DisplayString
    }

xklOTDRLatestMeasurementOSCIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "OTDR/OSC index."
    ::= { xklOTDRLatestMeasurementEntry 1 }

xklOTDRLatestMeasurementOSCDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "OTDR/OSC description."
    ::= { xklOTDRLatestMeasurementEntry 2 }

xklOTDRLatestMeasurementResults OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "OTDR latest measurement results."
    ::= { xklOTDRLatestMeasurementEntry 3 }

xklOTDRLatestMeasurementDateTime OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "OTDR latest measurement date and time."
    ::= { xklOTDRLatestMeasurementEntry 4 }

xklOTDRLatestMeasurementOTDRGroupNumber OBJECT-TYPE
    SYNTAX      XklDUAGroupNumberEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "OTDR's group number."
    ::= { xklOTDRLatestMeasurementEntry 5 }

xklOTDRLatestMeasurementOTDRGroupName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "OTDR's group name."
    ::= { xklOTDRLatestMeasurementEntry 6 }


-- XKL DUA Group MIBS

xklDUAGroupCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of DUA groups."
    ::= {xklProData 26 }

xklDUAGroupTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklDUAGroupEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "DUA group table."
    ::= { xklProData 27 }

xklDUAGroupEntry OBJECT-TYPE
    SYNTAX      XklDUAGroupEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "DUA group table entry."
    INDEX       { xklDUAGroupIndex }
    ::= { xklDUAGroupTable 1 }

XklDUAGroupEntry ::=
    SEQUENCE {
        xklDUAGroupIndex
            Unsigned32,
        xklDUAGroupNumber
            XklDUAGroupNumberEnum,
        xklDUAGroupName
            DisplayString
    }

xklDUAGroupIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "DUA group index."
    ::= { xklDUAGroupEntry 1 }

xklDUAGroupNumber OBJECT-TYPE
    SYNTAX      XklDUAGroupNumberEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "DUA group number."
    ::= { xklDUAGroupEntry 2 }

xklDUAGroupName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "DUA group name."
    ::= { xklDUAGroupEntry 3 }

--Line Protection section

xklLineProtectionCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of Line Protection modules available."
    ::= {xklProData 28 }

xklLineProtectionTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklLineProtectionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Line Protection table."
    ::= { xklProData 29 }

xklLineProtectionEntry OBJECT-TYPE
    SYNTAX      XklLineProtectionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Line Protection table entry."
    INDEX       { xklLineProtectionIndex }
    ::= { xklLineProtectionTable 1 }

XklLineProtectionEntry ::=
    SEQUENCE {
        xklLineProtectionIndex
            Unsigned32,
        xklLineProtectionActiveLine
            INTEGER,
        xklLineProtectionEnabled
            INTEGER,
        xklLineProtectionPrimaryLine
            INTEGER,
        xklLineProtectionMonitorDevice
            INTEGER,
        xklLineProtectionAutoReversion
            INTEGER
    }

xklLineProtectionIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "Line Protection table index."
    ::= { xklLineProtectionEntry 1 }

xklLineProtectionActiveLine OBJECT-TYPE
    SYNTAX      INTEGER {
                    primaryA(1),
                    primaryB(2),
                    backupA(3),
                    backupB(4)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Line Protection switch position."
    ::= { xklLineProtectionEntry 2 }

xklLineProtectionEnabled OBJECT-TYPE
    SYNTAX      INTEGER {
                    enabled(1),
                    disabled(2)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Is the Line Protection feature enabled."
    ::= { xklLineProtectionEntry 3 }

xklLineProtectionPrimaryLine OBJECT-TYPE
    SYNTAX      INTEGER {
                    lineA(1),
                    lineB(2)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Primary-line for Line Protection."
    ::= { xklLineProtectionEntry 4 }

xklLineProtectionMonitorDevice OBJECT-TYPE
    SYNTAX      INTEGER {
                    osc(1),
                    inputEDFA(2)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Device used for LOS monitoring for Line Protection."
    ::= { xklLineProtectionEntry 5 }

xklLineProtectionAutoReversion OBJECT-TYPE
    SYNTAX      INTEGER {
                    disabled(1),
                    toPrimary(2)
                }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Auto-reversion scheme used for Line Protection."
    ::= { xklLineProtectionEntry 6 }

-- Datapath section
-- Datapath Client Ports
xklDatapathClientPortCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of Datapath Client ports."
    ::= {xklProData 30 }

xklDatapathClientPortTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklDatapathClientPortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Datapath Client Port table."
    ::= { xklProData 31 }

xklDatapathClientPortEntry OBJECT-TYPE
    SYNTAX      XklDatapathClientPortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Datapath client port table entry."
    INDEX       { xklDatapathClientPortIndex }
    ::= { xklDatapathClientPortTable 1 }

XklDatapathClientPortEntry ::=
    SEQUENCE {
        xklDatapathClientPortIndex
            Unsigned32,
        xklDatapathClientPortDescription
            DisplayString,
        xklDatapathClientPortRxFrameCount
            Counter64,
        xklDatapathClientPortRxDropCount
            Counter64,
        xklDatapathClientPortRxUtilization
            Unsigned32,
        xklDatapathClientPortTxFrameCount
            Counter64,
        xklDatapathClientPortTxDropCount
            Counter64,
        xklDatapathClientPortTxUtilization
            Unsigned32
    }

xklDatapathClientPortIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Datapath Client Port table index."
    ::= { xklDatapathClientPortEntry 1 }

xklDatapathClientPortDescription OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Datapath Client port description."
    ::= { xklDatapathClientPortEntry 2 }

xklDatapathClientPortRxFrameCount OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Accepted receive frame count."
    ::= { xklDatapathClientPortEntry 3 }

xklDatapathClientPortRxDropCount OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Dropped receive frame count."
    ::= { xklDatapathClientPortEntry 4 }

xklDatapathClientPortRxUtilization OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "1/10 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Receive utilization percentage."
    ::= { xklDatapathClientPortEntry 5 }

xklDatapathClientPortTxFrameCount OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Accepted transmit frame count."
    ::= { xklDatapathClientPortEntry 6 }

xklDatapathClientPortTxDropCount OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Dropped transmit frame count."
    ::= { xklDatapathClientPortEntry 7 }

xklDatapathClientPortTxUtilization OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "1/10 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Transmit utilization percentage."
    ::= { xklDatapathClientPortEntry 8 }

-- Datapath Wave Ports

xklDatapathWavePortCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of Datapath Wave ports."
    ::= {xklProData 32 }

xklDatapathWavePortTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklDatapathWavePortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Datapath Wave Port table."
    ::= { xklProData 33 }

xklDatapathWavePortEntry OBJECT-TYPE
    SYNTAX      XklDatapathWavePortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Datapath wave port table entry."
    INDEX       { xklDatapathWavePortIndex }
    ::= { xklDatapathWavePortTable 1 }

XklDatapathWavePortEntry ::=
    SEQUENCE {
        xklDatapathWavePortIndex
            Unsigned32,
        xklDatapathWavePortDescription
            DisplayString,
        xklDatapathWavePortRxFrameCount
            Counter64,
        xklDatapathWavePortRxDropCount
            Counter64,
        xklDatapathWavePortRxUtilization
            Unsigned32,
        xklDatapathWavePortTxFrameCount
            Counter64,
        xklDatapathWavePortTxDropCount
            Counter64,
        xklDatapathWavePortTxUtilization
            Unsigned32
    }

xklDatapathWavePortIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Datapath Wave Port table index."
    ::= { xklDatapathWavePortEntry 1 }

xklDatapathWavePortDescription OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Datapath Wave port description."
    ::= { xklDatapathWavePortEntry 2 }

xklDatapathWavePortRxFrameCount OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Accepted receive frame count."
    ::= { xklDatapathWavePortEntry 3 }

xklDatapathWavePortRxDropCount OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Dropped receive frame count."
    ::= { xklDatapathWavePortEntry 4 }

xklDatapathWavePortRxUtilization OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "1/10 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Receive utilization percentage."
    ::= { xklDatapathWavePortEntry 5 }

xklDatapathWavePortTxFrameCount OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Accepted transmit frame count."
    ::= { xklDatapathWavePortEntry 6 }

xklDatapathWavePortTxDropCount OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Dropped transmit frame count."
    ::= { xklDatapathWavePortEntry 7 }

xklDatapathWavePortTxUtilization OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "1/10 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Transmit utilization percentage."
    ::= { xklDatapathWavePortEntry 8 }


-- DQ*400 Wave Media-Side PM Counters

xklWaveMediaSidePMCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of wave media-side performance monitor counters."
    ::= { xklProData 34 }

xklWaveMediaSidePMTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklWaveMediaSidePMEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave media-side performance monitor counter table."
    ::= { xklProData 35 }

xklWaveMediaSidePMEntry OBJECT-TYPE
    SYNTAX      XklWaveMediaSidePMEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave media-side performance monitor counter entry."
    INDEX       { xklWaveMediaSidePMIndex }
    ::= { xklWaveMediaSidePMTable 1 }

XklWaveMediaSidePMEntry ::=
    SEQUENCE {
        xklWaveMediaSidePMIndex
            Unsigned32,
        xklWaveMediaSidePMWavePort
            Unsigned32,
        xklWaveMediaSidePMWaveStatus
            XklTransceiverStatusEnum,
        xklWaveMediaSidePMWaveDescr
            DisplayString,
        xklWaveMediaSidePMRxOSNRCurrent
            Integer32,
        xklWaveMediaSidePMRxOSNRMin
            Integer32,
        xklWaveMediaSidePMRxOSNRMax
            Integer32,
        xklWaveMediaSidePMRxOSNRAvg
            Integer32,
        xklWaveMediaSidePMRxESNRCurrent
            Integer32,
        xklWaveMediaSidePMRxESNRMin
            Integer32,
        xklWaveMediaSidePMRxESNRMax
            Integer32,
        xklWaveMediaSidePMRxESNRAvg
            Integer32,
        xklWaveMediaSidePMRxCDCurrent
            Integer32,
        xklWaveMediaSidePMRxCDMin
            Integer32,
        xklWaveMediaSidePMRxCDMax
            Integer32,
        xklWaveMediaSidePMRxCDAvg
            Integer32,
        xklWaveMediaSidePMRxDGDCurrent
            Integer32,
        xklWaveMediaSidePMRxDGDMin
            Integer32,
        xklWaveMediaSidePMRxDGDMax
            Integer32,
        xklWaveMediaSidePMRxDGDAvg
            Integer32,
        xklWaveMediaSidePMRxSOPMDCurrent
            Integer32,
        xklWaveMediaSidePMRxSOPMDMin
            Integer32,
        xklWaveMediaSidePMRxSOPMDMax
            Integer32,
        xklWaveMediaSidePMRxSOPMDAvg
            Integer32,
        xklWaveMediaSidePMRxPDLCurrent
            Integer32,
        xklWaveMediaSidePMRxPDLMin
            Integer32,
        xklWaveMediaSidePMRxPDLMax
            Integer32,
        xklWaveMediaSidePMRxPDLAvg
            Integer32,
        xklWaveMediaSidePMRxCFOCurrent
            Integer32,
        xklWaveMediaSidePMRxCFOMin
            Integer32,
        xklWaveMediaSidePMRxCFOMax
            Integer32,
        xklWaveMediaSidePMRxCFOAvg
            Integer32,
        xklWaveMediaSidePMRxSOPROCCurrent
            Integer32,
        xklWaveMediaSidePMRxSOPROCMin
            Integer32,
        xklWaveMediaSidePMRxSOPROCMax
            Integer32,
        xklWaveMediaSidePMRxSOPROCAvg
            Integer32,
        xklWaveMediaSidePMRxTotalPowerCurrent
            Integer32,
        xklWaveMediaSidePMRxTotalPowerMin
            Integer32,
        xklWaveMediaSidePMRxTotalPowerMax
            Integer32,
        xklWaveMediaSidePMRxTotalPowerAvg
            Integer32,
        xklWaveMediaSidePMRxSignalPowerCurrent
            Integer32,
        xklWaveMediaSidePMRxSignalPowerMin
            Integer32,
        xklWaveMediaSidePMRxSignalPowerMax
            Integer32,
        xklWaveMediaSidePMRxSignalPowerAvg
            Integer32,
        xklWaveMediaSidePMTxOutputPowerCurrent
            Integer32,
        xklWaveMediaSidePMTxOutputPowerMin
            Integer32,
        xklWaveMediaSidePMTxOutputPowerMax
            Integer32,
        xklWaveMediaSidePMTxOutputPowerAvg
            Integer32
    }

xklWaveMediaSidePMIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave media-side PM counter table index. 
         The index is static-mapped to (wave port + 1)."
    ::= { xklWaveMediaSidePMEntry 1 }

xklWaveMediaSidePMWavePort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave port."
    ::= { xklWaveMediaSidePMEntry 2 }

xklWaveMediaSidePMWaveStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave status."
    ::= { xklWaveMediaSidePMEntry 3 }

xklWaveMediaSidePMWaveDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Wave description."
    ::= { xklWaveMediaSidePMEntry 4 }

xklWaveMediaSidePMRxOSNRCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Optical Signal Noise Ratio (OSNR) current."
    ::= { xklWaveMediaSidePMEntry 5 }

xklWaveMediaSidePMRxOSNRMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Optical Signal Noise Ratio (OSNR) minimum."
    ::= { xklWaveMediaSidePMEntry 6 }

xklWaveMediaSidePMRxOSNRMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Optical Signal Noise Ratio (OSNR) maximum."
    ::= { xklWaveMediaSidePMEntry 7 }

xklWaveMediaSidePMRxOSNRAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Optical Signal Noise Ratio (OSNR) average."
    ::= { xklWaveMediaSidePMEntry 8 }

xklWaveMediaSidePMRxESNRCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Media electrical Signal Noise Ratio (eSNR) current."
    ::= { xklWaveMediaSidePMEntry 9 }

xklWaveMediaSidePMRxESNRMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Media electrical Signal Noise Ratio (eSNR) minimum."
    ::= { xklWaveMediaSidePMEntry 10 }

xklWaveMediaSidePMRxESNRMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Media electrical Signal Noise Ratio (eSNR) maximum."
    ::= { xklWaveMediaSidePMEntry 11 }

xklWaveMediaSidePMRxESNRAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Media electrical Signal Noise Ratio (eSNR) average."
    ::= { xklWaveMediaSidePMEntry 12 }

xklWaveMediaSidePMRxCDCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps/nm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Chromatic Dispersion (CD) current."
    ::= { xklWaveMediaSidePMEntry 13 }

xklWaveMediaSidePMRxCDMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps/nm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Chromatic Dispersion (CD) minimum."
    ::= { xklWaveMediaSidePMEntry 14 }

xklWaveMediaSidePMRxCDMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps/nm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Chromatic Dispersion (CD) maximum."
    ::= { xklWaveMediaSidePMEntry 15 }

xklWaveMediaSidePMRxCDAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps/nm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Chromatic Dispersion (CD) average."
    ::= { xklWaveMediaSidePMEntry 16 }

xklWaveMediaSidePMRxDGDCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 ps"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Differential Group Delay (DGD) current."
    ::= { xklWaveMediaSidePMEntry 17 }

xklWaveMediaSidePMRxDGDMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 ps"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Differential Group Delay (DGD) minimum."
    ::= { xklWaveMediaSidePMEntry 18 }

xklWaveMediaSidePMRxDGDMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 ps"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Differential Group Delay (DGD) maximum."
    ::= { xklWaveMediaSidePMEntry 19 }

xklWaveMediaSidePMRxDGDAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 ps"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Differential Group Delay (DGD) average."
    ::= { xklWaveMediaSidePMEntry 20 }

xklWaveMediaSidePMRxSOPMDCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps^2"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Second Order Polarization Mode Dispersion (SOPMD) current."
    ::= { xklWaveMediaSidePMEntry 21 }

xklWaveMediaSidePMRxSOPMDMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps^2"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Second Order Polarization Mode Dispersion (SOPMD) minimum."
    ::= { xklWaveMediaSidePMEntry 22 }

xklWaveMediaSidePMRxSOPMDMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps^2"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Second Order Polarization Mode Dispersion (SOPMD) maximum."
    ::= { xklWaveMediaSidePMEntry 23 }

xklWaveMediaSidePMRxSOPMDAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps^2"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Second Order Polarization Mode Dispersion (SOPMD) average."
    ::= { xklWaveMediaSidePMEntry 24 }

xklWaveMediaSidePMRxPDLCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Polarization Dependent Loss (PDL) current."
    ::= { xklWaveMediaSidePMEntry 25 }

xklWaveMediaSidePMRxPDLMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Polarization Dependent Loss (PDL) minimum."
    ::= { xklWaveMediaSidePMEntry 26 }

xklWaveMediaSidePMRxPDLMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Polarization Dependent Loss (PDL) maximum."
    ::= { xklWaveMediaSidePMEntry 27 }

xklWaveMediaSidePMRxPDLAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Polarization Dependent Loss (PDL) average."
    ::= { xklWaveMediaSidePMEntry 28 }

xklWaveMediaSidePMRxCFOCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "MHz"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Carrier Frequency Offset (CFO) current."
    ::= { xklWaveMediaSidePMEntry 29 }

xklWaveMediaSidePMRxCFOMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "MHz"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Carrier Frequency Offset (CFO) minimum."
    ::= { xklWaveMediaSidePMEntry 30 }

xklWaveMediaSidePMRxCFOMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "MHz"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Carrier Frequency Offset (CFO) maximum."
    ::= { xklWaveMediaSidePMEntry 31 }

xklWaveMediaSidePMRxCFOAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "MHz"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Carrier Frequency Offset (CFO) average."
    ::= { xklWaveMediaSidePMEntry 32 }

xklWaveMediaSidePMRxSOPROCCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "krad/s"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx State Of Polarization (SOP) Rate Of Change (ROC) current."
    ::= { xklWaveMediaSidePMEntry 33 }

xklWaveMediaSidePMRxSOPROCMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "krad/s"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx State Of Polarization (SOP) Rate Of Change (ROC) minimum."
    ::= { xklWaveMediaSidePMEntry 34 }

xklWaveMediaSidePMRxSOPROCMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "krad/s"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx State Of Polarization (SOP) Rate Of Change (ROC) maximum."
    ::= { xklWaveMediaSidePMEntry 35 }

xklWaveMediaSidePMRxSOPROCAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "krad/s"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx State Of Polarization (SOP) Rate Of Change (ROC) average."
    ::= { xklWaveMediaSidePMEntry 36 }

xklWaveMediaSidePMRxTotalPowerCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Total Optical Power current."
    ::= { xklWaveMediaSidePMEntry 37 }

xklWaveMediaSidePMRxTotalPowerMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Total Optical Power minimum."
    ::= { xklWaveMediaSidePMEntry 38 }

xklWaveMediaSidePMRxTotalPowerMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Total Optical Power maximum."
    ::= { xklWaveMediaSidePMEntry 39 }

xklWaveMediaSidePMRxTotalPowerAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Total Optical Power average."
    ::= { xklWaveMediaSidePMEntry 40 }

xklWaveMediaSidePMRxSignalPowerCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Signal Optical Power current."
    ::= { xklWaveMediaSidePMEntry 41 }

xklWaveMediaSidePMRxSignalPowerMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Signal Optical Power minimum."
    ::= { xklWaveMediaSidePMEntry 42 }

xklWaveMediaSidePMRxSignalPowerMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Signal Optical Power maximum."
    ::= { xklWaveMediaSidePMEntry 43 }

xklWaveMediaSidePMRxSignalPowerAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Signal Optical Power average."
    ::= { xklWaveMediaSidePMEntry 44 }

xklWaveMediaSidePMTxOutputPowerCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Output Optical Power current."
    ::= { xklWaveMediaSidePMEntry 45 }

xklWaveMediaSidePMTxOutputPowerMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Output Optical Power minimum."
    ::= { xklWaveMediaSidePMEntry 46 }

xklWaveMediaSidePMTxOutputPowerMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Output Optical Power maximum."
    ::= { xklWaveMediaSidePMEntry 47 }

xklWaveMediaSidePMTxOutputPowerAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Output Optical Power average."
    ::= { xklWaveMediaSidePMEntry 48 }


-- DQ*400 Client Media-Side PM Counters

xklClientMediaSidePMCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of client media-side performance monitor counters."
    ::= { xklProData 36 }

xklClientMediaSidePMTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklClientMediaSidePMEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client media-side performance monitor counter table."
    ::= { xklProData 37 }

xklClientMediaSidePMEntry OBJECT-TYPE
    SYNTAX      XklClientMediaSidePMEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client media-side performance monitor counter entry."
    INDEX       { xklClientMediaSidePMIndex }
    ::= { xklClientMediaSidePMTable 1 }

XklClientMediaSidePMEntry ::=
    SEQUENCE {
        xklClientMediaSidePMIndex
            Unsigned32,
        xklClientMediaSidePMClientPort
            Unsigned32,
        xklClientMediaSidePMClientStatus
            XklTransceiverStatusEnum,
        xklClientMediaSidePMClientDescr
            DisplayString,
        xklClientMediaSidePMRxOSNRCurrent
            Integer32,
        xklClientMediaSidePMRxOSNRMin
            Integer32,
        xklClientMediaSidePMRxOSNRMax
            Integer32,
        xklClientMediaSidePMRxOSNRAvg
            Integer32,
        xklClientMediaSidePMRxESNRCurrent
            Integer32,
        xklClientMediaSidePMRxESNRMin
            Integer32,
        xklClientMediaSidePMRxESNRMax
            Integer32,
        xklClientMediaSidePMRxESNRAvg
            Integer32,
        xklClientMediaSidePMRxCDCurrent
            Integer32,
        xklClientMediaSidePMRxCDMin
            Integer32,
        xklClientMediaSidePMRxCDMax
            Integer32,
        xklClientMediaSidePMRxCDAvg
            Integer32,
        xklClientMediaSidePMRxDGDCurrent
            Integer32,
        xklClientMediaSidePMRxDGDMin
            Integer32,
        xklClientMediaSidePMRxDGDMax
            Integer32,
        xklClientMediaSidePMRxDGDAvg
            Integer32,
        xklClientMediaSidePMRxSOPMDCurrent
            Integer32,
        xklClientMediaSidePMRxSOPMDMin
            Integer32,
        xklClientMediaSidePMRxSOPMDMax
            Integer32,
        xklClientMediaSidePMRxSOPMDAvg
            Integer32,
        xklClientMediaSidePMRxPDLCurrent
            Integer32,
        xklClientMediaSidePMRxPDLMin
            Integer32,
        xklClientMediaSidePMRxPDLMax
            Integer32,
        xklClientMediaSidePMRxPDLAvg
            Integer32,
        xklClientMediaSidePMRxCFOCurrent
            Integer32,
        xklClientMediaSidePMRxCFOMin
            Integer32,
        xklClientMediaSidePMRxCFOMax
            Integer32,
        xklClientMediaSidePMRxCFOAvg
            Integer32,
        xklClientMediaSidePMRxSOPROCCurrent
            Integer32,
        xklClientMediaSidePMRxSOPROCMin
            Integer32,
        xklClientMediaSidePMRxSOPROCMax
            Integer32,
        xklClientMediaSidePMRxSOPROCAvg
            Integer32,
        xklClientMediaSidePMRxTotalPowerCurrent
            Integer32,
        xklClientMediaSidePMRxTotalPowerMin
            Integer32,
        xklClientMediaSidePMRxTotalPowerMax
            Integer32,
        xklClientMediaSidePMRxTotalPowerAvg
            Integer32,
        xklClientMediaSidePMRxSignalPowerCurrent
            Integer32,
        xklClientMediaSidePMRxSignalPowerMin
            Integer32,
        xklClientMediaSidePMRxSignalPowerMax
            Integer32,
        xklClientMediaSidePMRxSignalPowerAvg
            Integer32,
        xklClientMediaSidePMTxOutputPowerCurrent
            Integer32,
        xklClientMediaSidePMTxOutputPowerMin
            Integer32,
        xklClientMediaSidePMTxOutputPowerMax
            Integer32,
        xklClientMediaSidePMTxOutputPowerAvg
            Integer32
    }

xklClientMediaSidePMIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client media-side PM counter table index. 
         The index is static-mapped to (client port + 1)."
    ::= { xklClientMediaSidePMEntry 1 }

xklClientMediaSidePMClientPort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client port."
    ::= { xklClientMediaSidePMEntry 2 }

xklClientMediaSidePMClientStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client status."
    ::= { xklClientMediaSidePMEntry 3 }

xklClientMediaSidePMClientDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Client description."
    ::= { xklClientMediaSidePMEntry 4 }

xklClientMediaSidePMRxOSNRCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Optical Signal Noise Ratio (OSNR) current."
    ::= { xklClientMediaSidePMEntry 5 }

xklClientMediaSidePMRxOSNRMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Optical Signal Noise Ratio (OSNR) minimum."
    ::= { xklClientMediaSidePMEntry 6 }

xklClientMediaSidePMRxOSNRMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Optical Signal Noise Ratio (OSNR) maximum."
    ::= { xklClientMediaSidePMEntry 7 }

xklClientMediaSidePMRxOSNRAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Optical Signal Noise Ratio (OSNR) average."
    ::= { xklClientMediaSidePMEntry 8 }

xklClientMediaSidePMRxESNRCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Media electrical Signal Noise Ratio (eSNR) current."
    ::= { xklClientMediaSidePMEntry 9 }

xklClientMediaSidePMRxESNRMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Media electrical Signal Noise Ratio (eSNR) minimum."
    ::= { xklClientMediaSidePMEntry 10 }

xklClientMediaSidePMRxESNRMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Media electrical Signal Noise Ratio (eSNR) maximum."
    ::= { xklClientMediaSidePMEntry 11 }

xklClientMediaSidePMRxESNRAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Media electrical Signal Noise Ratio (eSNR) average."
    ::= { xklClientMediaSidePMEntry 12 }

xklClientMediaSidePMRxCDCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps/nm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Chromatic Dispersion (CD) current."
    ::= { xklClientMediaSidePMEntry 13 }

xklClientMediaSidePMRxCDMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps/nm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Chromatic Dispersion (CD) minimum."
    ::= { xklClientMediaSidePMEntry 14 }

xklClientMediaSidePMRxCDMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps/nm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Chromatic Dispersion (CD) maximum."
    ::= { xklClientMediaSidePMEntry 15 }

xklClientMediaSidePMRxCDAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps/nm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Chromatic Dispersion (CD) average."
    ::= { xklClientMediaSidePMEntry 16 }

xklClientMediaSidePMRxDGDCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 ps"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Differential Group Delay (DGD) current."
    ::= { xklClientMediaSidePMEntry 17 }

xklClientMediaSidePMRxDGDMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 ps"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Differential Group Delay (DGD) minimum."
    ::= { xklClientMediaSidePMEntry 18 }

xklClientMediaSidePMRxDGDMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 ps"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Differential Group Delay (DGD) maximum."
    ::= { xklClientMediaSidePMEntry 19 }

xklClientMediaSidePMRxDGDAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 ps"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Differential Group Delay (DGD) average."
    ::= { xklClientMediaSidePMEntry 20 }

xklClientMediaSidePMRxSOPMDCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps^2"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Second Order Polarization Mode Dispersion (SOPMD) current."
    ::= { xklClientMediaSidePMEntry 21 }

xklClientMediaSidePMRxSOPMDMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps^2"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Second Order Polarization Mode Dispersion (SOPMD) minimum."
    ::= { xklClientMediaSidePMEntry 22 }

xklClientMediaSidePMRxSOPMDMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps^2"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Second Order Polarization Mode Dispersion (SOPMD) maximum."
    ::= { xklClientMediaSidePMEntry 23 }

xklClientMediaSidePMRxSOPMDAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "ps^2"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Second Order Polarization Mode Dispersion (SOPMD) average."
    ::= { xklClientMediaSidePMEntry 24 }

xklClientMediaSidePMRxPDLCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Polarization Dependent Loss (PDL) current."
    ::= { xklClientMediaSidePMEntry 25 }

xklClientMediaSidePMRxPDLMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Polarization Dependent Loss (PDL) minimum."
    ::= { xklClientMediaSidePMEntry 26 }

xklClientMediaSidePMRxPDLMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Polarization Dependent Loss (PDL) maximum."
    ::= { xklClientMediaSidePMEntry 27 }

xklClientMediaSidePMRxPDLAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Polarization Dependent Loss (PDL) average."
    ::= { xklClientMediaSidePMEntry 28 }

xklClientMediaSidePMRxCFOCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "MHz"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Carrier Frequency Offset (CFO) current."
    ::= { xklClientMediaSidePMEntry 29 }

xklClientMediaSidePMRxCFOMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "MHz"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Carrier Frequency Offset (CFO) minimum."
    ::= { xklClientMediaSidePMEntry 30 }

xklClientMediaSidePMRxCFOMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "MHz"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Carrier Frequency Offset (CFO) maximum."
    ::= { xklClientMediaSidePMEntry 31 }

xklClientMediaSidePMRxCFOAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "MHz"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Carrier Frequency Offset (CFO) average."
    ::= { xklClientMediaSidePMEntry 32 }

xklClientMediaSidePMRxSOPROCCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "krad/s"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx State Of Polarization (SOP) Rate Of Change (ROC) current."
    ::= { xklClientMediaSidePMEntry 33 }

xklClientMediaSidePMRxSOPROCMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "krad/s"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx State Of Polarization (SOP) Rate Of Change (ROC) minimum."
    ::= { xklClientMediaSidePMEntry 34 }

xklClientMediaSidePMRxSOPROCMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "krad/s"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx State Of Polarization (SOP) Rate Of Change (ROC) maximum."
    ::= { xklClientMediaSidePMEntry 35 }

xklClientMediaSidePMRxSOPROCAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "krad/s"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx State Of Polarization (SOP) Rate Of Change (ROC) average."
    ::= { xklClientMediaSidePMEntry 36 }

xklClientMediaSidePMRxTotalPowerCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Total Optical Power current."
    ::= { xklClientMediaSidePMEntry 37 }

xklClientMediaSidePMRxTotalPowerMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Total Optical Power minimum."
    ::= { xklClientMediaSidePMEntry 38 }

xklClientMediaSidePMRxTotalPowerMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Total Optical Power maximum."
    ::= { xklClientMediaSidePMEntry 39 }

xklClientMediaSidePMRxTotalPowerAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Total Optical Power average."
    ::= { xklClientMediaSidePMEntry 40 }

xklClientMediaSidePMRxSignalPowerCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Signal Optical Power current."
    ::= { xklClientMediaSidePMEntry 41 }

xklClientMediaSidePMRxSignalPowerMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Signal Optical Power minimum."
    ::= { xklClientMediaSidePMEntry 42 }

xklClientMediaSidePMRxSignalPowerMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Signal Optical Power maximum."
    ::= { xklClientMediaSidePMEntry 43 }

xklClientMediaSidePMRxSignalPowerAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Signal Optical Power average."
    ::= { xklClientMediaSidePMEntry 44 }

xklClientMediaSidePMTxOutputPowerCurrent OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Output Optical Power current."
    ::= { xklClientMediaSidePMEntry 45 }

xklClientMediaSidePMTxOutputPowerMin OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Output Optical Power minimum."
    ::= { xklClientMediaSidePMEntry 46 }

xklClientMediaSidePMTxOutputPowerMax OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Output Optical Power maximum."
    ::= { xklClientMediaSidePMEntry 47 }

xklClientMediaSidePMTxOutputPowerAvg OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Output Optical Power average."
    ::= { xklClientMediaSidePMEntry 48 }


-- DQ*400 Wave Host-Side Rx BER Stats (Media Lane Input BER Stats)

xklWaveHostSideRxBERCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of wave host-side Rx BER stats."
    ::= { xklProData 38 }

xklWaveHostSideRxBERTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklWaveHostSideRxBEREntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx BER stats table."
    ::= { xklProData 39 }

xklWaveHostSideRxBEREntry OBJECT-TYPE
    SYNTAX      XklWaveHostSideRxBEREntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx BER stats entry."
    INDEX       { xklWaveHostSideRxBERIndex1, xklWaveHostSideRxBERIndex2 }
    ::= { xklWaveHostSideRxBERTable 1 }

XklWaveHostSideRxBEREntry ::=
    SEQUENCE {
        xklWaveHostSideRxBERIndex1
            Unsigned32,
        xklWaveHostSideRxBERIndex2
            Unsigned32,
        xklWaveHostSideRxBERWavePort
            Unsigned32,
        xklWaveHostSideRxBERLaneId
            Unsigned32,
        xklWaveHostSideRxBERWaveStatus
            XklTransceiverStatusEnum,
        xklWaveHostSideRxBERWaveDescr
            DisplayString,
        xklWaveHostSideRxBERPreFECCurrentMantissa
            Integer32,
        xklWaveHostSideRxBERPreFECCurrentExponent
            Integer32,
        xklWaveHostSideRxBERPreFECMinMantissa
            Integer32,
        xklWaveHostSideRxBERPreFECMinExponent
            Integer32,
        xklWaveHostSideRxBERPreFECMaxMantissa
            Integer32,
        xklWaveHostSideRxBERPreFECMaxExponent
            Integer32,
        xklWaveHostSideRxBERPreFECAvgMantissa
            Integer32,
        xklWaveHostSideRxBERPreFECAvgExponent
            Integer32,
        xklWaveHostSideRxBERErrFramesCurrentMantissa
            Integer32,
        xklWaveHostSideRxBERErrFramesCurrentExponent
            Integer32,
        xklWaveHostSideRxBERErrFramesMinMantissa
            Integer32,
        xklWaveHostSideRxBERErrFramesMinExponent
            Integer32,
        xklWaveHostSideRxBERErrFramesMaxMantissa
            Integer32,
        xklWaveHostSideRxBERErrFramesMaxExponent
            Integer32,
        xklWaveHostSideRxBERErrFramesAvgMantissa
            Integer32,
        xklWaveHostSideRxBERErrFramesAvgExponent
            Integer32
    }

xklWaveHostSideRxBERIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx BER stats table index 1. 
         The index is static-mapped to (wave port + 1)."
    ::= { xklWaveHostSideRxBEREntry 1 }

xklWaveHostSideRxBERIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx BER stats table index 2. 
         The index is static-mapped to media lane Id."
    ::= { xklWaveHostSideRxBEREntry 2 }

xklWaveHostSideRxBERWavePort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave port."
    ::= { xklWaveHostSideRxBEREntry 3 }

xklWaveHostSideRxBERLaneId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Lane Id."
    ::= { xklWaveHostSideRxBEREntry 4 }

xklWaveHostSideRxBERWaveStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave status."
    ::= { xklWaveHostSideRxBEREntry 5 }

xklWaveHostSideRxBERWaveDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Wave description."
    ::= { xklWaveHostSideRxBEREntry 6 }

xklWaveHostSideRxBERPreFECCurrentMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Pre-FEC BER current.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideRxBERPreFECCurrentExponent. 
         Media Pre-FEC BER current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideRxBEREntry 7 }

xklWaveHostSideRxBERPreFECCurrentExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Pre-FEC BER current.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideRxBERPreFECCurrentMantissa. 
         Media Pre-FEC BER current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideRxBEREntry 8 }

xklWaveHostSideRxBERPreFECMinMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Pre-FEC BER minimum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideRxBERPreFECMinExponent. 
         Media Pre-FEC BER minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideRxBEREntry 9 }

xklWaveHostSideRxBERPreFECMinExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Pre-FEC BER minimum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideRxBERPreFECMinMantissa. 
         Media Pre-FEC BER minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideRxBEREntry 10 }

xklWaveHostSideRxBERPreFECMaxMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Pre-FEC BER maximum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideRxBERPreFECMaxExponent. 
         Media Pre-FEC BER maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideRxBEREntry 11 }

xklWaveHostSideRxBERPreFECMaxExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Pre-FEC BER maximum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideRxBERPreFECMaxMantissa. 
         Media Pre-FEC BER maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideRxBEREntry 12 }

xklWaveHostSideRxBERPreFECAvgMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Pre-FEC BER average.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideRxBERPreFECAvgExponent. 
         Media Pre-FEC BER average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideRxBEREntry 13 }

xklWaveHostSideRxBERPreFECAvgExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Pre-FEC BER average.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideRxBERPreFECAvgMantissa. 
         Media Pre-FEC BER average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideRxBEREntry 14 }

xklWaveHostSideRxBERErrFramesCurrentMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Err Frames current.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideRxBERErrFramesCurrentExponent. 
         Media Err Frames current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideRxBEREntry 15 }

xklWaveHostSideRxBERErrFramesCurrentExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Err Frames current.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideRxBERErrFramesCurrentMantissa. 
         Media Err Frames current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideRxBEREntry 16 }

xklWaveHostSideRxBERErrFramesMinMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Err Frames minimum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideRxBERErrFramesMinExponent. 
         Media Err Frames minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideRxBEREntry 17 }

xklWaveHostSideRxBERErrFramesMinExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Err Frames minimum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideRxBERErrFramesMinMantissa. 
         Media Err Frames minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideRxBEREntry 18 }

xklWaveHostSideRxBERErrFramesMaxMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Err Frames maximum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideRxBERErrFramesMaxExponent. 
         Media Err Frames maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideRxBEREntry 19 }

xklWaveHostSideRxBERErrFramesMaxExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Err Frames maximum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideRxBERErrFramesMaxMantissa. 
         Media Err Frames maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideRxBEREntry 20 }

xklWaveHostSideRxBERErrFramesAvgMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Err Frames average.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideRxBERErrFramesAvgExponent. 
         Media Err Frames average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideRxBEREntry 21 }

xklWaveHostSideRxBERErrFramesAvgExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Err Frames average.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideRxBERErrFramesAvgMantissa. 
         Media Err Frames average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideRxBEREntry 22 }


-- DQ*400 Client Host-Side Rx BER Stats (Media Lane Input BER Stats)

xklClientHostSideRxBERCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of client host-side Rx BER stats."
    ::= { xklProData 40 }

xklClientHostSideRxBERTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklClientHostSideRxBEREntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx BER stats table."
    ::= { xklProData 41 }

xklClientHostSideRxBEREntry OBJECT-TYPE
    SYNTAX      XklClientHostSideRxBEREntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx BER stats entry."
    INDEX       { xklClientHostSideRxBERIndex1, xklClientHostSideRxBERIndex2 }
    ::= { xklClientHostSideRxBERTable 1 }

XklClientHostSideRxBEREntry ::=
    SEQUENCE {
        xklClientHostSideRxBERIndex1
            Unsigned32,
        xklClientHostSideRxBERIndex2
            Unsigned32,
        xklClientHostSideRxBERClientPort
            Unsigned32,
        xklClientHostSideRxBERLaneId
            Unsigned32,
        xklClientHostSideRxBERClientStatus
            XklTransceiverStatusEnum,
        xklClientHostSideRxBERClientDescr
            DisplayString,
        xklClientHostSideRxBERPreFECCurrentMantissa
            Integer32,
        xklClientHostSideRxBERPreFECCurrentExponent
            Integer32,
        xklClientHostSideRxBERPreFECMinMantissa
            Integer32,
        xklClientHostSideRxBERPreFECMinExponent
            Integer32,
        xklClientHostSideRxBERPreFECMaxMantissa
            Integer32,
        xklClientHostSideRxBERPreFECMaxExponent
            Integer32,
        xklClientHostSideRxBERPreFECAvgMantissa
            Integer32,
        xklClientHostSideRxBERPreFECAvgExponent
            Integer32,
        xklClientHostSideRxBERErrFramesCurrentMantissa
            Integer32,
        xklClientHostSideRxBERErrFramesCurrentExponent
            Integer32,
        xklClientHostSideRxBERErrFramesMinMantissa
            Integer32,
        xklClientHostSideRxBERErrFramesMinExponent
            Integer32,
        xklClientHostSideRxBERErrFramesMaxMantissa
            Integer32,
        xklClientHostSideRxBERErrFramesMaxExponent
            Integer32,
        xklClientHostSideRxBERErrFramesAvgMantissa
            Integer32,
        xklClientHostSideRxBERErrFramesAvgExponent
            Integer32
    }

xklClientHostSideRxBERIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx BER stats table index 1. 
         The index is static-mapped to (client port + 1)."
    ::= { xklClientHostSideRxBEREntry 1 }

xklClientHostSideRxBERIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx BER stats table index 2. 
         The index is static-mapped to media lane Id."
    ::= { xklClientHostSideRxBEREntry 2 }

xklClientHostSideRxBERClientPort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client port."
    ::= { xklClientHostSideRxBEREntry 3 }

xklClientHostSideRxBERLaneId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Lane Id."
    ::= { xklClientHostSideRxBEREntry 4 }

xklClientHostSideRxBERClientStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client status."
    ::= { xklClientHostSideRxBEREntry 5 }

xklClientHostSideRxBERClientDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Client description."
    ::= { xklClientHostSideRxBEREntry 6 }

xklClientHostSideRxBERPreFECCurrentMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Pre-FEC BER current.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideRxBERPreFECCurrentExponent. 
         Media Pre-FEC BER current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideRxBEREntry 7 }

xklClientHostSideRxBERPreFECCurrentExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Pre-FEC BER current.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideRxBERPreFECCurrentMantissa. 
         Media Pre-FEC BER current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideRxBEREntry 8 }

xklClientHostSideRxBERPreFECMinMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Pre-FEC BER minimum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideRxBERPreFECMinExponent. 
         Media Pre-FEC BER minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideRxBEREntry 9 }

xklClientHostSideRxBERPreFECMinExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Pre-FEC BER minimum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideRxBERPreFECMinMantissa. 
         Media Pre-FEC BER minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideRxBEREntry 10 }

xklClientHostSideRxBERPreFECMaxMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Pre-FEC BER maximum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideRxBERPreFECMaxExponent. 
         Media Pre-FEC BER maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideRxBEREntry 11 }

xklClientHostSideRxBERPreFECMaxExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Pre-FEC BER maximum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideRxBERPreFECMaxMantissa. 
         Media Pre-FEC BER maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideRxBEREntry 12 }

xklClientHostSideRxBERPreFECAvgMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Pre-FEC BER average.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideRxBERPreFECAvgExponent. 
         Media Pre-FEC BER average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideRxBEREntry 13 }

xklClientHostSideRxBERPreFECAvgExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Pre-FEC BER average.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideRxBERPreFECAvgMantissa. 
         Media Pre-FEC BER average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideRxBEREntry 14 }

xklClientHostSideRxBERErrFramesCurrentMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Err Frames current.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideRxBERErrFramesCurrentExponent. 
         Media Err Frames current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideRxBEREntry 15 }

xklClientHostSideRxBERErrFramesCurrentExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Err Frames current.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideRxBERErrFramesCurrentMantissa. 
         Media Err Frames current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideRxBEREntry 16 }

xklClientHostSideRxBERErrFramesMinMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Err Frames minimum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideRxBERErrFramesMinExponent. 
         Media Err Frames minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideRxBEREntry 17 }

xklClientHostSideRxBERErrFramesMinExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Err Frames minimum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideRxBERErrFramesMinMantissa. 
         Media Err Frames minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideRxBEREntry 18 }

xklClientHostSideRxBERErrFramesMaxMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Err Frames maximum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideRxBERErrFramesMaxExponent. 
         Media Err Frames maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideRxBEREntry 19 }

xklClientHostSideRxBERErrFramesMaxExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Err Frames maximum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideRxBERErrFramesMaxMantissa. 
         Media Err Frames maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideRxBEREntry 20 }

xklClientHostSideRxBERErrFramesAvgMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Media Err Frames average.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideRxBERErrFramesAvgExponent. 
         Media Err Frames average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideRxBEREntry 21 }

xklClientHostSideRxBERErrFramesAvgExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Media Err Frames average.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideRxBERErrFramesAvgMantissa. 
         Media Err Frames average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideRxBEREntry 22 }


-- DQ*400 Wave Host-Side Tx BER Stats (Host Lane Input BER Stats)

xklWaveHostSideTxBERCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of wave host-side Tx BER stats."
    ::= { xklProData 42 }

xklWaveHostSideTxBERTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklWaveHostSideTxBEREntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx BER stats table."
    ::= { xklProData 43 }

xklWaveHostSideTxBEREntry OBJECT-TYPE
    SYNTAX      XklWaveHostSideTxBEREntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx BER stats entry."
    INDEX       { xklWaveHostSideTxBERIndex1, xklWaveHostSideTxBERIndex2 }
    ::= { xklWaveHostSideTxBERTable 1 }

XklWaveHostSideTxBEREntry ::=
    SEQUENCE {
        xklWaveHostSideTxBERIndex1
            Unsigned32,
        xklWaveHostSideTxBERIndex2
            Unsigned32,
        xklWaveHostSideTxBERWavePort
            Unsigned32,
        xklWaveHostSideTxBERGroupId
            Unsigned32,
        xklWaveHostSideTxBERLaneId
            Unsigned32,
        xklWaveHostSideTxBERWaveStatus
            XklTransceiverStatusEnum,
        xklWaveHostSideTxBERWaveDescr
            DisplayString,
        xklWaveHostSideTxBERPreFECCurrentMantissa
            Integer32,
        xklWaveHostSideTxBERPreFECCurrentExponent
            Integer32,
        xklWaveHostSideTxBERPreFECMinMantissa
            Integer32,
        xklWaveHostSideTxBERPreFECMinExponent
            Integer32,
        xklWaveHostSideTxBERPreFECMaxMantissa
            Integer32,
        xklWaveHostSideTxBERPreFECMaxExponent
            Integer32,
        xklWaveHostSideTxBERPreFECAvgMantissa
            Integer32,
        xklWaveHostSideTxBERPreFECAvgExponent
            Integer32,
        xklWaveHostSideTxBERErrFramesCurrentMantissa
            Integer32,
        xklWaveHostSideTxBERErrFramesCurrentExponent
            Integer32,
        xklWaveHostSideTxBERErrFramesMinMantissa
            Integer32,
        xklWaveHostSideTxBERErrFramesMinExponent
            Integer32,
        xklWaveHostSideTxBERErrFramesMaxMantissa
            Integer32,
        xklWaveHostSideTxBERErrFramesMaxExponent
            Integer32,
        xklWaveHostSideTxBERErrFramesAvgMantissa
            Integer32,
        xklWaveHostSideTxBERErrFramesAvgExponent
            Integer32
    }

xklWaveHostSideTxBERIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx BER stats table index 1. 
         The index is static-mapped to (wave port + 1)."
    ::= { xklWaveHostSideTxBEREntry 1 }

xklWaveHostSideTxBERIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx BER stats table index 2. 
         The index is static-mapped to (host group Id + 1)."
    ::= { xklWaveHostSideTxBEREntry 2 }

xklWaveHostSideTxBERWavePort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave port."
    ::= { xklWaveHostSideTxBEREntry 3 }

xklWaveHostSideTxBERGroupId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host group Id."
    ::= { xklWaveHostSideTxBEREntry 4 }

xklWaveHostSideTxBERLaneId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Lane Id (1,3,5,7)."
    ::= { xklWaveHostSideTxBEREntry 5 }

xklWaveHostSideTxBERWaveStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave status."
    ::= { xklWaveHostSideTxBEREntry 6 }

xklWaveHostSideTxBERWaveDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Wave description."
    ::= { xklWaveHostSideTxBEREntry 7 }

xklWaveHostSideTxBERPreFECCurrentMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Pre-FEC BER current.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideTxBERPreFECCurrentExponent. 
         Host Pre-FEC BER current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideTxBEREntry 8 }

xklWaveHostSideTxBERPreFECCurrentExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Pre-FEC BER current.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideTxBERPreFECCurrentMantissa. 
         Host Pre-FEC BER current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideTxBEREntry 9 }

xklWaveHostSideTxBERPreFECMinMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Pre-FEC BER minimum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideTxBERPreFECMinExponent. 
         Host Pre-FEC BER minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideTxBEREntry 10 }

xklWaveHostSideTxBERPreFECMinExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Pre-FEC BER minimum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideTxBERPreFECMinMantissa. 
         Host Pre-FEC BER minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideTxBEREntry 11 }

xklWaveHostSideTxBERPreFECMaxMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Pre-FEC BER maximum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideTxBERPreFECMaxExponent. 
         Host Pre-FEC BER maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideTxBEREntry 12 }

xklWaveHostSideTxBERPreFECMaxExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Pre-FEC BER maximum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideTxBERPreFECMaxMantissa. 
         Host Pre-FEC BER maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideTxBEREntry 13 }

xklWaveHostSideTxBERPreFECAvgMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Pre-FEC BER average.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideTxBERPreFECAvgExponent. 
         Host Pre-FEC BER average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideTxBEREntry 14 }

xklWaveHostSideTxBERPreFECAvgExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Pre-FEC BER average.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideTxBERPreFECAvgMantissa. 
         Host Pre-FEC BER average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideTxBEREntry 15 }

xklWaveHostSideTxBERErrFramesCurrentMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Err Frames current.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideTxBERErrFramesCurrentExponent. 
         Host Err Frames current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideTxBEREntry 16 }

xklWaveHostSideTxBERErrFramesCurrentExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Err Frames current.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideTxBERErrFramesCurrentMantissa. 
         Host Err Frames current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideTxBEREntry 17 }

xklWaveHostSideTxBERErrFramesMinMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Err Frames minimum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideTxBERErrFramesMinExponent. 
         Host Err Frames minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideTxBEREntry 18 }

xklWaveHostSideTxBERErrFramesMinExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Err Frames minimum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideTxBERErrFramesMinMantissa. 
         Host Err Frames minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideTxBEREntry 19 }

xklWaveHostSideTxBERErrFramesMaxMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Err Frames maximum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideTxBERErrFramesMaxExponent. 
         Host Err Frames maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideTxBEREntry 20 }

xklWaveHostSideTxBERErrFramesMaxExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Err Frames maximum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideTxBERErrFramesMaxMantissa. 
         Host Err Frames maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideTxBEREntry 21 }

xklWaveHostSideTxBERErrFramesAvgMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Err Frames average.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklWaveHostSideTxBERErrFramesAvgExponent. 
         Host Err Frames average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklWaveHostSideTxBEREntry 22 }

xklWaveHostSideTxBERErrFramesAvgExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Err Frames average.
         It is represented in powers of 10. The mantissa part is 
         defined in xklWaveHostSideTxBERErrFramesAvgMantissa. 
         Host Err Frames average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklWaveHostSideTxBEREntry 23 }


-- DQ*400 Client Host-Side Tx BER Stats (Host Lane Input BER Stats)

xklClientHostSideTxBERCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of client host-side Tx BER stats."
    ::= { xklProData 44 }

xklClientHostSideTxBERTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklClientHostSideTxBEREntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx BER stats table."
    ::= { xklProData 45 }

xklClientHostSideTxBEREntry OBJECT-TYPE
    SYNTAX      XklClientHostSideTxBEREntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx BER stats entry."
    INDEX       { xklClientHostSideTxBERIndex1, xklClientHostSideTxBERIndex2 }
    ::= { xklClientHostSideTxBERTable 1 }

XklClientHostSideTxBEREntry ::=
    SEQUENCE {
        xklClientHostSideTxBERIndex1
            Unsigned32,
        xklClientHostSideTxBERIndex2
            Unsigned32,
        xklClientHostSideTxBERClientPort
            Unsigned32,
        xklClientHostSideTxBERGroupId
            Unsigned32,
        xklClientHostSideTxBERLaneId
            Unsigned32,
        xklClientHostSideTxBERClientStatus
            XklTransceiverStatusEnum,
        xklClientHostSideTxBERClientDescr
            DisplayString,
        xklClientHostSideTxBERPreFECCurrentMantissa
            Integer32,
        xklClientHostSideTxBERPreFECCurrentExponent
            Integer32,
        xklClientHostSideTxBERPreFECMinMantissa
            Integer32,
        xklClientHostSideTxBERPreFECMinExponent
            Integer32,
        xklClientHostSideTxBERPreFECMaxMantissa
            Integer32,
        xklClientHostSideTxBERPreFECMaxExponent
            Integer32,
        xklClientHostSideTxBERPreFECAvgMantissa
            Integer32,
        xklClientHostSideTxBERPreFECAvgExponent
            Integer32,
        xklClientHostSideTxBERErrFramesCurrentMantissa
            Integer32,
        xklClientHostSideTxBERErrFramesCurrentExponent
            Integer32,
        xklClientHostSideTxBERErrFramesMinMantissa
            Integer32,
        xklClientHostSideTxBERErrFramesMinExponent
            Integer32,
        xklClientHostSideTxBERErrFramesMaxMantissa
            Integer32,
        xklClientHostSideTxBERErrFramesMaxExponent
            Integer32,
        xklClientHostSideTxBERErrFramesAvgMantissa
            Integer32,
        xklClientHostSideTxBERErrFramesAvgExponent
            Integer32
    }

xklClientHostSideTxBERIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx BER stats table index 1. 
         The index is static-mapped to (client port + 1)."
    ::= { xklClientHostSideTxBEREntry 1 }

xklClientHostSideTxBERIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx BER stats table index 2. 
         The index is static-mapped to (host group Id + 1)."
    ::= { xklClientHostSideTxBEREntry 2 }

xklClientHostSideTxBERClientPort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client port."
    ::= { xklClientHostSideTxBEREntry 3 }

xklClientHostSideTxBERGroupId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host group Id."
    ::= { xklClientHostSideTxBEREntry 4 }

xklClientHostSideTxBERLaneId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Lane Id (1,3,5,7)."
    ::= { xklClientHostSideTxBEREntry 5 }

xklClientHostSideTxBERClientStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client status."
    ::= { xklClientHostSideTxBEREntry 6 }

xklClientHostSideTxBERClientDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Client description."
    ::= { xklClientHostSideTxBEREntry 7 }

xklClientHostSideTxBERPreFECCurrentMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Pre-FEC BER current.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideTxBERPreFECCurrentExponent. 
         Host Pre-FEC BER current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideTxBEREntry 8 }

xklClientHostSideTxBERPreFECCurrentExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Pre-FEC BER current.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideTxBERPreFECCurrentMantissa. 
         Host Pre-FEC BER current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideTxBEREntry 9 }

xklClientHostSideTxBERPreFECMinMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Pre-FEC BER minimum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideTxBERPreFECMinExponent. 
         Host Pre-FEC BER minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideTxBEREntry 10 }

xklClientHostSideTxBERPreFECMinExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Pre-FEC BER minimum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideTxBERPreFECMinMantissa. 
         Host Pre-FEC BER minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideTxBEREntry 11 }

xklClientHostSideTxBERPreFECMaxMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Pre-FEC BER maximum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideTxBERPreFECMaxExponent. 
         Host Pre-FEC BER maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideTxBEREntry 12 }

xklClientHostSideTxBERPreFECMaxExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Pre-FEC BER maximum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideTxBERPreFECMaxMantissa. 
         Host Pre-FEC BER maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideTxBEREntry 13 }

xklClientHostSideTxBERPreFECAvgMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Pre-FEC BER average.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideTxBERPreFECAvgExponent. 
         Host Pre-FEC BER average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideTxBEREntry 14 }

xklClientHostSideTxBERPreFECAvgExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Pre-FEC BER average.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideTxBERPreFECAvgMantissa. 
         Host Pre-FEC BER average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideTxBEREntry 15 }

xklClientHostSideTxBERErrFramesCurrentMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Err Frames current.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideTxBERErrFramesCurrentExponent. 
         Host Err Frames current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideTxBEREntry 16 }

xklClientHostSideTxBERErrFramesCurrentExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Err Frames current.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideTxBERErrFramesCurrentMantissa. 
         Host Err Frames current is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideTxBEREntry 17 }

xklClientHostSideTxBERErrFramesMinMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Err Frames minimum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideTxBERErrFramesMinExponent. 
         Host Err Frames minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideTxBEREntry 18 }

xklClientHostSideTxBERErrFramesMinExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Err Frames minimum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideTxBERErrFramesMinMantissa. 
         Host Err Frames minimum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideTxBEREntry 19 }

xklClientHostSideTxBERErrFramesMaxMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Err Frames maximum.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideTxBERErrFramesMaxExponent. 
         Host Err Frames maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideTxBEREntry 20 }

xklClientHostSideTxBERErrFramesMaxExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Err Frames maximum.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideTxBERErrFramesMaxMantissa. 
         Host Err Frames maximum is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideTxBEREntry 21 }

xklClientHostSideTxBERErrFramesAvgMantissa OBJECT-TYPE
    SYNTAX      Integer32 (0..999)
    UNITS       "1/100"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the mantissa part of the Host Err Frames average.
         It is represented in one hundreths of a unit. The exponent part is 
         defined in xklClientHostSideTxBERErrFramesAvgExponent. 
         Host Err Frames average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value 235 represents the mantissa of 2.35.
        "
    ::= { xklClientHostSideTxBEREntry 22 }

xklClientHostSideTxBERErrFramesAvgExponent OBJECT-TYPE
    SYNTAX      Integer32 (-30..0)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object gives the exponent part of the Host Err Frames average.
         It is represented in powers of 10. The mantissa part is 
         defined in xklClientHostSideTxBERErrFramesAvgMantissa. 
         Host Err Frames average is expressed in Scientific E notation 
         with two decimal places.

         Example: The value -11 represents the exponent value of 10 to 
         the power of -11.
        "
    ::= { xklClientHostSideTxBEREntry 23 }


-- DQ*400 Wave Host-Side Rx PM Counters

xklWaveHostSideRxPMCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of wave host-side Rx PM counters."
    ::= { xklProData 46 }

xklWaveHostSideRxPMTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklWaveHostSideRxPMEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx PM counter table."
    ::= { xklProData 47 }

xklWaveHostSideRxPMEntry OBJECT-TYPE
    SYNTAX      XklWaveHostSideRxPMEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx PM counter entry."
    INDEX       { xklWaveHostSideRxPMIndex }
    ::= { xklWaveHostSideRxPMTable 1 }

XklWaveHostSideRxPMEntry ::=
    SEQUENCE {
        xklWaveHostSideRxPMIndex
            Unsigned32,
        xklWaveHostSideRxPMWavePort
            Unsigned32,
        xklWaveHostSideRxPMWaveStatus
            XklTransceiverStatusEnum,
        xklWaveHostSideRxPMWaveDescr
            DisplayString,
        xklWaveHostSideRxPMRxBits
            Counter64,
        xklWaveHostSideRxPMRxCorrectedBits
            Counter64,
        xklWaveHostSideRxPMRxFrames
            Counter64,
        xklWaveHostSideRxPMRxFrameUncorrectedErrors
            Counter64
    }

xklWaveHostSideRxPMIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx PM counter table index. 
         The index is static-mapped to (wave port + 1)."
    ::= { xklWaveHostSideRxPMEntry 1 }

xklWaveHostSideRxPMWavePort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave port."
    ::= { xklWaveHostSideRxPMEntry 2 }

xklWaveHostSideRxPMWaveStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave status."
    ::= { xklWaveHostSideRxPMEntry 3 }

xklWaveHostSideRxPMWaveDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Wave description."
    ::= { xklWaveHostSideRxPMEntry 4 }

xklWaveHostSideRxPMRxBits OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bits."
    ::= { xklWaveHostSideRxPMEntry 5 }

xklWaveHostSideRxPMRxCorrectedBits OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Corrected Bits."
    ::= { xklWaveHostSideRxPMEntry 6 }

xklWaveHostSideRxPMRxFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frames."
    ::= { xklWaveHostSideRxPMEntry 7 }

xklWaveHostSideRxPMRxFrameUncorrectedErrors OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frame Uncorrected Errors."
    ::= { xklWaveHostSideRxPMEntry 8 }


-- DQ*400 Client Host-Side Rx PM Counters

xklClientHostSideRxPMCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of client host-side Rx PM counters."
    ::= { xklProData 48 }

xklClientHostSideRxPMTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklClientHostSideRxPMEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx PM counter table."
    ::= { xklProData 49 }

xklClientHostSideRxPMEntry OBJECT-TYPE
    SYNTAX      XklClientHostSideRxPMEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx PM counter entry."
    INDEX       { xklClientHostSideRxPMIndex }
    ::= { xklClientHostSideRxPMTable 1 }

XklClientHostSideRxPMEntry ::=
    SEQUENCE {
        xklClientHostSideRxPMIndex
            Unsigned32,
        xklClientHostSideRxPMClientPort
            Unsigned32,
        xklClientHostSideRxPMClientStatus
            XklTransceiverStatusEnum,
        xklClientHostSideRxPMClientDescr
            DisplayString,
        xklClientHostSideRxPMRxBits
            Counter64,
        xklClientHostSideRxPMRxCorrectedBits
            Counter64,
        xklClientHostSideRxPMRxFrames
            Counter64,
        xklClientHostSideRxPMRxFrameUncorrectedErrors
            Counter64
    }

xklClientHostSideRxPMIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx PM counter table index. 
         The index is static-mapped to (client port + 1)."
    ::= { xklClientHostSideRxPMEntry 1 }

xklClientHostSideRxPMClientPort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client port."
    ::= { xklClientHostSideRxPMEntry 2 }

xklClientHostSideRxPMClientStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client status."
    ::= { xklClientHostSideRxPMEntry 3 }

xklClientHostSideRxPMClientDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Client description."
    ::= { xklClientHostSideRxPMEntry 4 }

xklClientHostSideRxPMRxBits OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bits."
    ::= { xklClientHostSideRxPMEntry 5 }

xklClientHostSideRxPMRxCorrectedBits OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Corrected Bits."
    ::= { xklClientHostSideRxPMEntry 6 }

xklClientHostSideRxPMRxFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frames."
    ::= { xklClientHostSideRxPMEntry 7 }

xklClientHostSideRxPMRxFrameUncorrectedErrors OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frame Uncorrected Errors."
    ::= { xklClientHostSideRxPMEntry 8 }


-- DQ*400 Wave Host-Side Tx PM Counters

xklWaveHostSideTxPMCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of wave host-side Tx PM counters."
    ::= { xklProData 50 }

xklWaveHostSideTxPMTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklWaveHostSideTxPMEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx PM counter table."
    ::= { xklProData 51 }

xklWaveHostSideTxPMEntry OBJECT-TYPE
    SYNTAX      XklWaveHostSideTxPMEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx PM counter entry."
    INDEX       { xklWaveHostSideTxPMIndex1, xklWaveHostSideTxPMIndex2 }
    ::= { xklWaveHostSideTxPMTable 1 }

XklWaveHostSideTxPMEntry ::=
    SEQUENCE {
        xklWaveHostSideTxPMIndex1
            Unsigned32,
        xklWaveHostSideTxPMIndex2
            Unsigned32,
        xklWaveHostSideTxPMWavePort
            Unsigned32,
        xklWaveHostSideTxPMGroupId
            Unsigned32,
        xklWaveHostSideTxPMWaveStatus
            XklTransceiverStatusEnum,
        xklWaveHostSideTxPMWaveDescr
            DisplayString,
        xklWaveHostSideTxPMTxBits
            Counter64,
        xklWaveHostSideTxPMTxCorrectedBits
            Counter64,
        xklWaveHostSideTxPMTxFrames
            Counter64,
        xklWaveHostSideTxPMTxFrameUncorrectedErrors
            Counter64
    }

xklWaveHostSideTxPMIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx PM counter table index. 
         The index is static-mapped to (wave port + 1)."
    ::= { xklWaveHostSideTxPMEntry 1 }

xklWaveHostSideTxPMIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx PM counter table index. 
         The index is static-mapped to (host group Id + 1)."
    ::= { xklWaveHostSideTxPMEntry 2 }

xklWaveHostSideTxPMWavePort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave port."
    ::= { xklWaveHostSideTxPMEntry 3 }

xklWaveHostSideTxPMGroupId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host group Id."
    ::= { xklWaveHostSideTxPMEntry 4 }

xklWaveHostSideTxPMWaveStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave status."
    ::= { xklWaveHostSideTxPMEntry 5 }

xklWaveHostSideTxPMWaveDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Wave description."
    ::= { xklWaveHostSideTxPMEntry 6 }

xklWaveHostSideTxPMTxBits OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bits."
    ::= { xklWaveHostSideTxPMEntry 7 }

xklWaveHostSideTxPMTxCorrectedBits OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Corrected Bits."
    ::= { xklWaveHostSideTxPMEntry 8 }

xklWaveHostSideTxPMTxFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frames."
    ::= { xklWaveHostSideTxPMEntry 9 }

xklWaveHostSideTxPMTxFrameUncorrectedErrors OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frame Uncorrected Errors."
    ::= { xklWaveHostSideTxPMEntry 10 }


-- DQ*400 Client Host-Side Tx PM Counters

xklClientHostSideTxPMCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of client host-side Tx PM counters."
    ::= { xklProData 52 }

xklClientHostSideTxPMTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklClientHostSideTxPMEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx PM counter table."
    ::= { xklProData 53 }

xklClientHostSideTxPMEntry OBJECT-TYPE
    SYNTAX      XklClientHostSideTxPMEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx PM counter entry."
    INDEX       { xklClientHostSideTxPMIndex1, xklClientHostSideTxPMIndex2 }
    ::= { xklClientHostSideTxPMTable 1 }

XklClientHostSideTxPMEntry ::=
    SEQUENCE {
        xklClientHostSideTxPMIndex1
            Unsigned32,
        xklClientHostSideTxPMIndex2
            Unsigned32,
        xklClientHostSideTxPMClientPort
            Unsigned32,
        xklClientHostSideTxPMGroupId
            Unsigned32,
        xklClientHostSideTxPMClientStatus
            XklTransceiverStatusEnum,
        xklClientHostSideTxPMClientDescr
            DisplayString,
        xklClientHostSideTxPMTxBits
            Counter64,
        xklClientHostSideTxPMTxCorrectedBits
            Counter64,
        xklClientHostSideTxPMTxFrames
            Counter64,
        xklClientHostSideTxPMTxFrameUncorrectedErrors
            Counter64
    }

xklClientHostSideTxPMIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx PM counter table index. 
         The index is static-mapped to (client port + 1)."
    ::= { xklClientHostSideTxPMEntry 1 }

xklClientHostSideTxPMIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx PM counter table index. 
         The index is static-mapped to (host group Id + 1)."
    ::= { xklClientHostSideTxPMEntry 2 }

xklClientHostSideTxPMClientPort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client port."
    ::= { xklClientHostSideTxPMEntry 3 }

xklClientHostSideTxPMGroupId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host group Id."
    ::= { xklClientHostSideTxPMEntry 4 }

xklClientHostSideTxPMClientStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client status."
    ::= { xklClientHostSideTxPMEntry 5 }

xklClientHostSideTxPMClientDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Client description."
    ::= { xklClientHostSideTxPMEntry 6 }

xklClientHostSideTxPMTxBits OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bits."
    ::= { xklClientHostSideTxPMEntry 7 }

xklClientHostSideTxPMTxCorrectedBits OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Corrected Bits."
    ::= { xklClientHostSideTxPMEntry 8 }

xklClientHostSideTxPMTxFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frames."
    ::= { xklClientHostSideTxPMEntry 9 }

xklClientHostSideTxPMTxFrameUncorrectedErrors OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frame Uncorrected Errors."
    ::= { xklClientHostSideTxPMEntry 10 }


-- DQ*400 Wave Host-Side Rx PM Sub-Interval Counters (~1 second samples)

xklWaveHostSideRxPMSubIntCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of wave host-side Rx PM sub-interval counters."
    ::= { xklProData 54 }

xklWaveHostSideRxPMSubIntTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklWaveHostSideRxPMSubIntEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx PM sub-interval counter table."
    ::= { xklProData 55 }

xklWaveHostSideRxPMSubIntEntry OBJECT-TYPE
    SYNTAX      XklWaveHostSideRxPMSubIntEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx PM sub-interval counter entry."
    INDEX       { xklWaveHostSideRxPMSubIntIndex }
    ::= { xklWaveHostSideRxPMSubIntTable 1 }

XklWaveHostSideRxPMSubIntEntry ::=
    SEQUENCE {
        xklWaveHostSideRxPMSubIntIndex
            Unsigned32,
        xklWaveHostSideRxPMSubIntWavePort
            Unsigned32,
        xklWaveHostSideRxPMSubIntWaveStatus
            XklTransceiverStatusEnum,
        xklWaveHostSideRxPMSubIntWaveDescr
            DisplayString,
        xklWaveHostSideRxPMSubIntRxBitsAvg
            Counter64,
        xklWaveHostSideRxPMSubIntRxCorrectedBitMin
            Counter64,
        xklWaveHostSideRxPMSubIntRxCorrectedBitMax
            Counter64,
        xklWaveHostSideRxPMSubIntRxFramesAvg
            Unsigned32,
        xklWaveHostSideRxPMSubIntRxFrameUncorrectedMin
            Unsigned32,
        xklWaveHostSideRxPMSubIntRxFrameUncorrectedMax
            Unsigned32
    }

xklWaveHostSideRxPMSubIntIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx PM sub-interval counter table index. 
         The index is static-mapped to (wave port + 1)."
    ::= { xklWaveHostSideRxPMSubIntEntry 1 }

xklWaveHostSideRxPMSubIntWavePort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave port."
    ::= { xklWaveHostSideRxPMSubIntEntry 2 }

xklWaveHostSideRxPMSubIntWaveStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave status."
    ::= { xklWaveHostSideRxPMSubIntEntry 3 }

xklWaveHostSideRxPMSubIntWaveDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Wave description."
    ::= { xklWaveHostSideRxPMSubIntEntry 4 }

xklWaveHostSideRxPMSubIntRxBitsAvg OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bits average."
    ::= { xklWaveHostSideRxPMSubIntEntry 5 }

xklWaveHostSideRxPMSubIntRxCorrectedBitMin OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Corrected Bits minimum."
    ::= { xklWaveHostSideRxPMSubIntEntry 6 }

xklWaveHostSideRxPMSubIntRxCorrectedBitMax OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Corrected Bits maximum."
    ::= { xklWaveHostSideRxPMSubIntEntry 7 }

xklWaveHostSideRxPMSubIntRxFramesAvg OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frames average."
    ::= { xklWaveHostSideRxPMSubIntEntry 8 }

xklWaveHostSideRxPMSubIntRxFrameUncorrectedMin OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frame Uncorrected minimum."
    ::= { xklWaveHostSideRxPMSubIntEntry 9 }

xklWaveHostSideRxPMSubIntRxFrameUncorrectedMax OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frame Uncorrected maximum."
    ::= { xklWaveHostSideRxPMSubIntEntry 10 }


-- DQ*400 Client Host-Side Rx PM Sub-Interval Counters (~1 second samples)

xklClientHostSideRxPMSubIntCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of client host-side Rx PM sub-interval counters."
    ::= { xklProData 56 }

xklClientHostSideRxPMSubIntTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklClientHostSideRxPMSubIntEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx PM sub-interval counter table."
    ::= { xklProData 57 }

xklClientHostSideRxPMSubIntEntry OBJECT-TYPE
    SYNTAX      XklClientHostSideRxPMSubIntEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx PM sub-interval counter entry."
    INDEX       { xklClientHostSideRxPMSubIntIndex }
    ::= { xklClientHostSideRxPMSubIntTable 1 }

XklClientHostSideRxPMSubIntEntry ::=
    SEQUENCE {
        xklClientHostSideRxPMSubIntIndex
            Unsigned32,
        xklClientHostSideRxPMSubIntClientPort
            Unsigned32,
        xklClientHostSideRxPMSubIntClientStatus
            XklTransceiverStatusEnum,
        xklClientHostSideRxPMSubIntClientDescr
            DisplayString,
        xklClientHostSideRxPMSubIntRxBitsAvg
            Counter64,
        xklClientHostSideRxPMSubIntRxCorrectedBitMin
            Counter64,
        xklClientHostSideRxPMSubIntRxCorrectedBitMax
            Counter64,
        xklClientHostSideRxPMSubIntRxFramesAvg
            Unsigned32,
        xklClientHostSideRxPMSubIntRxFrameUncorrectedMin
            Unsigned32,
        xklClientHostSideRxPMSubIntRxFrameUncorrectedMax
            Unsigned32
    }

xklClientHostSideRxPMSubIntIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx PM sub-interval counter table index. 
         The index is static-mapped to (client port + 1)."
    ::= { xklClientHostSideRxPMSubIntEntry 1 }

xklClientHostSideRxPMSubIntClientPort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client port."
    ::= { xklClientHostSideRxPMSubIntEntry 2 }

xklClientHostSideRxPMSubIntClientStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client status."
    ::= { xklClientHostSideRxPMSubIntEntry 3 }

xklClientHostSideRxPMSubIntClientDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Client description."
    ::= { xklClientHostSideRxPMSubIntEntry 4 }

xklClientHostSideRxPMSubIntRxBitsAvg OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bits."
    ::= { xklClientHostSideRxPMSubIntEntry 5 }

xklClientHostSideRxPMSubIntRxCorrectedBitMin OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Corrected Bits minimum."
    ::= { xklClientHostSideRxPMSubIntEntry 6 }

xklClientHostSideRxPMSubIntRxCorrectedBitMax OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Corrected Bits maximum."
    ::= { xklClientHostSideRxPMSubIntEntry 7 }

xklClientHostSideRxPMSubIntRxFramesAvg OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frames."
    ::= { xklClientHostSideRxPMSubIntEntry 8 }

xklClientHostSideRxPMSubIntRxFrameUncorrectedMin OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frame Uncorrected minimum."
    ::= { xklClientHostSideRxPMSubIntEntry 9 }

xklClientHostSideRxPMSubIntRxFrameUncorrectedMax OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frame Uncorrected maximum."
    ::= { xklClientHostSideRxPMSubIntEntry 10 }


-- DQ*400 Wave Host-Side Tx PM Sub-Interval Counters (~1 second samples)

xklWaveHostSideTxPMSubIntCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of wave host-side Tx PM sub-interval counters."
    ::= { xklProData 58 }

xklWaveHostSideTxPMSubIntTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklWaveHostSideTxPMSubIntEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx PM sub-interval counter table."
    ::= { xklProData 59 }

xklWaveHostSideTxPMSubIntEntry OBJECT-TYPE
    SYNTAX      XklWaveHostSideTxPMSubIntEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx PM sub-interval counter entry."
    INDEX       { xklWaveHostSideTxPMSubIntIndex1, xklWaveHostSideTxPMSubIntIndex2 }
    ::= { xklWaveHostSideTxPMSubIntTable 1 }

XklWaveHostSideTxPMSubIntEntry ::=
    SEQUENCE {
        xklWaveHostSideTxPMSubIntIndex1
            Unsigned32,
        xklWaveHostSideTxPMSubIntIndex2
            Unsigned32,
        xklWaveHostSideTxPMSubIntWavePort
            Unsigned32,
        xklWaveHostSideTxPMSubIntGroupId
            Unsigned32,
        xklWaveHostSideTxPMSubIntWaveStatus
            XklTransceiverStatusEnum,
        xklWaveHostSideTxPMSubIntWaveDescr
            DisplayString,
        xklWaveHostSideTxPMSubIntTxBitsAvg
            Counter64,
        xklWaveHostSideTxPMSubIntTxCorrectedBitMin
            Counter64,
        xklWaveHostSideTxPMSubIntTxCorrectedBitMax
            Counter64,
        xklWaveHostSideTxPMSubIntTxFramesAvg
            Unsigned32,
        xklWaveHostSideTxPMSubIntTxFrameUncorrectedMin
            Unsigned32,
        xklWaveHostSideTxPMSubIntTxFrameUncorrectedMax
            Unsigned32
    }

xklWaveHostSideTxPMSubIntIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx PM sub-interval counter table index. 
         The index is static-mapped to (wave port + 1)."
    ::= { xklWaveHostSideTxPMSubIntEntry 1 }

xklWaveHostSideTxPMSubIntIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx PM sub-interval counter table index. 
         The index is static-mapped to (host group Id + 1)."
    ::= { xklWaveHostSideTxPMSubIntEntry 2 }

xklWaveHostSideTxPMSubIntWavePort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave port."
    ::= { xklWaveHostSideTxPMSubIntEntry 3 }

xklWaveHostSideTxPMSubIntGroupId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host group Id."
    ::= { xklWaveHostSideTxPMSubIntEntry 4 }

xklWaveHostSideTxPMSubIntWaveStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave status."
    ::= { xklWaveHostSideTxPMSubIntEntry 5 }

xklWaveHostSideTxPMSubIntWaveDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Wave description."
    ::= { xklWaveHostSideTxPMSubIntEntry 6 }

xklWaveHostSideTxPMSubIntTxBitsAvg OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bits average."
    ::= { xklWaveHostSideTxPMSubIntEntry 7 }

xklWaveHostSideTxPMSubIntTxCorrectedBitMin OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Corrected Bits minimum."
    ::= { xklWaveHostSideTxPMSubIntEntry 8 }

xklWaveHostSideTxPMSubIntTxCorrectedBitMax OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Corrected Bits maximum."
    ::= { xklWaveHostSideTxPMSubIntEntry 9 }

xklWaveHostSideTxPMSubIntTxFramesAvg OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frames average."
    ::= { xklWaveHostSideTxPMSubIntEntry 10 }

xklWaveHostSideTxPMSubIntTxFrameUncorrectedMin OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frame Uncorrected minimum."
    ::= { xklWaveHostSideTxPMSubIntEntry 11 }

xklWaveHostSideTxPMSubIntTxFrameUncorrectedMax OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frame Uncorrected maximum."
    ::= { xklWaveHostSideTxPMSubIntEntry 12 }


-- DQ*400 Client Host-Side Tx PM Sub-Interval Counters (~1 second samples)

xklClientHostSideTxPMSubIntCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of client host-side Tx PM sub-interval counters."
    ::= { xklProData 60 }

xklClientHostSideTxPMSubIntTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklClientHostSideTxPMSubIntEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx PM sub-interval counter table."
    ::= { xklProData 61 }

xklClientHostSideTxPMSubIntEntry OBJECT-TYPE
    SYNTAX      XklClientHostSideTxPMSubIntEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx PM sub-interval counter entry."
    INDEX       { xklClientHostSideTxPMSubIntIndex1, xklClientHostSideTxPMSubIntIndex2 }
    ::= { xklClientHostSideTxPMSubIntTable 1 }

XklClientHostSideTxPMSubIntEntry ::=
    SEQUENCE {
        xklClientHostSideTxPMSubIntIndex1
            Unsigned32,
        xklClientHostSideTxPMSubIntIndex2
            Unsigned32,
        xklClientHostSideTxPMSubIntClientPort
            Unsigned32,
        xklClientHostSideTxPMSubIntGroupId
            Unsigned32,
        xklClientHostSideTxPMSubIntClientStatus
            XklTransceiverStatusEnum,
        xklClientHostSideTxPMSubIntClientDescr
            DisplayString,
        xklClientHostSideTxPMSubIntTxBitsAvg
            Counter64,
        xklClientHostSideTxPMSubIntTxCorrectedBitMin
            Counter64,
        xklClientHostSideTxPMSubIntTxCorrectedBitMax
            Counter64,
        xklClientHostSideTxPMSubIntTxFramesAvg
            Unsigned32,
        xklClientHostSideTxPMSubIntTxFrameUncorrectedMin
            Unsigned32,
        xklClientHostSideTxPMSubIntTxFrameUncorrectedMax
            Unsigned32
    }

xklClientHostSideTxPMSubIntIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx PM sub-interval counter table index. 
         The index is static-mapped to (client port + 1)."
    ::= { xklClientHostSideTxPMSubIntEntry 1 }

xklClientHostSideTxPMSubIntIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx PM sub-interval counter table index. 
         The index is static-mapped to (host group Id + 1)."
    ::= { xklClientHostSideTxPMSubIntEntry 2 }

xklClientHostSideTxPMSubIntClientPort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client port."
    ::= { xklClientHostSideTxPMSubIntEntry 3 }

xklClientHostSideTxPMSubIntGroupId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host group Id."
    ::= { xklClientHostSideTxPMSubIntEntry 4 }

xklClientHostSideTxPMSubIntClientStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client status."
    ::= { xklClientHostSideTxPMSubIntEntry 5 }

xklClientHostSideTxPMSubIntClientDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Client description."
    ::= { xklClientHostSideTxPMSubIntEntry 6 }

xklClientHostSideTxPMSubIntTxBitsAvg OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bits average."
    ::= { xklClientHostSideTxPMSubIntEntry 7 }

xklClientHostSideTxPMSubIntTxCorrectedBitMin OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Corrected Bits minimum."
    ::= { xklClientHostSideTxPMSubIntEntry 8 }

xklClientHostSideTxPMSubIntTxCorrectedBitMax OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Corrected Bits maximum."
    ::= { xklClientHostSideTxPMSubIntEntry 9 }

xklClientHostSideTxPMSubIntTxFramesAvg OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frames average."
    ::= { xklClientHostSideTxPMSubIntEntry 10 }

xklClientHostSideTxPMSubIntTxFrameUncorrectedMin OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frame Uncorrected minimum."
    ::= { xklClientHostSideTxPMSubIntEntry 11 }

xklClientHostSideTxPMSubIntTxFrameUncorrectedMax OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frame Uncorrected maximum."
    ::= { xklClientHostSideTxPMSubIntEntry 12 }


-- DQ*400 Wave Host-Side Rx PM Ethernet Counters

xklWaveHostSideRxPMEthCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of wave host-side Rx PM ethernet counters."
    ::= { xklProData 62 }

xklWaveHostSideRxPMEthTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklWaveHostSideRxPMEthEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx PM ethernet counter table."
    ::= { xklProData 63 }

xklWaveHostSideRxPMEthEntry OBJECT-TYPE
    SYNTAX      XklWaveHostSideRxPMEthEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx PM ethernet counter entry."
    INDEX       { xklWaveHostSideRxPMEthIndex1, xklWaveHostSideRxPMEthIndex2 }
    ::= { xklWaveHostSideRxPMEthTable 1 }

XklWaveHostSideRxPMEthEntry ::=
    SEQUENCE {
        xklWaveHostSideRxPMEthIndex1
            Unsigned32,
        xklWaveHostSideRxPMEthIndex2
            Unsigned32,
        xklWaveHostSideRxPMEthWavePort
            Unsigned32,
        xklWaveHostSideRxPMEthGroupId
            Unsigned32,
        xklWaveHostSideRxPMEthLaneId
            Unsigned32,
        xklWaveHostSideRxPMEthWaveStatus
            XklTransceiverStatusEnum,
        xklWaveHostSideRxPMEthWaveDescr
            DisplayString,
        xklWaveHostSideRxPMEthRxUtil
            Integer32,
        xklWaveHostSideRxPMEthRxFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBytes
            Counter64,
        xklWaveHostSideRxPMEthRxMulticastFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBroadcastFrames
            Counter64,
        xklWaveHostSideRxPMEthRx64ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRx65To127ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRx128To255ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRx256To511ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRx512To1023ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRx1024To1518ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRx1519ToJumboByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRxGeJumboByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBadFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBadBytes
            Counter64,
        xklWaveHostSideRxPMEthRxBadMulticastFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBadBroadcastFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBadCRCFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBadLt64ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBad64ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBad65To127ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBad128To255ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBad256To511ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBad512To1023ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBad1024To1518ByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBad1519ToJumboByteFrames
            Counter64,
        xklWaveHostSideRxPMEthRxBadGeJumboByteFrames
            Counter64
    }

xklWaveHostSideRxPMEthIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx PM ethernet counter table index 1. 
         The index is static-mapped to (wave port + 1)."
    ::= { xklWaveHostSideRxPMEthEntry 1 }

xklWaveHostSideRxPMEthIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Rx PM ethernet counter table index 2. 
         The index is static-mapped to (host group Id + 1)."
    ::= { xklWaveHostSideRxPMEthEntry 2 }

xklWaveHostSideRxPMEthWavePort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave port."
    ::= { xklWaveHostSideRxPMEthEntry 3 }

xklWaveHostSideRxPMEthGroupId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host group Id."
    ::= { xklWaveHostSideRxPMEthEntry 4 }

xklWaveHostSideRxPMEthLaneId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host lane Id."
    ::= { xklWaveHostSideRxPMEthEntry 5 }

xklWaveHostSideRxPMEthWaveStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave status."
    ::= { xklWaveHostSideRxPMEthEntry 6 }

xklWaveHostSideRxPMEthWaveDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Wave description."
    ::= { xklWaveHostSideRxPMEthEntry 7 }

xklWaveHostSideRxPMEthRxUtil OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Utilization."
    ::= { xklWaveHostSideRxPMEthEntry 8 }

xklWaveHostSideRxPMEthRxFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frames."
    ::= { xklWaveHostSideRxPMEthEntry 9 }

xklWaveHostSideRxPMEthRxBytes OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bytes."
    ::= { xklWaveHostSideRxPMEthEntry 10 }

xklWaveHostSideRxPMEthRxMulticastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Multicast Frames."
    ::= { xklWaveHostSideRxPMEthEntry 11 }

xklWaveHostSideRxPMEthRxBroadcastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Broadcast Frames."
    ::= { xklWaveHostSideRxPMEthEntry 12 }

xklWaveHostSideRxPMEthRx64ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 64 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 13 }

xklWaveHostSideRxPMEthRx65To127ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 65 to 127 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 14 }

xklWaveHostSideRxPMEthRx128To255ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 128 to 255 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 15 }

xklWaveHostSideRxPMEthRx256To511ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 256 to 511 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 16 }

xklWaveHostSideRxPMEthRx512To1023ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 512 to 1023 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 17 }

xklWaveHostSideRxPMEthRx1024To1518ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 1024 to 1518 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 18 }

xklWaveHostSideRxPMEthRx1519ToJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 1519 to Jumbo Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 19 }

xklWaveHostSideRxPMEthRxGeJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx >= Jumbo Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 20 }

xklWaveHostSideRxPMEthRxBadFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad Frames."
    ::= { xklWaveHostSideRxPMEthEntry 21 }

xklWaveHostSideRxPMEthRxBadBytes OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad Bytes."
    ::= { xklWaveHostSideRxPMEthEntry 22 }

xklWaveHostSideRxPMEthRxBadMulticastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad Multicast Frames."
    ::= { xklWaveHostSideRxPMEthEntry 23 }

xklWaveHostSideRxPMEthRxBadBroadcastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad Broadcast Frames."
    ::= { xklWaveHostSideRxPMEthEntry 24 }

xklWaveHostSideRxPMEthRxBadCRCFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad CRC Frames."
    ::= { xklWaveHostSideRxPMEthEntry 25 }

xklWaveHostSideRxPMEthRxBadLt64ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad < 64 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 26 }

xklWaveHostSideRxPMEthRxBad64ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 64 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 27 }

xklWaveHostSideRxPMEthRxBad65To127ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 65 to 127 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 28 }

xklWaveHostSideRxPMEthRxBad128To255ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 128 to 255 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 29 }

xklWaveHostSideRxPMEthRxBad256To511ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 256 to 511 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 30 }

xklWaveHostSideRxPMEthRxBad512To1023ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 512 to 1023 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 31 }

xklWaveHostSideRxPMEthRxBad1024To1518ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 1024 to 1518 Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 32 }

xklWaveHostSideRxPMEthRxBad1519ToJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 1519 to Jumbo Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 33 }

xklWaveHostSideRxPMEthRxBadGeJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad >= Jumbo Byte Frames."
    ::= { xklWaveHostSideRxPMEthEntry 34 }


-- DQ*400 Client Host-Side Rx PM Ethernet Counters

xklClientHostSideRxPMEthCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of client host-side Rx PM ethernet counters."
    ::= { xklProData 64 }

xklClientHostSideRxPMEthTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklClientHostSideRxPMEthEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx PM ethernet counter table."
    ::= { xklProData 65 }

xklClientHostSideRxPMEthEntry OBJECT-TYPE
    SYNTAX      XklClientHostSideRxPMEthEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx PM ethernet counter entry."
    INDEX       { xklClientHostSideRxPMEthIndex1, xklClientHostSideRxPMEthIndex2 }
    ::= { xklClientHostSideRxPMEthTable 1 }

XklClientHostSideRxPMEthEntry ::=
    SEQUENCE {
        xklClientHostSideRxPMEthIndex1
            Unsigned32,
        xklClientHostSideRxPMEthIndex2
            Unsigned32,
        xklClientHostSideRxPMEthClientPort
            Unsigned32,
        xklClientHostSideRxPMEthGroupId
            Unsigned32,
        xklClientHostSideRxPMEthLaneId
            Unsigned32,
        xklClientHostSideRxPMEthClientStatus
            XklTransceiverStatusEnum,
        xklClientHostSideRxPMEthClientDescr
            DisplayString,
        xklClientHostSideRxPMEthRxUtil
            Integer32,
        xklClientHostSideRxPMEthRxFrames
            Counter64,
        xklClientHostSideRxPMEthRxBytes
            Counter64,
        xklClientHostSideRxPMEthRxMulticastFrames
            Counter64,
        xklClientHostSideRxPMEthRxBroadcastFrames
            Counter64,
        xklClientHostSideRxPMEthRx64ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRx65To127ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRx128To255ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRx256To511ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRx512To1023ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRx1024To1518ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRx1519ToJumboByteFrames
            Counter64,
        xklClientHostSideRxPMEthRxGeJumboByteFrames
            Counter64,
        xklClientHostSideRxPMEthRxBadFrames
            Counter64,
        xklClientHostSideRxPMEthRxBadBytes
            Counter64,
        xklClientHostSideRxPMEthRxBadMulticastFrames
            Counter64,
        xklClientHostSideRxPMEthRxBadBroadcastFrames
            Counter64,
        xklClientHostSideRxPMEthRxBadCRCFrames
            Counter64,
        xklClientHostSideRxPMEthRxBadLt64ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRxBad64ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRxBad65To127ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRxBad128To255ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRxBad256To511ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRxBad512To1023ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRxBad1024To1518ByteFrames
            Counter64,
        xklClientHostSideRxPMEthRxBad1519ToJumboByteFrames
            Counter64,
        xklClientHostSideRxPMEthRxBadGeJumboByteFrames
            Counter64
    }

xklClientHostSideRxPMEthIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx PM ethernet counter table index 1. 
         The index is static-mapped to (client port + 1)."
    ::= { xklClientHostSideRxPMEthEntry 1 }

xklClientHostSideRxPMEthIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Rx PM ethernet counter table index 2. 
         The index is static-mapped to (host group Id + 1)."
    ::= { xklClientHostSideRxPMEthEntry 2 }

xklClientHostSideRxPMEthClientPort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client port."
    ::= { xklClientHostSideRxPMEthEntry 3 }

xklClientHostSideRxPMEthGroupId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host group Id."
    ::= { xklClientHostSideRxPMEthEntry 4 }

xklClientHostSideRxPMEthLaneId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host Lane Id."
    ::= { xklClientHostSideRxPMEthEntry 5 }

xklClientHostSideRxPMEthClientStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client status."
    ::= { xklClientHostSideRxPMEthEntry 6 }

xklClientHostSideRxPMEthClientDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Client description."
    ::= { xklClientHostSideRxPMEthEntry 7 }

xklClientHostSideRxPMEthRxUtil OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Utilization."
    ::= { xklClientHostSideRxPMEthEntry 8 }

xklClientHostSideRxPMEthRxFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Frames."
    ::= { xklClientHostSideRxPMEthEntry 9 }

xklClientHostSideRxPMEthRxBytes OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bytes."
    ::= { xklClientHostSideRxPMEthEntry 10 }

xklClientHostSideRxPMEthRxMulticastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Multicast Frames."
    ::= { xklClientHostSideRxPMEthEntry 11 }

xklClientHostSideRxPMEthRxBroadcastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Broadcast Frames."
    ::= { xklClientHostSideRxPMEthEntry 12 }

xklClientHostSideRxPMEthRx64ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 64 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 13 }

xklClientHostSideRxPMEthRx65To127ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 65 to 127 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 14 }

xklClientHostSideRxPMEthRx128To255ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 128 to 255 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 15 }

xklClientHostSideRxPMEthRx256To511ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 256 to 511 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 16 }

xklClientHostSideRxPMEthRx512To1023ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 512 to 1023 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 17 }

xklClientHostSideRxPMEthRx1024To1518ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 1024 to 1518 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 18 }

xklClientHostSideRxPMEthRx1519ToJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx 1519 to Jumbo Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 19 }

xklClientHostSideRxPMEthRxGeJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx >= Jumbo Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 20 }

xklClientHostSideRxPMEthRxBadFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad Frames."
    ::= { xklClientHostSideRxPMEthEntry 21 }

xklClientHostSideRxPMEthRxBadBytes OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad Bytes."
    ::= { xklClientHostSideRxPMEthEntry 22 }

xklClientHostSideRxPMEthRxBadMulticastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad Multicast Frames."
    ::= { xklClientHostSideRxPMEthEntry 23 }

xklClientHostSideRxPMEthRxBadBroadcastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad Broadcast Frames."
    ::= { xklClientHostSideRxPMEthEntry 24 }

xklClientHostSideRxPMEthRxBadCRCFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad CRC Frames."
    ::= { xklClientHostSideRxPMEthEntry 25 }

xklClientHostSideRxPMEthRxBadLt64ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad < 64 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 26 }

xklClientHostSideRxPMEthRxBad64ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 64 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 27 }

xklClientHostSideRxPMEthRxBad65To127ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 65 to 127 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 28 }

xklClientHostSideRxPMEthRxBad128To255ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 128 to 255 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 29 }

xklClientHostSideRxPMEthRxBad256To511ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 256 to 511 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 30 }

xklClientHostSideRxPMEthRxBad512To1023ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 512 to 1023 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 31 }

xklClientHostSideRxPMEthRxBad1024To1518ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 1024 to 1518 Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 32 }

xklClientHostSideRxPMEthRxBad1519ToJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad 1519 to Jumbo Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 33 }

xklClientHostSideRxPMEthRxBadGeJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Rx Bad >= Jumbo Byte Frames."
    ::= { xklClientHostSideRxPMEthEntry 34 }


-- DQ*400 Wave Host-Side Tx PM Ethernet Counters

xklWaveHostSideTxPMEthCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of wave host-side Tx PM ethernet counters."
    ::= { xklProData 66 }

xklWaveHostSideTxPMEthTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklWaveHostSideTxPMEthEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx PM ethernet counter table."
    ::= { xklProData 67 }

xklWaveHostSideTxPMEthEntry OBJECT-TYPE
    SYNTAX      XklWaveHostSideTxPMEthEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx PM ethernet counter entry."
    INDEX       { xklWaveHostSideTxPMEthIndex1, xklWaveHostSideTxPMEthIndex2 }
    ::= { xklWaveHostSideTxPMEthTable 1 }

XklWaveHostSideTxPMEthEntry ::=
    SEQUENCE {
        xklWaveHostSideTxPMEthIndex1
            Unsigned32,
        xklWaveHostSideTxPMEthIndex2
            Unsigned32,
        xklWaveHostSideTxPMEthWavePort
            Unsigned32,
        xklWaveHostSideTxPMEthGroupId
            Unsigned32,
        xklWaveHostSideTxPMEthLaneId
            Unsigned32,
        xklWaveHostSideTxPMEthWaveStatus
            XklTransceiverStatusEnum,
        xklWaveHostSideTxPMEthWaveDescr
            DisplayString,
        xklWaveHostSideTxPMEthTxUtil
            Integer32,
        xklWaveHostSideTxPMEthTxFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBytes
            Counter64,
        xklWaveHostSideTxPMEthTxMulticastFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBroadcastFrames
            Counter64,
        xklWaveHostSideTxPMEthTx64ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTx65To127ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTx128To255ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTx256To511ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTx512To1023ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTx1024To1518ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTx1519ToJumboByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTxGeJumboByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBadFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBadBytes
            Counter64,
        xklWaveHostSideTxPMEthTxBadMulticastFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBadBroadcastFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBadCRCFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBadLt64ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBad64ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBad65To127ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBad128To255ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBad256To511ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBad512To1023ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBad1024To1518ByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBad1519ToJumboByteFrames
            Counter64,
        xklWaveHostSideTxPMEthTxBadGeJumboByteFrames
            Counter64
    }

xklWaveHostSideTxPMEthIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx PM ethernet counter table index 1. 
         The index is static-mapped to (wave port + 1)."
    ::= { xklWaveHostSideTxPMEthEntry 1 }

xklWaveHostSideTxPMEthIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave host-side Tx PM ethernet counter table index 2. 
         The index is static-mapped to (host group Id + 1)."
    ::= { xklWaveHostSideTxPMEthEntry 2 }

xklWaveHostSideTxPMEthWavePort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave port."
    ::= { xklWaveHostSideTxPMEthEntry 3 }

xklWaveHostSideTxPMEthGroupId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host group Id."
    ::= { xklWaveHostSideTxPMEthEntry 4 }

xklWaveHostSideTxPMEthLaneId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host lane Id."
    ::= { xklWaveHostSideTxPMEthEntry 5 }

xklWaveHostSideTxPMEthWaveStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave status."
    ::= { xklWaveHostSideTxPMEthEntry 6 }

xklWaveHostSideTxPMEthWaveDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Wave description."
    ::= { xklWaveHostSideTxPMEthEntry 7 }

xklWaveHostSideTxPMEthTxUtil OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Utilization."
    ::= { xklWaveHostSideTxPMEthEntry 8 }

xklWaveHostSideTxPMEthTxFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frames."
    ::= { xklWaveHostSideTxPMEthEntry 9 }

xklWaveHostSideTxPMEthTxBytes OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bytes."
    ::= { xklWaveHostSideTxPMEthEntry 10 }

xklWaveHostSideTxPMEthTxMulticastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Multicast Frames."
    ::= { xklWaveHostSideTxPMEthEntry 11 }

xklWaveHostSideTxPMEthTxBroadcastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Broadcast Frames."
    ::= { xklWaveHostSideTxPMEthEntry 12 }

xklWaveHostSideTxPMEthTx64ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 64 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 13 }

xklWaveHostSideTxPMEthTx65To127ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 65 to 127 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 14 }

xklWaveHostSideTxPMEthTx128To255ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 128 to 255 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 15 }

xklWaveHostSideTxPMEthTx256To511ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 256 to 511 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 16 }

xklWaveHostSideTxPMEthTx512To1023ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 512 to 1023 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 17 }

xklWaveHostSideTxPMEthTx1024To1518ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 1024 to 1518 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 18 }

xklWaveHostSideTxPMEthTx1519ToJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 1519 to Jumbo Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 19 }

xklWaveHostSideTxPMEthTxGeJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx >= Jumbo Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 20 }

xklWaveHostSideTxPMEthTxBadFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad Frames."
    ::= { xklWaveHostSideTxPMEthEntry 21 }

xklWaveHostSideTxPMEthTxBadBytes OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad Bytes."
    ::= { xklWaveHostSideTxPMEthEntry 22 }

xklWaveHostSideTxPMEthTxBadMulticastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad Multicast Frames."
    ::= { xklWaveHostSideTxPMEthEntry 23 }

xklWaveHostSideTxPMEthTxBadBroadcastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad Broadcast Frames."
    ::= { xklWaveHostSideTxPMEthEntry 24 }

xklWaveHostSideTxPMEthTxBadCRCFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad CRC Frames."
    ::= { xklWaveHostSideTxPMEthEntry 25 }

xklWaveHostSideTxPMEthTxBadLt64ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad < 64 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 26 }

xklWaveHostSideTxPMEthTxBad64ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 64 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 27 }

xklWaveHostSideTxPMEthTxBad65To127ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 65 to 127 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 28 }

xklWaveHostSideTxPMEthTxBad128To255ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 128 to 255 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 29 }

xklWaveHostSideTxPMEthTxBad256To511ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 256 to 511 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 30 }

xklWaveHostSideTxPMEthTxBad512To1023ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 512 to 1023 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 31 }

xklWaveHostSideTxPMEthTxBad1024To1518ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 1024 to 1518 Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 32 }

xklWaveHostSideTxPMEthTxBad1519ToJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 1519 to Jumbo Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 33 }

xklWaveHostSideTxPMEthTxBadGeJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad >= Jumbo Byte Frames."
    ::= { xklWaveHostSideTxPMEthEntry 34 }


-- DQ*400 Client Host-Side Tx PM Ethernet Counters

xklClientHostSideTxPMEthCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of client host-side Tx PM ethernet counters."
    ::= { xklProData 68 }

xklClientHostSideTxPMEthTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklClientHostSideTxPMEthEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx PM ethernet counter table."
    ::= { xklProData 69 }

xklClientHostSideTxPMEthEntry OBJECT-TYPE
    SYNTAX      XklClientHostSideTxPMEthEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx PM ethernet counter entry."
    INDEX       { xklClientHostSideTxPMEthIndex1, xklClientHostSideTxPMEthIndex2 }
    ::= { xklClientHostSideTxPMEthTable 1 }

XklClientHostSideTxPMEthEntry ::=
    SEQUENCE {
        xklClientHostSideTxPMEthIndex1
            Unsigned32,
        xklClientHostSideTxPMEthIndex2
            Unsigned32,
        xklClientHostSideTxPMEthClientPort
            Unsigned32,
        xklClientHostSideTxPMEthGroupId
            Unsigned32,
        xklClientHostSideTxPMEthLaneId
            Unsigned32,
        xklClientHostSideTxPMEthClientStatus
            XklTransceiverStatusEnum,
        xklClientHostSideTxPMEthClientDescr
            DisplayString,
        xklClientHostSideTxPMEthTxUtil
            Integer32,
        xklClientHostSideTxPMEthTxFrames
            Counter64,
        xklClientHostSideTxPMEthTxBytes
            Counter64,
        xklClientHostSideTxPMEthTxMulticastFrames
            Counter64,
        xklClientHostSideTxPMEthTxBroadcastFrames
            Counter64,
        xklClientHostSideTxPMEthTx64ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTx65To127ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTx128To255ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTx256To511ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTx512To1023ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTx1024To1518ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTx1519ToJumboByteFrames
            Counter64,
        xklClientHostSideTxPMEthTxGeJumboByteFrames
            Counter64,
        xklClientHostSideTxPMEthTxBadFrames
            Counter64,
        xklClientHostSideTxPMEthTxBadBytes
            Counter64,
        xklClientHostSideTxPMEthTxBadMulticastFrames
            Counter64,
        xklClientHostSideTxPMEthTxBadBroadcastFrames
            Counter64,
        xklClientHostSideTxPMEthTxBadCRCFrames
            Counter64,
        xklClientHostSideTxPMEthTxBadLt64ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTxBad64ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTxBad65To127ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTxBad128To255ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTxBad256To511ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTxBad512To1023ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTxBad1024To1518ByteFrames
            Counter64,
        xklClientHostSideTxPMEthTxBad1519ToJumboByteFrames
            Counter64,
        xklClientHostSideTxPMEthTxBadGeJumboByteFrames
            Counter64
    }

xklClientHostSideTxPMEthIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx PM ethernet counter table index 1. 
         The index is static-mapped to (Client port + 1)."
    ::= { xklClientHostSideTxPMEthEntry 1 }

xklClientHostSideTxPMEthIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client host-side Tx PM ethernet counter table index 2. 
         The index is static-mapped to (host group Id + 1)."
    ::= { xklClientHostSideTxPMEthEntry 2 }

xklClientHostSideTxPMEthClientPort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client port."
    ::= { xklClientHostSideTxPMEthEntry 3 }

xklClientHostSideTxPMEthGroupId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host group Id."
    ::= { xklClientHostSideTxPMEthEntry 4 }

xklClientHostSideTxPMEthLaneId OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Host Lane Id."
    ::= { xklClientHostSideTxPMEthEntry 5 }

xklClientHostSideTxPMEthClientStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client status."
    ::= { xklClientHostSideTxPMEthEntry 6 }

xklClientHostSideTxPMEthClientDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Client description."
    ::= { xklClientHostSideTxPMEthEntry 7 }

xklClientHostSideTxPMEthTxUtil OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Utilization."
    ::= { xklClientHostSideTxPMEthEntry 8 }

xklClientHostSideTxPMEthTxFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Frames."
    ::= { xklClientHostSideTxPMEthEntry 9 }

xklClientHostSideTxPMEthTxBytes OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bytes."
    ::= { xklClientHostSideTxPMEthEntry 10 }

xklClientHostSideTxPMEthTxMulticastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Multicast Frames."
    ::= { xklClientHostSideTxPMEthEntry 11 }

xklClientHostSideTxPMEthTxBroadcastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Broadcast Frames."
    ::= { xklClientHostSideTxPMEthEntry 12 }

xklClientHostSideTxPMEthTx64ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 64 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 13 }

xklClientHostSideTxPMEthTx65To127ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 65 to 127 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 14 }

xklClientHostSideTxPMEthTx128To255ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 128 to 255 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 15 }

xklClientHostSideTxPMEthTx256To511ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 256 to 511 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 16 }

xklClientHostSideTxPMEthTx512To1023ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 512 to 1023 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 17 }

xklClientHostSideTxPMEthTx1024To1518ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 1024 to 1518 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 18 }

xklClientHostSideTxPMEthTx1519ToJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx 1519 to Jumbo Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 19 }

xklClientHostSideTxPMEthTxGeJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx >= Jumbo Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 20 }

xklClientHostSideTxPMEthTxBadFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad Frames."
    ::= { xklClientHostSideTxPMEthEntry 21 }

xklClientHostSideTxPMEthTxBadBytes OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad Bytes."
    ::= { xklClientHostSideTxPMEthEntry 22 }

xklClientHostSideTxPMEthTxBadMulticastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad Multicast Frames."
    ::= { xklClientHostSideTxPMEthEntry 23 }

xklClientHostSideTxPMEthTxBadBroadcastFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad Broadcast Frames."
    ::= { xklClientHostSideTxPMEthEntry 24 }

xklClientHostSideTxPMEthTxBadCRCFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad CRC Frames."
    ::= { xklClientHostSideTxPMEthEntry 25 }

xklClientHostSideTxPMEthTxBadLt64ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad < 64 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 26 }

xklClientHostSideTxPMEthTxBad64ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 64 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 27 }

xklClientHostSideTxPMEthTxBad65To127ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 65 to 127 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 28 }

xklClientHostSideTxPMEthTxBad128To255ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 128 to 255 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 29 }

xklClientHostSideTxPMEthTxBad256To511ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 256 to 511 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 30 }

xklClientHostSideTxPMEthTxBad512To1023ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 512 to 1023 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 31 }

xklClientHostSideTxPMEthTxBad1024To1518ByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 1024 to 1518 Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 32 }

xklClientHostSideTxPMEthTxBad1519ToJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad 1519 to Jumbo Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 33 }

xklClientHostSideTxPMEthTxBadGeJumboByteFrames OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Bad >= Jumbo Byte Frames."
    ::= { xklClientHostSideTxPMEthEntry 34 }

-- WSS Band section
-- WSS Band Table
xklWSSBandCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of WSS bands."
    ::= { xklProData 70 }

xklWSSBandTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklWSSBandEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "WSS Band table."
    ::= { xklProData 71 }

xklWSSBandEntry OBJECT-TYPE
    SYNTAX      XklWSSBandEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "WSS Band table entry."
    INDEX       { xklWSSBandIndex1, xklWSSBandIndex2 }
    ::= { xklWSSBandTable 1 }

XklWSSBandEntry ::=
    SEQUENCE {
        xklWSSBandIndex1
            Unsigned32,
        xklWSSBandIndex2
            Unsigned32,
        xklWSSBandCenterFreq
            Unsigned32,
        xklWSSBandBandwidth
            Unsigned32,
        xklWSSBandAttenuation
            Unsigned32,
        xklWSSBandRxPwr
            Integer32,
        xklWSSBandPort
            Unsigned32,
        xklWSSBandPortName
            DisplayString
    }

xklWSSBandIndex1 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "WSS Device Index."
    ::= { xklWSSBandEntry 1 }

xklWSSBandIndex2 OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "WSS Band Index."
    ::= { xklWSSBandEntry 2 }

xklWSSBandCenterFreq OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "MHz"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "WSS Band Center Frequency."
    ::= { xklWSSBandEntry 3 }

xklWSSBandBandwidth OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "MHz"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "WSS Band Bandwidth."
    ::= { xklWSSBandEntry 4 }

xklWSSBandAttenuation OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "1/10 dB"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "WSS Band Attenuation."
    ::= { xklWSSBandEntry 5 }

xklWSSBandRxPwr OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/10 dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "WSS Band Receive Power."
    ::= { xklWSSBandEntry 6 }

xklWSSBandPort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "WSS Band Port Connection."
    ::= { xklWSSBandEntry 7 }

xklWSSBandPortName OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "WSS Band Port Name Connection."
    ::= { xklWSSBandEntry 8 }


-- DQ*400 Wave Media-Side Tx Modulator Performance Counters

xklWaveMediaSideTxModCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of wave media-side Tx modulator performance counters."
    ::= { xklProData 72 }

xklWaveMediaSideTxModTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklWaveMediaSideTxModEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave media-side Tx modulator performance counter table."
    ::= { xklProData 73 }

xklWaveMediaSideTxModEntry OBJECT-TYPE
    SYNTAX      XklWaveMediaSideTxModEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave media-side Tx modulator performance counter entry."
    INDEX       { xklWaveMediaSideTxModIndex }
    ::= { xklWaveMediaSideTxModTable 1 }

XklWaveMediaSideTxModEntry ::=
    SEQUENCE {
        xklWaveMediaSideTxModIndex
            Unsigned32,
        xklWaveMediaSideTxModWavePort
            Unsigned32,
        xklWaveMediaSideTxModWaveStatus
            XklTransceiverStatusEnum,
        xklWaveMediaSideTxModWaveDescr
            DisplayString,
        xklWaveMediaSideTxModBiasXI
            Integer32,
        xklWaveMediaSideTxModBiasXQ
            Integer32,
        xklWaveMediaSideTxModBiasYI
            Integer32,
        xklWaveMediaSideTxModBiasYQ
            Integer32,
        xklWaveMediaSideTxModBiasXPhase
            Integer32,
        xklWaveMediaSideTxModBiasYPhase
            Integer32
    }

xklWaveMediaSideTxModIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wave media-side Tx modulator performance counter table index. 
         The index is static-mapped to (wave port + 1)."
    ::= { xklWaveMediaSideTxModEntry 1 }

xklWaveMediaSideTxModWavePort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave port."
    ::= { xklWaveMediaSideTxModEntry 2 }

xklWaveMediaSideTxModWaveStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Wave status."
    ::= { xklWaveMediaSideTxModEntry 3 }

xklWaveMediaSideTxModWaveDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Wave description."
    ::= { xklWaveMediaSideTxModEntry 4 }

xklWaveMediaSideTxModBiasXI OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Modulator Bias X/I."
    ::= { xklWaveMediaSideTxModEntry 5 }

xklWaveMediaSideTxModBiasXQ OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Modulator Bias X/Q."
    ::= { xklWaveMediaSideTxModEntry 6 }

xklWaveMediaSideTxModBiasYI OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Modulator Bias Y/I."
    ::= { xklWaveMediaSideTxModEntry 7 }

xklWaveMediaSideTxModBiasYQ OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Modulator Bias Y/Q."
    ::= { xklWaveMediaSideTxModEntry 8 }

xklWaveMediaSideTxModBiasXPhase OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Modulator Bias X Phase."
    ::= { xklWaveMediaSideTxModEntry 9 }

xklWaveMediaSideTxModBiasYPhase OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Modulator Bias Y Phase."
    ::= { xklWaveMediaSideTxModEntry 10 }


-- DQ*400 Client Media-Side Tx Modulator Performance Counters

xklClientMediaSideTxModCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of client media-side Tx modulator performance counters."
    ::= { xklProData 74 }

xklClientMediaSideTxModTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklClientMediaSideTxModEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client media-side Tx modulator performance counter table."
    ::= { xklProData 75 }

xklClientMediaSideTxModEntry OBJECT-TYPE
    SYNTAX      XklClientMediaSideTxModEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client media-side Tx modulator performance counter entry."
    INDEX       { xklClientMediaSideTxModIndex }
    ::= { xklClientMediaSideTxModTable 1 }

XklClientMediaSideTxModEntry ::=
    SEQUENCE {
        xklClientMediaSideTxModIndex
            Unsigned32,
        xklClientMediaSideTxModClientPort
            Unsigned32,
        xklClientMediaSideTxModClientStatus
            XklTransceiverStatusEnum,
        xklClientMediaSideTxModClientDescr
            DisplayString,
        xklClientMediaSideTxModBiasXI
            Integer32,
        xklClientMediaSideTxModBiasXQ
            Integer32,
        xklClientMediaSideTxModBiasYI
            Integer32,
        xklClientMediaSideTxModBiasYQ
            Integer32,
        xklClientMediaSideTxModBiasXPhase
            Integer32,
        xklClientMediaSideTxModBiasYPhase
            Integer32
    }

xklClientMediaSideTxModIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client media-side Tx modulator performance counter table index. 
         The index is static-mapped to (client port + 1)."
    ::= { xklClientMediaSideTxModEntry 1 }

xklClientMediaSideTxModClientPort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client port."
    ::= { xklClientMediaSideTxModEntry 2 }

xklClientMediaSideTxModClientStatus OBJECT-TYPE
    SYNTAX      XklTransceiverStatusEnum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client status."
    ::= { xklClientMediaSideTxModEntry 3 }

xklClientMediaSideTxModClientDescr OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Client description."
    ::= { xklClientMediaSideTxModEntry 4 }

xklClientMediaSideTxModBiasXI OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Modulator Bias X/I."
    ::= { xklClientMediaSideTxModEntry 5 }

xklClientMediaSideTxModBiasXQ OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Modulator Bias X/Q."
    ::= { xklClientMediaSideTxModEntry 6 }

xklClientMediaSideTxModBiasYI OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Modulator Bias Y/I."
    ::= { xklClientMediaSideTxModEntry 7 }

xklClientMediaSideTxModBiasYQ OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Modulator Bias Y/Q."
    ::= { xklClientMediaSideTxModEntry 8 }

xklClientMediaSideTxModBiasXPhase OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Modulator Bias X Phase."
    ::= { xklClientMediaSideTxModEntry 9 }

xklClientMediaSideTxModBiasYPhase OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "1/100 %"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Tx Modulator Bias Y Phase."
    ::= { xklClientMediaSideTxModEntry 10 }

-- WSS hardware section
xklWSSHardwareCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of WSS modules."
    ::= { xklProData 76 }

xklWSSHardwareTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklWSSHardwareEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "WSS Hardware table."
    ::= { xklProData 77 }

xklWSSHardwareEntry OBJECT-TYPE
    SYNTAX      XklWSSHardwareEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "WSS Hardware table entry."
    INDEX       { xklWSSHardwareIndex }
    ::= { xklWSSHardwareTable 1 }

XklWSSHardwareEntry ::=
    SEQUENCE {
        xklWSSHardwareIndex
            Unsigned32,
        xklWSSHardwareManufacturer
            DisplayString,
        xklWSSHardwareManufactureDate
            DisplayString,
        xklWSSHardwarePartNumber
            DisplayString,
        xklWSSHardwareSerialNumber
            DisplayString
    }

xklWSSHardwareIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "WSS Device Index."
    ::= { xklWSSHardwareEntry 1 }

xklWSSHardwareManufacturer OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "WSS Device manufacturer."
    ::= { xklWSSHardwareEntry 2 }

xklWSSHardwareManufactureDate OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "WSS Device manufacture date."
    ::= { xklWSSHardwareEntry 3 }

xklWSSHardwarePartNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "WSS Device manufacturer part number."
    ::= { xklWSSHardwareEntry 4 }

xklWSSHardwareSerialNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "WSS Device manufacturer serial number."
    ::= { xklWSSHardwareEntry 5 }

-- OCM hardware section
xklOCMHardwareCount OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION 
        "Number of OCM modules."
    ::= { xklProData 78 }

xklOCMHardwareTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF XklOCMHardwareEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "OCM Hardware table."
    ::= { xklProData 79 }

xklOCMHardwareEntry OBJECT-TYPE
    SYNTAX      XklOCMHardwareEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "OCM Hardware table entry."
    INDEX       { xklOCMHardwareIndex }
    ::= { xklOCMHardwareTable 1 }

XklOCMHardwareEntry ::=
    SEQUENCE {
        xklOCMHardwareIndex
            Unsigned32,
        xklOCMHardwareManufacturer
            DisplayString,
        xklOCMHardwareManufactureDate
            DisplayString,
        xklOCMHardwarePartNumber
            DisplayString,
        xklOCMHardwareSerialNumber
            DisplayString
    }

xklOCMHardwareIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "OCM Device Index."
    ::= { xklOCMHardwareEntry 1 }

xklOCMHardwareManufacturer OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "OCM Device manufacturer."
    ::= { xklOCMHardwareEntry 2 }

xklOCMHardwareManufactureDate OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "OCM Device manufacture date."
    ::= { xklOCMHardwareEntry 3 }

xklOCMHardwarePartNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "OCM Device manufacturer part number."
    ::= { xklOCMHardwareEntry 4 }

xklOCMHardwareSerialNumber OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "OCM Device manufacturer serial number."
    ::= { xklOCMHardwareEntry 5 }

--
-- Conformance-related definitions
--

xklFullCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "XKL MIB full compliance."
    MODULE
        MANDATORY-GROUPS {
            xklSysGroup,
            xklPowerGroup,
            xklFanControllerGroup,
            xklFanGroup,
            xklSensorGroup,
            xklNotificationGroup
        }
        GROUP   xklTransportGroup
        DESCRIPTION
            "The xklTransportGroup is mandatory for XKL devices with a crossbar switch."
        GROUP   xklSwitchConnGroup
        DESCRIPTION
            "The xklSwitchConnGroup is mandatory for XKL devices with a crossbar switch."
        GROUP   xklProtectionGroupGroup
        DESCRIPTION
            "The xklProtectionGroup is mandatory for XKL devices with a crossbar switch."
        GROUP   xklEDFAGroup
        DESCRIPTION
            "The xklEDFAGroup is mandatory for XKL devices with EDFA amplifiers present."
        GROUP   xklRamanGroup
        DESCRIPTION
            "The xklRamanGroup is mandatory for XKL devices with Raman amplifiers present."
        GROUP   xklTransceiverModuleGroup
        DESCRIPTION
            "The xklTransceiverModuleGroup is mandatory for XKL devices with a crossbar switch."
        GROUP   xklOTDRLatestMeasurementGroup
        DESCRIPTION
            "The xklOTDRLatestMeasurementGroup is mandatory for XKL devices with OTDR feature."
        GROUP   xklDUAGroupGroup
        DESCRIPTION
            "The xklDUAGroupGroup is mandatory for XKL DUA systems."
        GROUP   xklLineProtectionGroup
        DESCRIPTION
            "The xklLineProtectionGroup is mandatory for XKL devices with an optical protection switch."
        GROUP   xklDatapathClientPortGroup
        DESCRIPTION
            "The xklDatapathClientPortGroup is mandatory for XKL devices with the MXL chip."
        GROUP   xklDatapathWavePortGroup
        DESCRIPTION
            "The xklDatapathWavePortGroup is mandatory for XKL devices with the MXL chip."
        GROUP   xklWaveMediaSidePMGroup
        DESCRIPTION
            "The xklWaveMediaSidePMGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklClientMediaSidePMGroup
        DESCRIPTION
            "The xklClientMediaSidePMGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklWaveHostSideRxBERGroup
        DESCRIPTION
            "The xklWaveHostSideRxBERGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklClientHostSideRxBERGroup
        DESCRIPTION
            "The xklClientHostSideRxBERGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklWaveHostSideTxBERGroup
        DESCRIPTION
            "The xklWaveHostSideTxBERGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklClientHostSideTxBERGroup
        DESCRIPTION
            "The xklClientHostSideTxBERGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklWaveHostSideRxPMGroup
        DESCRIPTION
            "The xklWaveHostSideRxPMGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklClientHostSideRxPMGroup
        DESCRIPTION
            "The xklClientHostSideRxPMGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklWaveHostSideTxPMGroup
        DESCRIPTION
            "The xklWaveHostSideTxPMGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklClientHostSideTxPMGroup
        DESCRIPTION
            "The xklClientHostSideTxPMGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklWaveHostSideRxPMSubIntGroup
        DESCRIPTION
            "The xklWaveHostSideRxPMSubIntGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklClientHostSideRxPMSubIntGroup
        DESCRIPTION
            "The xklClientHostSideRxPMSubIntGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklWaveHostSideTxPMSubIntGroup
        DESCRIPTION
            "The xklWaveHostSideTxPMSubIntGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklClientHostSideTxPMSubIntGroup
        DESCRIPTION
            "The xklClientHostSideTxPMSubIntGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklWaveHostSideRxPMEthGroup
        DESCRIPTION
            "The xklWaveHostSideRxPMEthGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklClientHostSideRxPMEthGroup
        DESCRIPTION
            "The xklClientHostSideRxPMEthGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklWaveHostSideTxPMEthGroup
        DESCRIPTION
            "The xklWaveHostSideTxPMEthGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklClientHostSideTxPMEthGroup
        DESCRIPTION
            "The xklClientHostSideTxPMEthGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklWSSBandGroup
        DESCRIPTION
            "The xklWSSBandGroup is mandatory for XKL devices with a WSS and OCM present."
        GROUP   xklWaveMediaSideTxModGroup
        DESCRIPTION
            "The xklWaveMediaSideTxModGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklClientMediaSideTxModGroup
        DESCRIPTION
            "The xklClientMediaSideTxModGroup is mandatory for XKL devices with CB400 transceivers."
        GROUP   xklWSSHardwareGroup
        DESCRIPTION
            "The xklWSSHardwareGroup is mandatory for XKL devices with a WSS present."
        GROUP   xklOCMHardwareGroup
        DESCRIPTION
            "The xklOCMHardwareGroup is mandatory for XKL devices with an OCM present."
    ::= { xklCompliances 1 }

xklDeprecatedCompliance MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION
        "Deprecated compliance for the XKL MIB."
    MODULE
        GROUP   xklDeprecatedGroup
        DESCRIPTION
            "A group of deprecated objects."
        GROUP   xklOTMGroup
        DESCRIPTION
            "A deprecated group describing aggregate OTM status."
        GROUP   xklDeprecatedNotificationGroup
        DESCRIPTION
            "A group of deprecated notifications."
    ::= { xklCompliances 2 }

xklSysGroup OBJECT-GROUP
    OBJECTS     {
                    xklSysOs
                }
    STATUS      current
    DESCRIPTION
        "Operating system status objects."
    ::= { xklProGroups 1 }

xklTransportGroup OBJECT-GROUP
    OBJECTS {
        xklTransportCount,
        xklTransportIndex,
        xklTransportStatus,
        xklTransportDescr,
        xklTransportType,
        xklTransportEncapsulation,
        xklTransportSerialNumber,
        xklTransportLaserStat,
        xklTransportTemp,
        xklTransportTransmitPower,
        xklTransportReceivePower,
        xklTransportAccumErrSecs,
        xklTransportLaserBias,
        xklTransportTempHiAlrmThreshold,
        xklTransportTempLoAlrmThreshold,
        xklTransportTempHiWarnThreshold,
        xklTransportTempLoWarnThreshold,
        xklTransportBiasHiAlrmThreshold,
        xklTransportBiasLoAlrmThreshold,
        xklTransportBiasHiWarnThreshold,
        xklTransportBiasLoWarnThreshold,
        xklTransportTxPowerHiAlrmThresh,
        xklTransportTxPowerLoAlrmThresh,
        xklTransportTxPowerHiWarnThresh,
        xklTransportTxPowerLoWarnThresh,
        xklTransportRxPowerHiAlrmThresh,
        xklTransportRxPowerLoAlrmThresh,
        xklTransportRxPowerHiWarnThresh,
        xklTransportRxPowerLoWarnThresh,
        xklTransportAUX1,
        xklTransportAUX1HiAlrmThreshold,
        xklTransportAUX1LoAlrmThreshold,
        xklTransportAUX1HiWarnThreshold,
        xklTransportAUX1LoWarnThreshold,
        xklTransportAUX2,
        xklTransportAUX2HiAlrmThreshold,
        xklTransportAUX2LoAlrmThreshold,
        xklTransportAUX2HiWarnThreshold,
        xklTransportAUX2LoWarnThreshold,
        xklTransportVoltage,
        xklTransportVoltageHiAlrmThresh,
        xklTransportVoltageLoAlrmThresh,
        xklTransportVoltageHiWarnThresh,
        xklTransportVoltageLoWarnThresh,
        xklTransportTxStatus,
        xklTransportRxStatus,
        xklTransportChannelOffset,
        xklTransportChannelWidth,
        xklTransportMaxChannelOffset,
        xklTransportMaxChannelWidth,
        xklTransportMinChannelOffset,
        xklTransportMinChannelWidth,
        xklTransportVendorName,
        xklTransportVendorPartNumber,
        xklTransportVendorDateCode,
        xklTransportVendorRevisionNumber,
        xklTransportVendorLotCode,
        xklTransportVendorOUI,
        xklTransportElectricalLoopback,
        xklTransportOpticalLoopback,
        xklTransportFramedLoopback,
        xklTransportUnframedLoopback,
        xklTransportFramedElectricalLoopback,
        xklTransportUnframedElectricalLoopback,
        xklTransportLinkUpDownTrapEnable,
        xklTransportTemp1,
        xklTransportTemp2,
        xklTransportTemp3,
        xklTransportTemp4,
        xklTransportTemp1HiAlrmThreshold,
        xklTransportTemp2HiAlrmThreshold,
        xklTransportTemp3HiAlrmThreshold,
        xklTransportTemp4HiAlrmThreshold,
        xklTransportTemp1LoAlrmThreshold,
        xklTransportTemp2LoAlrmThreshold,
        xklTransportTemp3LoAlrmThreshold,
        xklTransportTemp4LoAlrmThreshold,
        xklTransportTemp1HiWarnThreshold,
        xklTransportTemp2HiWarnThreshold,
        xklTransportTemp3HiWarnThreshold,
        xklTransportTemp4HiWarnThreshold,
        xklTransportTemp1LoWarnThreshold,
        xklTransportTemp2LoWarnThreshold,
        xklTransportTemp3LoWarnThreshold,
        xklTransportTemp4LoWarnThreshold
    }
    STATUS      current
    DESCRIPTION
        "Transport status objects."
    ::= { xklProGroups 2 }

xklPowerGroup OBJECT-GROUP
    OBJECTS {
        xklPowerCount,
        xklPowerIndex,
        xklPowerStatus,
        xklPowerSerialNumber,
        xklPowerVoltage,
        xklPowerCurrent,
        xklPowerDescr
    }
    STATUS      current
    DESCRIPTION
        "Power status objects."
    ::= { xklProGroups 3 }

xklSwitchConnGroup OBJECT-GROUP
    OBJECTS {
        xklSwitchConnCount,
        xklSwitchConnStatus,
        xklSwitchConnInterfaceA,
        xklSwitchConnInterfaceB
    }
    STATUS      current
    DESCRIPTION
        "Switch connection status objects."
    ::= { xklProGroups 4 }

xklFanControllerGroup OBJECT-GROUP
    OBJECTS {
        xklFanControllerCount,
        xklFanControllerIndex,
        xklFanControllerStatus
    }
    STATUS      current
    DESCRIPTION
        "Fan module status objects."
    ::= { xklProGroups 5 }

xklFanGroup OBJECT-GROUP
    OBJECTS {
        xklFanUnitCount,
        xklFanUnitController,
        xklFanUnitStatus,
        xklFanUnitRequestedStep,
        xklFanUnitSpeedActual,
        xklFanUnitAlarm,
        xklFanUnitMinSpeed,
        xklFanUnitMaxSpeed
    }
    STATUS      current
    DESCRIPTION
        "Blower status objects."
    ::= { xklProGroups 6 }

xklSensorGroup OBJECT-GROUP
    OBJECTS {
        xklSensorCount,
        xklSensorIndex,
        xklSensorDescription,
        xklSensorTemp,
        xklSensorLowAlarm,
        xklSensorLowWarn,
        xklSensorHighCritical,
        xklSensorHighAlarm,
        xklSensorHighWarn,
        xklSensorStatus
    }
    STATUS      current
    DESCRIPTION
        "Sensor status objects."
    ::= { xklProGroups 7 }

xklProtectionGroupGroup OBJECT-GROUP
    OBJECTS {
        xklProtectionGroupCount,
        xklProtectionGroupIndex,
        xklProtectionGroupStatus,
        xklProtectionGroupMaxWorking,
        xklProtectionGroupCurrWorking,
        xklProtectionGroupMaxProtection,
        xklProtectionGroupCurrProtection,
        xklProtectionGroupLastSwitchTime,
        xklProtectionGroupLastClearTime,
        xklProtectionGroupNumTransitions,
        xklProtectionGroupSelResource,
        xklProtectionGroupWorkResources,
        xklProtectionGroupProtResources,
        xklProtectionGroupRevertive,
        xklProtectionGroupLocked,
        xklProtectionGroupLstSwtchManl
    }
   STATUS      current
   DESCRIPTION
       "The objects relating to protection groups."
   ::= { xklProGroups 8 }

xklNotificationGroup NOTIFICATION-GROUP
    NOTIFICATIONS {
        xklFanFail,
        xklPowerFail,
        xklFanUp,
        xklPowerUp,
        xklProtectionPathSwitch,
        xklTempStatusChange,
        xklEDFALineChange,
        xklRamanLineChange,
        xklEDFAAlarmChange,
        xklRamanAlarmChange,
        xklColdStart,
        xklWarmStart,
        xklLinkDown,
        xklLinkUp,
        xklPowerSupplyAdded,
        xklPowerSupplyRemoved,
        xklTransceiverAdded,
        xklTransceiverRemoved,
        xklRxPowerOK,
        xklRxPowerHiAlrm,
        xklRxPowerLoAlrm,
        xklRxPowerHiWarn,
        xklRxPowerLoWarn,
        xklTransportLinkDown,
        xklTransportLinkUp,
        xklAutomaticOTDRTriggered,
        xklLineProtectionSwitch,
        xklDatapathRemoteClientDown,
        xklDatapathRemoteClientUp
    }
    STATUS      current
    DESCRIPTION
        "XKL Notifications."
    ::= { xklProGroups 9 }

xklEDFAGroup OBJECT-GROUP
    OBJECTS {
        xklEDFACount,
        xklEDFAIndex,
        xklEDFALabel,
        xklEDFAIsPresent,
        xklEDFAInReset,
        xklEDFADisabled,
        xklEDFAMuted,
        xklEDFACaseTemperatureAlarm,
        xklEDFACommonAlarm,
        xklEDFAPumpTemperatureAlarm,
        xklEDFAPumpBiasAlarm,
        xklEDFALossOfInputAlarm,
        xklEDFALossOfOutputAlarm,
        xklEDFAManufacturer,
        xklEDFAModuleType,
        xklEDFASerialNum,
        xklEDFAManufactureDate,
        xklEDFALastResetTime,
        xklEDFAControlType,
        xklEDFAControlSetPoint,
        xklEDFAControlSetPointUnits,
        xklEDFAMode,
        xklEDFAModuleAlarms,
        xklEDFAInputOpticalPower,
        xklEDFAOutputOpticalPower,
        xklEDFACaseTemp,
        xklEDFAPumpLaserStatus,
        xklEDFAPumpLaserTemp,
        xklEDFAPumpLaserCurrent,
        xklEDFAPumpLaserPower,
        xklEDFAAmplificationState,
        xklEDFAName,
        xklEDFAGroupNumber,
        xklEDFAGroupName
    }
    STATUS      current
    DESCRIPTION
        "EDFA amplifier status objects."
    ::= { xklProGroups 10 }

xklRamanGroup OBJECT-GROUP
    OBJECTS {
        xklRamanCount,
        xklRamanIndex,
        xklRamanLabel,
        xklRamanIsPresent,
        xklRamanInReset,
        xklRamanDisabled,
        xklRamanMuted,
        xklRamanCaseTemperatureAlarm,
        xklRamanCommonAlarm,
        xklRamanPumpTemperatureAlarm,
        xklRamanPumpBiasAlarm,
        xklRamanLossOfInputAlarm,
        xklRamanLossOfOutputAlarm,
        xklRamanManufacturer,
        xklRamanModuleType,
        xklRamanSerialNum,
        xklRamanManufactureDate,
        xklRamanLastResetTime,
        xklRamanControlType,
        xklRamanControlSetPoint,
        xklRamanControlSetPointUnits,
        xklRamanMode,
        xklRamanModuleAlarms,
        xklRamanInputOpticalPower,
        xklRamanOutputOpticalPower,
        xklRamanCaseTemp,
        xklRamanPump1LaserStatus,
        xklRamanPump1LaserTemp,
        xklRamanPump1LaserCurrent,
        xklRamanPump2LaserStatus,
        xklRamanPump2LaserTemp,
        xklRamanPump2LaserCurrent,
        xklRamanCompositePumpsLaserPower,
        xklRamanFiberType,
        xklRamanAmplificationState,
        xklRamanBackReflection,
        xklRamanName
    }
    STATUS      current
    DESCRIPTION
        "Raman amplifier status objects."
    ::= { xklProGroups 11 }

xklOTMGroup OBJECT-GROUP
    OBJECTS {
        xklOTMIndex,
        xklOTMStatus,
        xklOTMDescr,
        xklOTMCount
    }
    STATUS      deprecated
    DESCRIPTION
        "Optical transport module status objects."
    ::= { xklProGroups 12 }

xklDeprecatedGroup OBJECT-GROUP
    OBJECTS {
        xklTransportChannel,
        xklTransportCritErr,
        xklTransportWarn,
        xklTransportClockFreq,
        xklSwitchConnChannel,
        xklEDFALastServiceTime,
        xklRamanLastServiceTime
    }
    STATUS      deprecated
    DESCRIPTION
        "The objects that have been deprecated."
    ::= { xklProGroups 13 }

xklDeprecatedNotificationGroup NOTIFICATION-GROUP
    NOTIFICATIONS {
        xklOTMDown,
        xklOTMUp
    }
    STATUS      deprecated
    DESCRIPTION
        "Deprecated XKL Notifications."
    ::= { xklProGroups 14 }

xklTransceiverModuleGroup OBJECT-GROUP
    OBJECTS {
        xklTransceiverModuleCount,
        xklTransceiverModuleStatus,
        xklTransceiverModuleDescr,
        xklTransceiverModuleType,
        xklTransceiverModuleNumberOfDataLanes,
        xklTransceiverModuleMaxNumOfSupportedDataLanes,
        xklTransceiverModuleOSNR,
        xklTransceiverModuleRxBits,
        xklTransceiverModuleRxCorrectedBits,
        xklTransceiverModuleRxFrames,
        xklTransceiverModuleRxFrameUncorrectedErrors,
        xklTransceiverModuleTxBitsGroup0,
        xklTransceiverModuleTxCorrectedBitsGroup0,
        xklTransceiverModuleTxFramesGroup0,
        xklTransceiverModuleTxFrameUncorrectedErrorsGroup0,
        xklTransceiverModuleTxBitsGroup1,
        xklTransceiverModuleTxCorrectedBitsGroup1,
        xklTransceiverModuleTxFramesGroup1,
        xklTransceiverModuleTxFrameUncorrectedErrorsGroup1,
        xklTransceiverModuleTxBitsGroup2,
        xklTransceiverModuleTxCorrectedBitsGroup2,
        xklTransceiverModuleTxFramesGroup2,
        xklTransceiverModuleTxFrameUncorrectedErrorsGroup2,
        xklTransceiverModuleTxBitsGroup3,
        xklTransceiverModuleTxCorrectedBitsGroup3,
        xklTransceiverModuleTxFramesGroup3,
        xklTransceiverModuleTxFrameUncorrectedErrorsGroup3,
        xklTransceiverModuleESNR
    }
    STATUS      current
    DESCRIPTION
        "Transceiver Module status objects."
    ::= { xklProGroups 15 }

xklOTDRLatestMeasurementGroup OBJECT-GROUP
    OBJECTS {
        xklOTDRLatestMeasurementCount,
        xklOTDRLatestMeasurementOSCIndex,
        xklOTDRLatestMeasurementOSCDescr,
        xklOTDRLatestMeasurementResults,
        xklOTDRLatestMeasurementDateTime,
        xklOTDRLatestMeasurementOTDRGroupNumber,
        xklOTDRLatestMeasurementOTDRGroupName
    }
    STATUS      current
    DESCRIPTION
        "xkl OTDRLatest Measurement objects."
    ::= { xklProGroups 16 }

xklDUAGroupGroup OBJECT-GROUP
    OBJECTS {
        xklDUAGroupCount,
        xklDUAGroupNumber,
        xklDUAGroupName
    }
    STATUS      current
    DESCRIPTION
        "xkl DUA group objects."
    ::= { xklProGroups 17 }

xklLineProtectionGroup OBJECT-GROUP
    OBJECTS {
        xklLineProtectionCount,
        xklLineProtectionIndex,
        xklLineProtectionActiveLine,
        xklLineProtectionEnabled,
        xklLineProtectionPrimaryLine,
        xklLineProtectionMonitorDevice,
        xklLineProtectionAutoReversion
    }
   STATUS      current
   DESCRIPTION
       "The objects relating to Line Protection modules."
   ::= { xklProGroups 18 }

xklDatapathClientPortGroup OBJECT-GROUP
    OBJECTS {
        xklDatapathClientPortCount,
        xklDatapathClientPortIndex,
        xklDatapathClientPortDescription,
        xklDatapathClientPortRxFrameCount,
        xklDatapathClientPortRxDropCount,
        xklDatapathClientPortRxUtilization,
        xklDatapathClientPortTxFrameCount,
        xklDatapathClientPortTxDropCount,
        xklDatapathClientPortTxUtilization
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Client Datapaths."
    ::= { xklProGroups 19 }

xklDatapathWavePortGroup OBJECT-GROUP
    OBJECTS {
        xklDatapathWavePortCount,
        xklDatapathWavePortIndex,
        xklDatapathWavePortDescription,
        xklDatapathWavePortRxFrameCount,
        xklDatapathWavePortRxDropCount,
        xklDatapathWavePortRxUtilization,
        xklDatapathWavePortTxFrameCount,
        xklDatapathWavePortTxDropCount,
        xklDatapathWavePortTxUtilization
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Wave Datapaths."
    ::= { xklProGroups 20 }

xklWaveMediaSidePMGroup OBJECT-GROUP
    OBJECTS {
        xklWaveMediaSidePMCount,
        xklWaveMediaSidePMWavePort,
        xklWaveMediaSidePMWaveStatus,
        xklWaveMediaSidePMWaveDescr,
        xklWaveMediaSidePMRxOSNRCurrent,
        xklWaveMediaSidePMRxOSNRMin,
        xklWaveMediaSidePMRxOSNRMax,
        xklWaveMediaSidePMRxOSNRAvg,
        xklWaveMediaSidePMRxESNRCurrent,
        xklWaveMediaSidePMRxESNRMin,
        xklWaveMediaSidePMRxESNRMax,
        xklWaveMediaSidePMRxESNRAvg,
        xklWaveMediaSidePMRxCDCurrent,
        xklWaveMediaSidePMRxCDMin,
        xklWaveMediaSidePMRxCDMax,
        xklWaveMediaSidePMRxCDAvg,
        xklWaveMediaSidePMRxDGDCurrent,
        xklWaveMediaSidePMRxDGDMin,
        xklWaveMediaSidePMRxDGDMax,
        xklWaveMediaSidePMRxDGDAvg,
        xklWaveMediaSidePMRxSOPMDCurrent,
        xklWaveMediaSidePMRxSOPMDMin,
        xklWaveMediaSidePMRxSOPMDMax,
        xklWaveMediaSidePMRxSOPMDAvg,
        xklWaveMediaSidePMRxPDLCurrent,
        xklWaveMediaSidePMRxPDLMin,
        xklWaveMediaSidePMRxPDLMax,
        xklWaveMediaSidePMRxPDLAvg,
        xklWaveMediaSidePMRxCFOCurrent,
        xklWaveMediaSidePMRxCFOMin,
        xklWaveMediaSidePMRxCFOMax,
        xklWaveMediaSidePMRxCFOAvg,
        xklWaveMediaSidePMRxSOPROCCurrent,
        xklWaveMediaSidePMRxSOPROCMin,
        xklWaveMediaSidePMRxSOPROCMax,
        xklWaveMediaSidePMRxSOPROCAvg,
        xklWaveMediaSidePMRxTotalPowerCurrent,
        xklWaveMediaSidePMRxTotalPowerMin,
        xklWaveMediaSidePMRxTotalPowerMax,
        xklWaveMediaSidePMRxTotalPowerAvg,
        xklWaveMediaSidePMRxSignalPowerCurrent,
        xklWaveMediaSidePMRxSignalPowerMin,
        xklWaveMediaSidePMRxSignalPowerMax,
        xklWaveMediaSidePMRxSignalPowerAvg,
        xklWaveMediaSidePMTxOutputPowerCurrent,
        xklWaveMediaSidePMTxOutputPowerMin,
        xklWaveMediaSidePMTxOutputPowerMax,
        xklWaveMediaSidePMTxOutputPowerAvg
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Wave media-side performance monitor counters."
    ::= { xklProGroups 21 }

xklClientMediaSidePMGroup OBJECT-GROUP
    OBJECTS {
        xklClientMediaSidePMCount,
        xklClientMediaSidePMClientPort,
        xklClientMediaSidePMClientStatus,
        xklClientMediaSidePMClientDescr,
        xklClientMediaSidePMRxOSNRCurrent,
        xklClientMediaSidePMRxOSNRMin,
        xklClientMediaSidePMRxOSNRMax,
        xklClientMediaSidePMRxOSNRAvg,
        xklClientMediaSidePMRxESNRCurrent,
        xklClientMediaSidePMRxESNRMin,
        xklClientMediaSidePMRxESNRMax,
        xklClientMediaSidePMRxESNRAvg,
        xklClientMediaSidePMRxCDCurrent,
        xklClientMediaSidePMRxCDMin,
        xklClientMediaSidePMRxCDMax,
        xklClientMediaSidePMRxCDAvg,
        xklClientMediaSidePMRxDGDCurrent,
        xklClientMediaSidePMRxDGDMin,
        xklClientMediaSidePMRxDGDMax,
        xklClientMediaSidePMRxDGDAvg,
        xklClientMediaSidePMRxSOPMDCurrent,
        xklClientMediaSidePMRxSOPMDMin,
        xklClientMediaSidePMRxSOPMDMax,
        xklClientMediaSidePMRxSOPMDAvg,
        xklClientMediaSidePMRxPDLCurrent,
        xklClientMediaSidePMRxPDLMin,
        xklClientMediaSidePMRxPDLMax,
        xklClientMediaSidePMRxPDLAvg,
        xklClientMediaSidePMRxCFOCurrent,
        xklClientMediaSidePMRxCFOMin,
        xklClientMediaSidePMRxCFOMax,
        xklClientMediaSidePMRxCFOAvg,
        xklClientMediaSidePMRxSOPROCCurrent,
        xklClientMediaSidePMRxSOPROCMin,
        xklClientMediaSidePMRxSOPROCMax,
        xklClientMediaSidePMRxSOPROCAvg,
        xklClientMediaSidePMRxTotalPowerCurrent,
        xklClientMediaSidePMRxTotalPowerMin,
        xklClientMediaSidePMRxTotalPowerMax,
        xklClientMediaSidePMRxTotalPowerAvg,
        xklClientMediaSidePMRxSignalPowerCurrent,
        xklClientMediaSidePMRxSignalPowerMin,
        xklClientMediaSidePMRxSignalPowerMax,
        xklClientMediaSidePMRxSignalPowerAvg,
        xklClientMediaSidePMTxOutputPowerCurrent,
        xklClientMediaSidePMTxOutputPowerMin,
        xklClientMediaSidePMTxOutputPowerMax,
        xklClientMediaSidePMTxOutputPowerAvg
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Client media-side performance monitor counters."
    ::= { xklProGroups 22 }

xklWaveHostSideRxBERGroup OBJECT-GROUP
    OBJECTS {
        xklWaveHostSideRxBERCount,
        xklWaveHostSideRxBERWavePort,
        xklWaveHostSideRxBERLaneId,
        xklWaveHostSideRxBERWaveStatus,
        xklWaveHostSideRxBERWaveDescr,
        xklWaveHostSideRxBERPreFECCurrentMantissa,
        xklWaveHostSideRxBERPreFECCurrentExponent,
        xklWaveHostSideRxBERPreFECMinMantissa,
        xklWaveHostSideRxBERPreFECMinExponent,
        xklWaveHostSideRxBERPreFECMaxMantissa,
        xklWaveHostSideRxBERPreFECMaxExponent,
        xklWaveHostSideRxBERPreFECAvgMantissa,
        xklWaveHostSideRxBERPreFECAvgExponent,
        xklWaveHostSideRxBERErrFramesCurrentMantissa,
        xklWaveHostSideRxBERErrFramesCurrentExponent,
        xklWaveHostSideRxBERErrFramesMinMantissa,
        xklWaveHostSideRxBERErrFramesMinExponent,
        xklWaveHostSideRxBERErrFramesMaxMantissa,
        xklWaveHostSideRxBERErrFramesMaxExponent,
        xklWaveHostSideRxBERErrFramesAvgMantissa,
        xklWaveHostSideRxBERErrFramesAvgExponent
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Wave host-side Rx BER stats."
    ::= { xklProGroups 23 }

xklClientHostSideRxBERGroup OBJECT-GROUP
    OBJECTS {
        xklClientHostSideRxBERCount,
        xklClientHostSideRxBERClientPort,
        xklClientHostSideRxBERLaneId,
        xklClientHostSideRxBERClientStatus,
        xklClientHostSideRxBERClientDescr,
        xklClientHostSideRxBERPreFECCurrentMantissa,
        xklClientHostSideRxBERPreFECCurrentExponent,
        xklClientHostSideRxBERPreFECMinMantissa,
        xklClientHostSideRxBERPreFECMinExponent,
        xklClientHostSideRxBERPreFECMaxMantissa,
        xklClientHostSideRxBERPreFECMaxExponent,
        xklClientHostSideRxBERPreFECAvgMantissa,
        xklClientHostSideRxBERPreFECAvgExponent,
        xklClientHostSideRxBERErrFramesCurrentMantissa,
        xklClientHostSideRxBERErrFramesCurrentExponent,
        xklClientHostSideRxBERErrFramesMinMantissa,
        xklClientHostSideRxBERErrFramesMinExponent,
        xklClientHostSideRxBERErrFramesMaxMantissa,
        xklClientHostSideRxBERErrFramesMaxExponent,
        xklClientHostSideRxBERErrFramesAvgMantissa,
        xklClientHostSideRxBERErrFramesAvgExponent
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Client host-side Rx BER stats."
    ::= { xklProGroups 24 }

xklWaveHostSideTxBERGroup OBJECT-GROUP
    OBJECTS {
        xklWaveHostSideTxBERCount,
        xklWaveHostSideTxBERWavePort,
        xklWaveHostSideTxBERGroupId,
        xklWaveHostSideTxBERLaneId,
        xklWaveHostSideTxBERWaveStatus,
        xklWaveHostSideTxBERWaveDescr,
        xklWaveHostSideTxBERPreFECCurrentMantissa,
        xklWaveHostSideTxBERPreFECCurrentExponent,
        xklWaveHostSideTxBERPreFECMinMantissa,
        xklWaveHostSideTxBERPreFECMinExponent,
        xklWaveHostSideTxBERPreFECMaxMantissa,
        xklWaveHostSideTxBERPreFECMaxExponent,
        xklWaveHostSideTxBERPreFECAvgMantissa,
        xklWaveHostSideTxBERPreFECAvgExponent,
        xklWaveHostSideTxBERErrFramesCurrentMantissa,
        xklWaveHostSideTxBERErrFramesCurrentExponent,
        xklWaveHostSideTxBERErrFramesMinMantissa,
        xklWaveHostSideTxBERErrFramesMinExponent,
        xklWaveHostSideTxBERErrFramesMaxMantissa,
        xklWaveHostSideTxBERErrFramesMaxExponent,
        xklWaveHostSideTxBERErrFramesAvgMantissa,
        xklWaveHostSideTxBERErrFramesAvgExponent
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Wave host-side Tx BER stats."
    ::= { xklProGroups 25 }

xklClientHostSideTxBERGroup OBJECT-GROUP
    OBJECTS {
        xklClientHostSideTxBERCount,
        xklClientHostSideTxBERClientPort,
        xklClientHostSideTxBERGroupId,
        xklClientHostSideTxBERLaneId,
        xklClientHostSideTxBERClientStatus,
        xklClientHostSideTxBERClientDescr,
        xklClientHostSideTxBERPreFECCurrentMantissa,
        xklClientHostSideTxBERPreFECCurrentExponent,
        xklClientHostSideTxBERPreFECMinMantissa,
        xklClientHostSideTxBERPreFECMinExponent,
        xklClientHostSideTxBERPreFECMaxMantissa,
        xklClientHostSideTxBERPreFECMaxExponent,
        xklClientHostSideTxBERPreFECAvgMantissa,
        xklClientHostSideTxBERPreFECAvgExponent,
        xklClientHostSideTxBERErrFramesCurrentMantissa,
        xklClientHostSideTxBERErrFramesCurrentExponent,
        xklClientHostSideTxBERErrFramesMinMantissa,
        xklClientHostSideTxBERErrFramesMinExponent,
        xklClientHostSideTxBERErrFramesMaxMantissa,
        xklClientHostSideTxBERErrFramesMaxExponent,
        xklClientHostSideTxBERErrFramesAvgMantissa,
        xklClientHostSideTxBERErrFramesAvgExponent
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Client host-side Tx BER stats."
    ::= { xklProGroups 26 }

xklWaveHostSideRxPMGroup OBJECT-GROUP
    OBJECTS {
        xklWaveHostSideRxPMCount,
        xklWaveHostSideRxPMWavePort,
        xklWaveHostSideRxPMWaveStatus,
        xklWaveHostSideRxPMWaveDescr,
        xklWaveHostSideRxPMRxBits,
        xklWaveHostSideRxPMRxCorrectedBits,
        xklWaveHostSideRxPMRxFrames,
        xklWaveHostSideRxPMRxFrameUncorrectedErrors
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Wave host-side Rx PM counters."
    ::= { xklProGroups 27 }

xklClientHostSideRxPMGroup OBJECT-GROUP
    OBJECTS {
        xklClientHostSideRxPMCount,
        xklClientHostSideRxPMClientPort,
        xklClientHostSideRxPMClientStatus,
        xklClientHostSideRxPMClientDescr,
        xklClientHostSideRxPMRxBits,
        xklClientHostSideRxPMRxCorrectedBits,
        xklClientHostSideRxPMRxFrames,
        xklClientHostSideRxPMRxFrameUncorrectedErrors
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Client host-side Rx PM counters."
    ::= { xklProGroups 28 }

xklWaveHostSideTxPMGroup OBJECT-GROUP
    OBJECTS {
        xklWaveHostSideTxPMCount,
        xklWaveHostSideTxPMWavePort,
        xklWaveHostSideTxPMWaveStatus,
        xklWaveHostSideTxPMGroupId,
        xklWaveHostSideTxPMWaveDescr,
        xklWaveHostSideTxPMTxBits,
        xklWaveHostSideTxPMTxCorrectedBits,
        xklWaveHostSideTxPMTxFrames,
        xklWaveHostSideTxPMTxFrameUncorrectedErrors
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Wave host-side Tx PM counters."
    ::= { xklProGroups 29 }

xklClientHostSideTxPMGroup OBJECT-GROUP
    OBJECTS {
        xklClientHostSideTxPMCount,
        xklClientHostSideTxPMClientPort,
        xklClientHostSideTxPMGroupId,
        xklClientHostSideTxPMClientStatus,
        xklClientHostSideTxPMClientDescr,
        xklClientHostSideTxPMTxBits,
        xklClientHostSideTxPMTxCorrectedBits,
        xklClientHostSideTxPMTxFrames,
        xklClientHostSideTxPMTxFrameUncorrectedErrors
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Client host-side Tx PM counters."
    ::= { xklProGroups 30 }

xklWaveHostSideRxPMSubIntGroup OBJECT-GROUP
    OBJECTS {
        xklWaveHostSideRxPMSubIntCount,
        xklWaveHostSideRxPMSubIntWavePort,
        xklWaveHostSideRxPMSubIntWaveStatus,
        xklWaveHostSideRxPMSubIntWaveDescr,
        xklWaveHostSideRxPMSubIntRxBitsAvg,
        xklWaveHostSideRxPMSubIntRxCorrectedBitMin,
        xklWaveHostSideRxPMSubIntRxCorrectedBitMax,
        xklWaveHostSideRxPMSubIntRxFramesAvg,
        xklWaveHostSideRxPMSubIntRxFrameUncorrectedMin,
        xklWaveHostSideRxPMSubIntRxFrameUncorrectedMax
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Wave host-side Rx PM sub-interval counters."
    ::= { xklProGroups 31 }

xklClientHostSideRxPMSubIntGroup OBJECT-GROUP
    OBJECTS {
        xklClientHostSideRxPMSubIntCount,
        xklClientHostSideRxPMSubIntClientPort,
        xklClientHostSideRxPMSubIntClientStatus,
        xklClientHostSideRxPMSubIntClientDescr,
        xklClientHostSideRxPMSubIntRxBitsAvg,
        xklClientHostSideRxPMSubIntRxCorrectedBitMin,
        xklClientHostSideRxPMSubIntRxCorrectedBitMax,
        xklClientHostSideRxPMSubIntRxFramesAvg,
        xklClientHostSideRxPMSubIntRxFrameUncorrectedMin,
        xklClientHostSideRxPMSubIntRxFrameUncorrectedMax
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Client host-side Rx PM sub-interval counters."
    ::= { xklProGroups 32 }

xklWaveHostSideTxPMSubIntGroup OBJECT-GROUP
    OBJECTS {
        xklWaveHostSideTxPMSubIntCount,
        xklWaveHostSideTxPMSubIntWavePort,
        xklWaveHostSideTxPMSubIntGroupId,
        xklWaveHostSideTxPMSubIntWaveStatus,
        xklWaveHostSideTxPMSubIntWaveDescr,
        xklWaveHostSideTxPMSubIntTxBitsAvg,
        xklWaveHostSideTxPMSubIntTxCorrectedBitMin,
        xklWaveHostSideTxPMSubIntTxCorrectedBitMax,
        xklWaveHostSideTxPMSubIntTxFramesAvg,
        xklWaveHostSideTxPMSubIntTxFrameUncorrectedMin,
        xklWaveHostSideTxPMSubIntTxFrameUncorrectedMax
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Wave host-side Tx PM sub-interval counters."
    ::= { xklProGroups 33 }

xklClientHostSideTxPMSubIntGroup OBJECT-GROUP
    OBJECTS {
        xklClientHostSideTxPMSubIntCount,
        xklClientHostSideTxPMSubIntClientPort,
        xklClientHostSideTxPMSubIntGroupId,
        xklClientHostSideTxPMSubIntClientStatus,
        xklClientHostSideTxPMSubIntClientDescr,
        xklClientHostSideTxPMSubIntTxBitsAvg,
        xklClientHostSideTxPMSubIntTxCorrectedBitMin,
        xklClientHostSideTxPMSubIntTxCorrectedBitMax,
        xklClientHostSideTxPMSubIntTxFramesAvg,
        xklClientHostSideTxPMSubIntTxFrameUncorrectedMin,
        xklClientHostSideTxPMSubIntTxFrameUncorrectedMax
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Client host-side Tx PM sub-interval counters."
    ::= { xklProGroups 34 }

xklWaveHostSideRxPMEthGroup OBJECT-GROUP
    OBJECTS {
        xklWaveHostSideRxPMEthCount,
        xklWaveHostSideRxPMEthWavePort,
        xklWaveHostSideRxPMEthGroupId,
        xklWaveHostSideRxPMEthLaneId,
        xklWaveHostSideRxPMEthWaveStatus,
        xklWaveHostSideRxPMEthWaveDescr,
        xklWaveHostSideRxPMEthRxUtil,
        xklWaveHostSideRxPMEthRxFrames,
        xklWaveHostSideRxPMEthRxBytes,
        xklWaveHostSideRxPMEthRxMulticastFrames,
        xklWaveHostSideRxPMEthRxBroadcastFrames,
        xklWaveHostSideRxPMEthRx64ByteFrames,
        xklWaveHostSideRxPMEthRx65To127ByteFrames,
        xklWaveHostSideRxPMEthRx128To255ByteFrames,
        xklWaveHostSideRxPMEthRx256To511ByteFrames,
        xklWaveHostSideRxPMEthRx512To1023ByteFrames,
        xklWaveHostSideRxPMEthRx1024To1518ByteFrames,
        xklWaveHostSideRxPMEthRx1519ToJumboByteFrames,
        xklWaveHostSideRxPMEthRxGeJumboByteFrames,
        xklWaveHostSideRxPMEthRxBadFrames,
        xklWaveHostSideRxPMEthRxBadBytes,
        xklWaveHostSideRxPMEthRxBadMulticastFrames,
        xklWaveHostSideRxPMEthRxBadBroadcastFrames,
        xklWaveHostSideRxPMEthRxBadCRCFrames,
        xklWaveHostSideRxPMEthRxBadLt64ByteFrames,
        xklWaveHostSideRxPMEthRxBad64ByteFrames,
        xklWaveHostSideRxPMEthRxBad65To127ByteFrames,
        xklWaveHostSideRxPMEthRxBad128To255ByteFrames,
        xklWaveHostSideRxPMEthRxBad256To511ByteFrames,
        xklWaveHostSideRxPMEthRxBad512To1023ByteFrames,
        xklWaveHostSideRxPMEthRxBad1024To1518ByteFrames,
        xklWaveHostSideRxPMEthRxBad1519ToJumboByteFrames,
        xklWaveHostSideRxPMEthRxBadGeJumboByteFrames
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Wave host-side Rx PM ethernet counters."
    ::= { xklProGroups 35 }

xklClientHostSideRxPMEthGroup OBJECT-GROUP
    OBJECTS {
        xklClientHostSideRxPMEthCount,
        xklClientHostSideRxPMEthClientPort,
        xklClientHostSideRxPMEthGroupId,
        xklClientHostSideRxPMEthLaneId,
        xklClientHostSideRxPMEthClientStatus,
        xklClientHostSideRxPMEthClientDescr,
        xklClientHostSideRxPMEthRxUtil,
        xklClientHostSideRxPMEthRxFrames,
        xklClientHostSideRxPMEthRxBytes,
        xklClientHostSideRxPMEthRxMulticastFrames,
        xklClientHostSideRxPMEthRxBroadcastFrames,
        xklClientHostSideRxPMEthRx64ByteFrames,
        xklClientHostSideRxPMEthRx65To127ByteFrames,
        xklClientHostSideRxPMEthRx128To255ByteFrames,
        xklClientHostSideRxPMEthRx256To511ByteFrames,
        xklClientHostSideRxPMEthRx512To1023ByteFrames,
        xklClientHostSideRxPMEthRx1024To1518ByteFrames,
        xklClientHostSideRxPMEthRx1519ToJumboByteFrames,
        xklClientHostSideRxPMEthRxGeJumboByteFrames,
        xklClientHostSideRxPMEthRxBadFrames,
        xklClientHostSideRxPMEthRxBadBytes,
        xklClientHostSideRxPMEthRxBadMulticastFrames,
        xklClientHostSideRxPMEthRxBadBroadcastFrames,
        xklClientHostSideRxPMEthRxBadCRCFrames,
        xklClientHostSideRxPMEthRxBadLt64ByteFrames,
        xklClientHostSideRxPMEthRxBad64ByteFrames,
        xklClientHostSideRxPMEthRxBad65To127ByteFrames,
        xklClientHostSideRxPMEthRxBad128To255ByteFrames,
        xklClientHostSideRxPMEthRxBad256To511ByteFrames,
        xklClientHostSideRxPMEthRxBad512To1023ByteFrames,
        xklClientHostSideRxPMEthRxBad1024To1518ByteFrames,
        xklClientHostSideRxPMEthRxBad1519ToJumboByteFrames,
        xklClientHostSideRxPMEthRxBadGeJumboByteFrames
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Client host-side Rx PM ethernet counters."
    ::= { xklProGroups 36 }

xklWaveHostSideTxPMEthGroup OBJECT-GROUP
    OBJECTS {
        xklWaveHostSideTxPMEthCount,
        xklWaveHostSideTxPMEthWavePort,
        xklWaveHostSideTxPMEthGroupId,
        xklWaveHostSideTxPMEthLaneId,
        xklWaveHostSideTxPMEthWaveStatus,
        xklWaveHostSideTxPMEthWaveDescr,
        xklWaveHostSideTxPMEthTxUtil,
        xklWaveHostSideTxPMEthTxFrames,
        xklWaveHostSideTxPMEthTxBytes,
        xklWaveHostSideTxPMEthTxMulticastFrames,
        xklWaveHostSideTxPMEthTxBroadcastFrames,
        xklWaveHostSideTxPMEthTx64ByteFrames,
        xklWaveHostSideTxPMEthTx65To127ByteFrames,
        xklWaveHostSideTxPMEthTx128To255ByteFrames,
        xklWaveHostSideTxPMEthTx256To511ByteFrames,
        xklWaveHostSideTxPMEthTx512To1023ByteFrames,
        xklWaveHostSideTxPMEthTx1024To1518ByteFrames,
        xklWaveHostSideTxPMEthTx1519ToJumboByteFrames,
        xklWaveHostSideTxPMEthTxGeJumboByteFrames,
        xklWaveHostSideTxPMEthTxBadFrames,
        xklWaveHostSideTxPMEthTxBadBytes,
        xklWaveHostSideTxPMEthTxBadMulticastFrames,
        xklWaveHostSideTxPMEthTxBadBroadcastFrames,
        xklWaveHostSideTxPMEthTxBadCRCFrames,
        xklWaveHostSideTxPMEthTxBadLt64ByteFrames,
        xklWaveHostSideTxPMEthTxBad64ByteFrames,
        xklWaveHostSideTxPMEthTxBad65To127ByteFrames,
        xklWaveHostSideTxPMEthTxBad128To255ByteFrames,
        xklWaveHostSideTxPMEthTxBad256To511ByteFrames,
        xklWaveHostSideTxPMEthTxBad512To1023ByteFrames,
        xklWaveHostSideTxPMEthTxBad1024To1518ByteFrames,
        xklWaveHostSideTxPMEthTxBad1519ToJumboByteFrames,
        xklWaveHostSideTxPMEthTxBadGeJumboByteFrames
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Wave host-side Tx PM ethernet counters."
    ::= { xklProGroups 37 }

xklClientHostSideTxPMEthGroup OBJECT-GROUP
    OBJECTS {
        xklClientHostSideTxPMEthCount,
        xklClientHostSideTxPMEthClientPort,
        xklClientHostSideTxPMEthGroupId,
        xklClientHostSideTxPMEthLaneId,
        xklClientHostSideTxPMEthClientStatus,
        xklClientHostSideTxPMEthClientDescr,
        xklClientHostSideTxPMEthTxUtil,
        xklClientHostSideTxPMEthTxFrames,
        xklClientHostSideTxPMEthTxBytes,
        xklClientHostSideTxPMEthTxMulticastFrames,
        xklClientHostSideTxPMEthTxBroadcastFrames,
        xklClientHostSideTxPMEthTx64ByteFrames,
        xklClientHostSideTxPMEthTx65To127ByteFrames,
        xklClientHostSideTxPMEthTx128To255ByteFrames,
        xklClientHostSideTxPMEthTx256To511ByteFrames,
        xklClientHostSideTxPMEthTx512To1023ByteFrames,
        xklClientHostSideTxPMEthTx1024To1518ByteFrames,
        xklClientHostSideTxPMEthTx1519ToJumboByteFrames,
        xklClientHostSideTxPMEthTxGeJumboByteFrames,
        xklClientHostSideTxPMEthTxBadFrames,
        xklClientHostSideTxPMEthTxBadBytes,
        xklClientHostSideTxPMEthTxBadMulticastFrames,
        xklClientHostSideTxPMEthTxBadBroadcastFrames,
        xklClientHostSideTxPMEthTxBadCRCFrames,
        xklClientHostSideTxPMEthTxBadLt64ByteFrames,
        xklClientHostSideTxPMEthTxBad64ByteFrames,
        xklClientHostSideTxPMEthTxBad65To127ByteFrames,
        xklClientHostSideTxPMEthTxBad128To255ByteFrames,
        xklClientHostSideTxPMEthTxBad256To511ByteFrames,
        xklClientHostSideTxPMEthTxBad512To1023ByteFrames,
        xklClientHostSideTxPMEthTxBad1024To1518ByteFrames,
        xklClientHostSideTxPMEthTxBad1519ToJumboByteFrames,
        xklClientHostSideTxPMEthTxBadGeJumboByteFrames
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to Client host-side Tx PM ethernet counters."
    ::= { xklProGroups 38 }

xklWSSBandGroup OBJECT-GROUP
    OBJECTS {
        xklWSSBandCount,
        xklWSSBandCenterFreq,
        xklWSSBandBandwidth,
        xklWSSBandAttenuation,
        xklWSSBandRxPwr,
        xklWSSBandPort,
        xklWSSBandPortName
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to WSS Bands."
    ::= {xklProGroups 39 }

xklWaveMediaSideTxModGroup OBJECT-GROUP
    OBJECTS {
        xklWaveMediaSideTxModCount,
        xklWaveMediaSideTxModWavePort,
        xklWaveMediaSideTxModWaveStatus,
        xklWaveMediaSideTxModWaveDescr,
        xklWaveMediaSideTxModBiasXI,
        xklWaveMediaSideTxModBiasXQ,
        xklWaveMediaSideTxModBiasYI,
        xklWaveMediaSideTxModBiasYQ,
        xklWaveMediaSideTxModBiasXPhase,
        xklWaveMediaSideTxModBiasYPhase
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to wave media-side 
         Tx modulator performance counters."
    ::= {xklProGroups 40 }

xklClientMediaSideTxModGroup OBJECT-GROUP
    OBJECTS {
        xklClientMediaSideTxModCount,
        xklClientMediaSideTxModClientPort,
        xklClientMediaSideTxModClientStatus,
        xklClientMediaSideTxModClientDescr,
        xklClientMediaSideTxModBiasXI,
        xklClientMediaSideTxModBiasXQ,
        xklClientMediaSideTxModBiasYI,
        xklClientMediaSideTxModBiasYQ,
        xklClientMediaSideTxModBiasXPhase,
        xklClientMediaSideTxModBiasYPhase
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to client media-side 
         Tx modulator performance counters."
    ::= {xklProGroups 41 }

xklWSSHardwareGroup OBJECT-GROUP
    OBJECTS {
        xklWSSHardwareCount,
        xklWSSHardwareManufacturer,
        xklWSSHardwareManufactureDate,
        xklWSSHardwarePartNumber,
        xklWSSHardwareSerialNumber
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to WSS hardware."
    ::= {xklProGroups 42 }

xklOCMHardwareGroup OBJECT-GROUP
    OBJECTS {
        xklOCMHardwareCount,
        xklOCMHardwareManufacturer,
        xklOCMHardwareManufactureDate,
        xklOCMHardwarePartNumber,
        xklOCMHardwareSerialNumber
    }
    STATUS      current
    DESCRIPTION
        "The objects relating to OCM hardware."
    ::= {xklProGroups 43 }


xkl10g      OBJECT IDENTIFIER ::= { xklProducts 2 }
xklhybrid   OBJECT IDENTIFIER ::= { xklProducts 3 }
xkl3g       OBJECT IDENTIFIER ::= { xklProducts 4 }
xkldba      OBJECT IDENTIFIER ::= { xklProducts 5 }
xkldra      OBJECT IDENTIFIER ::= { xklProducts 6 }
xkldsm      OBJECT IDENTIFIER ::= { xklProducts 7 }
xkl10r      OBJECT IDENTIFIER ::= { xklProducts 8 }
dqm10-12    OBJECT IDENTIFIER ::= { xklProducts 9 }
dqm10-24    OBJECT IDENTIFIER ::= { xklProducts 10 }
dqm10-36    OBJECT IDENTIFIER ::= { xklProducts 11 }
dqt10-12    OBJECT IDENTIFIER ::= { xklProducts 12 }
dqt10-24    OBJECT IDENTIFIER ::= { xklProducts 13 }
dqt10-36    OBJECT IDENTIFIER ::= { xklProducts 14 }
dqm10       OBJECT IDENTIFIER ::= { xklProducts 15 }
dqt10       OBJECT IDENTIFIER ::= { xklProducts 16 }
dqm100      OBJECT IDENTIFIER ::= { xklProducts 17 }
dqt100      OBJECT IDENTIFIER ::= { xklProducts 18 }
dmda        OBJECT IDENTIFIER ::= { xklProducts 19 }
dla         OBJECT IDENTIFIER ::= { xklProducts 20 }
dqt400-4    OBJECT IDENTIFIER ::= { xklProducts 21 }
dqt400-12   OBJECT IDENTIFIER ::= { xklProducts 22 }
dqm400-4    OBJECT IDENTIFIER ::= { xklProducts 23 }
dqm400-12   OBJECT IDENTIFIER ::= { xklProducts 24 }
dua         OBJECT IDENTIFIER ::= { xklProducts 25 }
dat100-8    OBJECT IDENTIFIER ::= { xklProducts 26 }
dfr         OBJECT IDENTIFIER ::= { xklProducts 27 }
dfs         OBJECT IDENTIFIER ::= { xklProducts 28 }


END
